public class DBQuery extends org.alfresco.repo.search.impl.querymodel.impl.BaseQuery implements DBQueryBuilderComponent
Constructor and 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) |
Modifier and Type | Method and Description |
---|---|
void |
buildJoins(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 required
|
void |
buildPredicateCommands(List<DBQueryBuilderPredicatePartCommand> predicatePartCommands)
Add to the list of commands used to build the SQL predicate
|
static String |
expandQName(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.DataTypeDefinition |
getDataTypeDefinition(org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService,
org.alfresco.service.namespace.QName propertyQname) |
static Long |
getDbid(String source,
NodeDAO nodeDAO,
org.alfresco.repo.tenant.TenantService tenantService) |
static Long[] |
getDbids(String[] stringValues,
NodeDAO nodeDAO,
org.alfresco.repo.tenant.TenantService tenantService) |
static String |
getFieldName(org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService,
org.alfresco.service.namespace.QName propertyQName,
boolean supportBooleanFloatAndDouble) |
boolean |
getHasOrderBy() |
boolean |
getHasPredicate() |
boolean |
getHasPredicatePartsOrder() |
static DBQueryBuilderJoinCommandType |
getJoinCommandType(org.alfresco.service.namespace.QName propertyQName) |
List<DBQueryBuilderJoinCommand> |
getJoins() |
List<DBQueryBuilderPredicatePartCommand> |
getPredicateParts() |
Long |
getSinceTxId() |
Long |
getStoreId() |
Long |
getSysDeletedType() |
static String |
getUUID(String source) |
static String[] |
getUUIDs(String[] source) |
boolean |
isSupported()
Is this component supported in a DB query?
|
static org.alfresco.service.cmr.dictionary.AspectDefinition |
matchAspectDefinition(String string,
org.alfresco.service.namespace.NamespacePrefixResolver namespacePrefixResolver,
org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService) |
static org.alfresco.service.cmr.dictionary.TypeDefinition |
matchTypeDefinition(String string,
org.alfresco.service.namespace.NamespacePrefixResolver namespacePrefixResolver,
org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService) |
static String |
matchURI(String prefix,
org.alfresco.service.namespace.NamespacePrefixResolver namespacePrefixResolver) |
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)
Use the dictionary to expand any terms, deal with multi-valued properties, etc
Use the QNameDAO to look up any ids
|
void |
setSinceTxId(Long sinceTxId) |
void |
setStoreId(Long storeId) |
void |
setSysDeletedType(Long sysDeletedType) |
static String[] |
toStringValues(Collection<?> objects) |
static String[] |
toStringValues(Object[] objects) |
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)
source
- Sourceconstraint
- Constraintpublic Long getStoreId()
public void setStoreId(Long storeId)
storeId
- the storeId to setpublic Long getSysDeletedType()
public void setSysDeletedType(Long sysDeletedType)
sysDeletedType
- the sysDeletedType to setpublic Long getSinceTxId()
public void setSinceTxId(Long sinceTxId)
sinceTxId
- the sinceTxId to setpublic List<DBQueryBuilderJoinCommand> getJoins()
public boolean getHasPredicate()
public boolean getHasOrderBy()
public List<DBQueryBuilderPredicatePartCommand> getPredicateParts()
public boolean getHasPredicatePartsOrder()
public boolean isSupported()
DBQueryBuilderComponent
isSupported
in interface DBQueryBuilderComponent
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)
DBQueryBuilderComponent
prepare
in interface DBQueryBuilderComponent
namespaceService
- NamespaceServicedictionaryService
- DictionaryServiceqnameDAO
- QNameDAOnodeDAO
- NodeDAOtenantService
- TenantServicefunctionContext
- FunctionEvaluationContextpublic void buildJoins(Map<org.alfresco.service.namespace.QName,DBQueryBuilderJoinCommand> singleJoins, List<DBQueryBuilderJoinCommand> multiJoins)
DBQueryBuilderComponent
buildJoins
in interface DBQueryBuilderComponent
public void buildPredicateCommands(List<DBQueryBuilderPredicatePartCommand> predicatePartCommands)
DBQueryBuilderComponent
buildPredicateCommands
in interface DBQueryBuilderComponent
public static Long getDbid(String source, NodeDAO nodeDAO, org.alfresco.repo.tenant.TenantService tenantService)
public static List<Long> findTypeIds(String type, org.alfresco.service.namespace.NamespaceService namespaceService, org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService, QNameDAO qnameDAO, boolean exact)
public static List<Long> findAspectIds(String aspect, org.alfresco.service.namespace.NamespaceService namespaceService, org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService, QNameDAO qnameDAO, boolean exact)
public static String[] toStringValues(Collection<?> objects)
public static String expandQName(String toStrip, org.alfresco.service.namespace.NamespacePrefixResolver namespacePrefixResolver)
public static String matchURI(String prefix, org.alfresco.service.namespace.NamespacePrefixResolver namespacePrefixResolver)
public static org.alfresco.service.cmr.dictionary.TypeDefinition matchTypeDefinition(String string, org.alfresco.service.namespace.NamespacePrefixResolver namespacePrefixResolver, org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService)
public static org.alfresco.service.cmr.dictionary.AspectDefinition matchAspectDefinition(String string, org.alfresco.service.namespace.NamespacePrefixResolver namespacePrefixResolver, org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService)
public static DBQueryBuilderJoinCommandType getJoinCommandType(org.alfresco.service.namespace.QName propertyQName)
propertyQName
- QNamepublic static String getFieldName(org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService, org.alfresco.service.namespace.QName propertyQName, boolean supportBooleanFloatAndDouble)
dictionaryService
- DictionaryServicepropertyQName
- QNamepublic static org.alfresco.service.cmr.dictionary.DataTypeDefinition getDataTypeDefinition(org.alfresco.service.cmr.dictionary.DictionaryService dictionaryService, org.alfresco.service.namespace.QName propertyQname)
Copyright © 2005–2017 Alfresco Software. All rights reserved.