Interface DBQueryBuilderComponent
-
- All Known Implementing Classes:
AspectSupport,DBChild,DBConjunction,DBDescendant,DBDisjunction,DBEquals,DBExists,DBFTSFuzzyTerm,DBFTSPhrase,DBFTSPrefixTerm,DBFTSProximity,DBFTSRange,DBFTSTerm,DBFTSWildTerm,DBFunctionalConstraint,DBGreaterThan,DBGreaterThanOrEquals,DBIn,DBLessThan,DBLessThanOrEquals,DBLike,DBLower,DBNotEquals,DBOrdering,DBPropertyAccessor,DBQuery,DBScore,DBSelector,DBUpper,ParentSupport,PropertySupport,TypeSupport,UUIDSupport
public interface DBQueryBuilderComponentBuild the commands required to generate the dynamic SQL This is independent of the data base schema.- Author:
- Andy
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidbuildJoins(java.util.Map<org.alfresco.service.namespace.QName,DBQueryBuilderJoinCommand> singleJoins, java.util.List<DBQueryBuilderJoinCommand> multiJoins)Build the Set of required joins Assign join aliases and link them up to each component where requiredvoidbuildPredicateCommands(java.util.List<DBQueryBuilderPredicatePartCommand> predicatePartCommands)Add to the list of commands used to build the SQL predicatebooleanisSupported()Is this component supported in a DB query?voidprepare(org.alfresco.service.namespace.NamespaceService namespaceService, org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService, QNameDAO qnameDAO, NodeDAO nodeDAO, org.alfresco.repo.tenant.TenantService tenantService, java.util.Set<java.lang.String> selectors, java.util.Map<java.lang.String,org.alfresco.repo.search.impl.querymodel.Argument> functionArgs, org.alfresco.repo.search.impl.querymodel.FunctionEvaluationContext functionContext, boolean supportBooleanFloatAndDouble)Use the dictionary to expand any terms, deal with multi-valued properties, etc Use the QNameDAO to look up any ids
-
-
-
Method Detail
-
isSupported
boolean isSupported()
Is this component supported in a DB query?- Returns:
- boolean
-
prepare
void prepare(org.alfresco.service.namespace.NamespaceService namespaceService, org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService, QNameDAO qnameDAO, NodeDAO nodeDAO, org.alfresco.repo.tenant.TenantService tenantService, java.util.Set<java.lang.String> selectors, java.util.Map<java.lang.String,org.alfresco.repo.search.impl.querymodel.Argument> functionArgs, org.alfresco.repo.search.impl.querymodel.FunctionEvaluationContext functionContext, boolean supportBooleanFloatAndDouble)Use the dictionary to expand any terms, deal with multi-valued properties, etc Use the QNameDAO to look up any ids- Parameters:
namespaceService- NamespaceServicedictionaryService- DictionaryServiceqnameDAO- QNameDAOnodeDAO- NodeDAOtenantService- TenantServicefunctionContext- FunctionEvaluationContext
-
buildJoins
void buildJoins(java.util.Map<org.alfresco.service.namespace.QName,DBQueryBuilderJoinCommand> singleJoins, java.util.List<DBQueryBuilderJoinCommand> multiJoins)
Build the Set of required joins Assign join aliases and link them up to each component where required
-
buildPredicateCommands
void buildPredicateCommands(java.util.List<DBQueryBuilderPredicatePartCommand> predicatePartCommands)
Add to the list of commands used to build the SQL predicate
-
-