Class DBQuery
- java.lang.Object
-
- org.alfresco.repo.search.impl.querymodel.impl.BaseQuery
-
- org.alfresco.repo.search.impl.querymodel.impl.db.DBQuery
-
- All Implemented Interfaces:
DBQueryBuilderComponent,org.alfresco.repo.search.impl.querymodel.Query
public class DBQuery extends org.alfresco.repo.search.impl.querymodel.impl.BaseQuery implements DBQueryBuilderComponent
- Author:
- Andy
-
-
Constructor Summary
Constructors Constructor Description DBQuery(List<org.alfresco.repo.search.impl.querymodel.Column> columns, org.alfresco.repo.search.impl.querymodel.Source source, org.alfresco.repo.search.impl.querymodel.Constraint constraint, List<org.alfresco.repo.search.impl.querymodel.Ordering> orderings)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidbuildJoins(Map<org.alfresco.service.namespace.QName,DBQueryBuilderJoinCommand> singleJoins, List<DBQueryBuilderJoinCommand> multiJoins)Build the Set of required joins Assign join aliases and link them up to each component where requiredvoidbuildPredicateCommands(List<DBQueryBuilderPredicatePartCommand> predicatePartCommands)Add to the list of commands used to build the SQL predicatestatic StringexpandQName(String toStrip, org.alfresco.service.namespace.NamespacePrefixResolver namespacePrefixResolver)static List<Long>findAspectIds(String aspect, org.alfresco.service.namespace.NamespaceService namespaceService, org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService, QNameDAO qnameDAO, boolean exact)static List<Long>findTypeIds(String type, org.alfresco.service.namespace.NamespaceService namespaceService, org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService, QNameDAO qnameDAO, boolean exact)static org.alfresco.service.cmr.dictionary.DataTypeDefinitiongetDataTypeDefinition(org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService, org.alfresco.service.namespace.QName propertyQname)static LonggetDbid(String source, NodeDAO nodeDAO, org.alfresco.repo.tenant.TenantService tenantService)static Long[]getDbids(String[] stringValues, NodeDAO nodeDAO, org.alfresco.repo.tenant.TenantService tenantService)static StringgetFieldName(org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService, org.alfresco.service.namespace.QName propertyQName, boolean supportBooleanFloatAndDouble)booleangetHasOrderBy()booleangetHasPredicate()booleangetHasPredicatePartsOrder()static DBQueryBuilderJoinCommandTypegetJoinCommandType(org.alfresco.service.namespace.QName propertyQName)List<DBQueryBuilderJoinCommand>getJoins()List<DBQueryBuilderPredicatePartCommand>getPredicateParts()LonggetSinceTxId()LonggetStoreId()LonggetSysDeletedType()static StringgetUUID(String source)static String[]getUUIDs(String[] source)booleanisSupported()Is this component supported in a DB query?static org.alfresco.service.cmr.dictionary.AspectDefinitionmatchAspectDefinition(String string, org.alfresco.service.namespace.NamespacePrefixResolver namespacePrefixResolver, org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService)static org.alfresco.service.cmr.dictionary.TypeDefinitionmatchTypeDefinition(String string, org.alfresco.service.namespace.NamespacePrefixResolver namespacePrefixResolver, org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService)static StringmatchURI(String prefix, org.alfresco.service.namespace.NamespacePrefixResolver namespacePrefixResolver)voidprepare(org.alfresco.service.namespace.NamespaceService namespaceService, org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService, QNameDAO qnameDAO, NodeDAO nodeDAO, org.alfresco.repo.tenant.TenantService tenantService, Set<String> selectors, Map<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 idsvoidsetSinceTxId(Long sinceTxId)voidsetStoreId(Long storeId)voidsetSysDeletedType(Long sysDeletedType)static String[]toStringValues(Object[] objects)static String[]toStringValues(Collection<?> objects)
-
-
-
Constructor Detail
-
DBQuery
public DBQuery(List<org.alfresco.repo.search.impl.querymodel.Column> columns, org.alfresco.repo.search.impl.querymodel.Source source, org.alfresco.repo.search.impl.querymodel.Constraint constraint, List<org.alfresco.repo.search.impl.querymodel.Ordering> orderings)
- Parameters:
source- Sourceconstraint- Constraint
-
-
Method Detail
-
getStoreId
public Long getStoreId()
- Returns:
- the storeId
-
setStoreId
public void setStoreId(Long storeId)
- Parameters:
storeId- the storeId to set
-
getSysDeletedType
public Long getSysDeletedType()
- Returns:
- the sysDeletedType
-
setSysDeletedType
public void setSysDeletedType(Long sysDeletedType)
- Parameters:
sysDeletedType- the sysDeletedType to set
-
getSinceTxId
public Long getSinceTxId()
- Returns:
- the sinceTxId
-
setSinceTxId
public void setSinceTxId(Long sinceTxId)
- Parameters:
sinceTxId- the sinceTxId to set
-
getJoins
public List<DBQueryBuilderJoinCommand> getJoins()
-
getHasPredicate
public boolean getHasPredicate()
-
getHasOrderBy
public boolean getHasOrderBy()
-
getPredicateParts
public List<DBQueryBuilderPredicatePartCommand> getPredicateParts()
-
getHasPredicatePartsOrder
public boolean getHasPredicatePartsOrder()
-
isSupported
public boolean isSupported()
Description copied from interface:DBQueryBuilderComponentIs this component supported in a DB query?- Specified by:
isSupportedin interfaceDBQueryBuilderComponent- Returns:
- boolean
-
prepare
public 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, Set<String> selectors, Map<String,org.alfresco.repo.search.impl.querymodel.Argument> functionArgs, org.alfresco.repo.search.impl.querymodel.FunctionEvaluationContext functionContext, boolean supportBooleanFloatAndDouble)Description copied from interface:DBQueryBuilderComponentUse the dictionary to expand any terms, deal with multi-valued properties, etc Use the QNameDAO to look up any ids- Specified by:
preparein interfaceDBQueryBuilderComponent- Parameters:
namespaceService- NamespaceServicedictionaryService- DictionaryServiceqnameDAO- QNameDAOnodeDAO- NodeDAOtenantService- TenantServicefunctionContext- FunctionEvaluationContext
-
buildJoins
public void buildJoins(Map<org.alfresco.service.namespace.QName,DBQueryBuilderJoinCommand> singleJoins, List<DBQueryBuilderJoinCommand> multiJoins)
Description copied from interface:DBQueryBuilderComponentBuild the Set of required joins Assign join aliases and link them up to each component where required- Specified by:
buildJoinsin interfaceDBQueryBuilderComponent
-
buildPredicateCommands
public void buildPredicateCommands(List<DBQueryBuilderPredicatePartCommand> predicatePartCommands)
Description copied from interface:DBQueryBuilderComponentAdd to the list of commands used to build the SQL predicate- Specified by:
buildPredicateCommandsin interfaceDBQueryBuilderComponent
-
getDbid
public static Long getDbid(String source, NodeDAO nodeDAO, org.alfresco.repo.tenant.TenantService tenantService)
-
findTypeIds
public static List<Long> findTypeIds(String type, org.alfresco.service.namespace.NamespaceService namespaceService, org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService, QNameDAO qnameDAO, boolean exact)
-
findAspectIds
public static List<Long> findAspectIds(String aspect, org.alfresco.service.namespace.NamespaceService namespaceService, org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService, QNameDAO qnameDAO, boolean exact)
-
toStringValues
public static String[] toStringValues(Collection<?> objects)
-
expandQName
public static String expandQName(String toStrip, org.alfresco.service.namespace.NamespacePrefixResolver namespacePrefixResolver)
-
matchURI
public static String matchURI(String prefix, org.alfresco.service.namespace.NamespacePrefixResolver namespacePrefixResolver)
-
matchTypeDefinition
public static org.alfresco.service.cmr.dictionary.TypeDefinition matchTypeDefinition(String string, org.alfresco.service.namespace.NamespacePrefixResolver namespacePrefixResolver, org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService)
-
matchAspectDefinition
public static org.alfresco.service.cmr.dictionary.AspectDefinition matchAspectDefinition(String string, org.alfresco.service.namespace.NamespacePrefixResolver namespacePrefixResolver, org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService)
-
getJoinCommandType
public static DBQueryBuilderJoinCommandType getJoinCommandType(org.alfresco.service.namespace.QName propertyQName)
- Parameters:
propertyQName- QName- Returns:
- DBQueryBuilderJoinCommandType
-
getFieldName
public static String getFieldName(org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService, org.alfresco.service.namespace.QName propertyQName, boolean supportBooleanFloatAndDouble)
- Parameters:
dictionaryService- DictionaryServicepropertyQName- QName- Returns:
- String
-
getDataTypeDefinition
public static org.alfresco.service.cmr.dictionary.DataTypeDefinition getDataTypeDefinition(org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService, org.alfresco.service.namespace.QName propertyQname)
-
-