public class DBSQueryOptimizer extends QueryOptimizer
Knows how reference prefixes are computed, especially for the ACL case which has a storage structure different than what the NXQL syntax suggests.
QueryOptimizer.PrefixInfo, QueryOptimizer.ProjectionReferenceRenamer, QueryOptimizer.ProjectionWildcardsFinder, QueryOptimizer.ReferencePrefixAnalyzer
Modifier and Type | Field and Description |
---|---|
protected static Pattern |
CORRELATED_ECM_TAG |
protected static String |
CORRELATED_ECM_TAG_IMPLICIT |
protected static Pattern |
CORRELATED_WILDCARD_SPLIT |
CORR_BASE, correlationCounter, facetFilter, GROUPING_BY_EXPR_PREFIX, neverPerInstanceMixins, onlyRelations, schemaManager, TYPE_DOCUMENT, TYPE_RELATION, TYPE_ROOT
Constructor and Description |
---|
DBSQueryOptimizer() |
Modifier and Type | Method and Description |
---|---|
String |
getCorrelatedWildcardPrefix(String name)
Gets the prefix to use for this reference name (NXQL) if it contains a correlated wildcard.
|
addFacetFilters, addIsNotNullClauses, addTypes, addWhere, addWhere, addWildcardNotNullClauses, findPrefix, getDocumentTypeNamesExtending, getDocumentTypeNamesForFacet, getExpressionCount, getExpressionPrefix, getStringLiterals, isTypeRelation, makeSingleAndExpression, optimize, reorganizeGroupedExpressions, simplifyTypes, withFacetFilter
protected static final Pattern CORRELATED_WILDCARD_SPLIT
protected static final Pattern CORRELATED_ECM_TAG
protected static final String CORRELATED_ECM_TAG_IMPLICIT
public DBSQueryOptimizer()
public String getCorrelatedWildcardPrefix(String name)
QueryOptimizer
The prefix is used to group together sets of expression that all use references with the same prefix.
getCorrelatedWildcardPrefix
in class QueryOptimizer
name
- the reference name (NXQL)Copyright © 2018 Nuxeo. All rights reserved.