protected void addFilterValues(PreparedStatement ps, int startIdx) { for (int i = 0; i < staticFilters.length; i++) { SQLStaticFilter filter = staticFilters[i]; setFieldValue(ps, startIdx + i, filter.getDirectoryColumn(table, getDirectory().useNativeCase()), filter.getValue()); } }
@Override public SQLSession getSession() { SQLSession session = new SQLSession(this, getDescriptor()); addSession(session); return session; }
@Override public void removeLinksForTarget(String targetId) { try (SQLSession session = getSQLSession()) { removeLinksForTarget(targetId, session); } }
/** * @since 9.2 */ public TableReference(TableReferenceDescriptor descriptor) { this(descriptor.getFieldName(), descriptor.getTargetDirectoryName(), descriptor.getTableName(), descriptor.getSourceColumn(), descriptor.getTargetColumn(), descriptor.getDataFileName()); }
public SQLSession(SQLDirectory directory, SQLDirectoryDescriptor config) { super(directory, TableReference.class); table = directory.getTable(); dialect = directory.getDialect(); sid = String.valueOf(SIDGenerator.next()); staticFilters = config.getStaticFilters(); acquireConnection(); }
@Override public void initializeReferences() { try (Connection connection = getConnection()) { for (Reference reference : getReferences()) { if (reference instanceof TableReference) { ((TableReference) reference).initialize(connection); } } } catch (SQLException e) { throw new DirectoryException(e); } }
@Override public void addLinks(String sourceId, List<String> targetIds) { if (targetIds == null) { return; } try (SQLSession session = getSQLSession()) { addLinks(sourceId, targetIds, session); } }
@Override public void removeLinksForSource(String sourceId) { try (SQLSession session = getSQLSession()) { removeLinksForSource(sourceId, session); } }
@Override public void setSourceIdsForTarget(String targetId, List<String> sourceIds) { try (SQLSession session = getSQLSession()) { setSourceIdsForTarget(targetId, sourceIds, session); } }
@Override public void setTargetIdsForSource(String sourceId, List<String> targetIds) { try (SQLSession session = getSQLSession()) { setTargetIdsForSource(sourceId, targetIds, session); } }
@Override public void addLinks(String sourceId, List<String> targetIds, Session session) { if (targetIds == null) { return; } SQLSession sqlSession = (SQLSession) session; for (String targetId : targetIds) { addLink(sourceId, targetId, sqlSession, true); } }
@Override public void removeLinksForSource(String sourceId, Session session) { SQLSession sqlSession = (SQLSession) session; removeLinksFor(sourceColumn, sourceId, sqlSession); }
@Override public void setTargetIdsForSource(String sourceId, List<String> targetIds, Session session) { SQLSession sqlSession = (SQLSession) session; setTargetIdsForSource(sourceId, targetIds, sqlSession); }
@Override public void setSourceIdsForTarget(String targetId, List<String> sourceIds, Session session) { SQLSession sqlSession = (SQLSession) session; setSourceIdsForTarget(targetId, sourceIds, sqlSession); }
@Override public SQLStaticFilter clone() { SQLStaticFilter clone = new SQLStaticFilter(); clone.column = column; clone.operator = operator; clone.value = value; clone.type = type; return clone; }
public void setSourceIdsForTarget(String targetId, List<String> sourceIds, SQLSession session) { setIdsFor(sourceColumn, sourceIds, targetColumn, targetId, session); }
@Override public SQLDirectory newDirectory() { return new SQLDirectory(this); }
@Override public void addLinks(List<String> sourceIds, String targetId) { if (sourceIds == null) { return; } try (SQLSession session = getSQLSession()) { addLinks(sourceIds, targetId, session); } }
@Override public void addLinks(List<String> sourceIds, String targetId, Session session) { if (sourceIds == null) { return; } SQLSession sqlSession = (SQLSession) session; for (String sourceId : sourceIds) { addLink(sourceId, targetId, sqlSession, true); } }
@Override public void removeLinksForTarget(String targetId, Session session) { SQLSession sqlSession = (SQLSession) session; removeLinksFor(targetColumn, targetId, sqlSession); }