protected void fillPreparedStatementFields(Map<String, Object> filterMap, List<Column> orderedColumns, PreparedStatement ps) { int index = 1; for (Column column : orderedColumns) { Object value = filterMap.get(column.getKey()); if (value instanceof SQLComplexFilter) { index = ((SQLComplexFilter) value).setFieldValue(ps, index, column); } else { setFieldValue(ps, index, column, value); index++; } } addFilterValues(ps, index); }
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()); } }
for (int i = 0; i < values.size(); i++) { if (i == 0) { setFieldValue(ps, 1, table.getPrimaryColumn(), values.get(i)); } else { ps.setString(1 + i, (String) values.get(i));
@Override public void deleteEntryWithoutReferences(String id) { // second step: clean stored fields Delete delete = new Delete(table); String whereString = table.getPrimaryColumn().getQuotedName() + " = ?"; delete.setWhere(whereString); String sql = delete.getStatement(); if (logger.isLogEnabled()) { logger.logSQL(sql, Collections.singleton(id)); } try (PreparedStatement ps = sqlConnection.prepareStatement(sql)) { setFieldValue(ps, 1, table.getPrimaryColumn(), id); ps.execute(); } catch (SQLException e) { checkConcurrentUpdate(e); throw new DirectoryException("deleteEntry failed", e); } }
setFieldValue(ps, 1, table.getPrimaryColumn(), id); addFilterValues(ps, 2); try (ResultSet rs = ps.executeQuery()) {
setFieldValue(ps, index, column, value); index++; setFieldValue(ps, index, table.getPrimaryColumn(), docModel.getId()); ps.execute(); } catch (SQLException e) {
int i = 1; for (ColumnAndValue columnAndValue : builder.params) { setFieldValue(ps, i++, columnAndValue.column, columnAndValue.value);
setFieldValue(ps, 1, table.getPrimaryColumn(), id); addFilterValues(ps, 2);
@Override public boolean hasEntry(String id) { acquireConnection(); Select select = new Select(table); select.setFrom(table.getQuotedName()); select.setWhat("1"); select.setWhere(table.getPrimaryColumn().getQuotedName() + " = ?"); String sql = select.getStatement(); if (logger.isLogEnabled()) { logger.logSQL(sql, Collections.singleton(id)); } try (PreparedStatement ps = sqlConnection.prepareStatement(sql)) { setFieldValue(ps, 1, table.getPrimaryColumn(), id); try (ResultSet rs = ps.executeQuery()) { boolean has = rs.next(); if (logger.isLogEnabled()) { logger.logCount(has ? 1 : 0); } return has; } } catch (SQLException e) { throw new DirectoryException("hasEntry failed", e); } }
int i = 1; for (ColumnAndValue columnAndValue : builder.params) { setFieldValue(ps, i++, columnAndValue.column, columnAndValue.value); int i = 1; for (ColumnAndValue columnAndValue : builder.params) { setFieldValue(ps, i++, columnAndValue.column, columnAndValue.value);
String prefixField = schemaFieldMap.get(column.getKey()).getName().getPrefixedName(); Object value = fieldMap.get(prefixField); setFieldValue(ps, index, column, value); index++;