Package io.datarouter.storage.sql
Class Sql<C,P,Q extends Sql<C,P,Q>>
java.lang.Object
io.datarouter.storage.sql.Sql<C,P,Q>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final Qprotected final ArrayList<BiConsumer<P,Integer>> protected final StringBuilder -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddDeleteFromClause(String tableName) addForceIndexClause(String indexName) abstract QaddLimitOffsetClause(Config config) addOrderByClause(List<io.datarouter.model.field.Field<?>> orderByFields) addSelectFromClause(String tableName, List<io.datarouter.model.field.Field<?>> selectFields) abstract <T,F extends io.datarouter.model.field.Field<T>>
QaddSqlNameValueWithOperator(F field, String operator, boolean rejectNulls) addUpdateClause(String tableName) abstract <T,F extends io.datarouter.model.field.Field<T>>
QappendColumnEqualsValueParameter(F field) appendParameter(String value, BiConsumer<P, Integer> parameterSetter) appendSqlNameValue(io.datarouter.model.field.Field<?> field, boolean rejectNulls) appendWhereClauseDisjunction(Collection<? extends io.datarouter.model.field.FieldSet<?>> fieldSets) appendWhereClauseDisjunctionClosed(Collection<? extends io.datarouter.model.field.FieldSet<?>> fieldSets) deleteMulti(String tableName, Config config, Collection<? extends io.datarouter.model.field.FieldSet<?>> keys) <T extends io.datarouter.model.field.FieldSet<T>>
QgetInRanges(String tableName, Config config, List<io.datarouter.model.field.Field<?>> selectFields, Iterable<io.datarouter.util.tuple.Range<T>> ranges, List<io.datarouter.model.field.Field<?>> orderByFields, String indexName) getMulti(String tableName, Config config, List<io.datarouter.model.field.Field<?>> selectFields, Collection<? extends io.datarouter.model.field.FieldSet<?>> keys, String indexName) getWithPrefixes(String tableName, Config config, String indexName, List<io.datarouter.model.field.Field<?>> selectFields, Collection<? extends io.datarouter.model.field.FieldSet<?>> keys, List<io.datarouter.model.field.Field<?>> orderByFields) incrementTally(String tableName, String id, Long delta, Long expirationMs) static booleanneedsRangeWhereClause(io.datarouter.model.field.FieldSet<?> start, io.datarouter.model.field.FieldSet<?> end) abstract PtoString()update(String tableName, List<io.datarouter.model.field.Field<?>> fieldsToUpdate, List<? extends io.datarouter.model.field.FieldSet<?>> keys)
-
Field Details
-
implementation
-
sqlBuilder
-
parameterSetters
-
-
Constructor Details
-
Sql
-
-
Method Details
-
addLimitOffsetClause
-
addSqlNameValueWithOperator
-
appendColumnEqualsValueParameter
public abstract <T,F extends io.datarouter.model.field.Field<T>> Q appendColumnEqualsValueParameter(F field) -
prepare
-
appendSqlNameValue
-
append
-
appendParameter
-
incrementTally
-
insert
-
update
-
deleteMulti
public Q deleteMulti(String tableName, Config config, Collection<? extends io.datarouter.model.field.FieldSet<?>> keys) -
getMulti
-
getWithPrefixes
-
getInRanges
-
appendWhereClauseDisjunctionClosed
public Q appendWhereClauseDisjunctionClosed(Collection<? extends io.datarouter.model.field.FieldSet<?>> fieldSets) -
appendWhereClauseDisjunction
public Q appendWhereClauseDisjunction(Collection<? extends io.datarouter.model.field.FieldSet<?>> fieldSets) -
deleteAll
-
addForceIndexClause
-
addSelectFromClause
-
addDeleteFromClause
-
addUpdateClause
-
needsRangeWhereClause
public static boolean needsRangeWhereClause(io.datarouter.model.field.FieldSet<?> start, io.datarouter.model.field.FieldSet<?> end) -
addOrderByClause
-
toString
-