Class BeCPGQueryBuilder
- All Implemented Interfaces:
org.springframework.beans.factory.InitializingBean
BeCPGQueryBuilder class.
- Version:
- $Id: $Id
- Author:
- matthieu
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Set<org.alfresco.service.namespace.QName> private static final StringConstantCANNED_QUERY_FILEFOLDER_LIST="fileFolderGetChildrenCannedQueryFactory"private org.alfresco.util.registry.NamedObjectRegistry<org.alfresco.query.CannedQueryFactory<org.alfresco.service.cmr.repository.NodeRef>> private static final StringConstantDEFAULT_FIELD_NAME="keywords"private static final StringConstantENABLE_INDEX_TYPES_KEY="beCPG.solr.enableIndexForTypes"private EntityDictionaryServiceprivate final Set<org.alfresco.service.namespace.QName> private final Set<org.alfresco.service.namespace.QName> private Stringprivate final Set<org.alfresco.service.cmr.repository.NodeRef> private Stringprivate static BeCPGQueryBuilderConstantINSTANCEprivate booleanprivate booleanprivate Localeprivate static final org.apache.commons.logging.LogConstantloggerprivate Integerprivate Stringprivate org.alfresco.service.namespace.NamespaceServiceprivate org.alfresco.service.cmr.repository.NodeServiceprivate final Set<org.alfresco.service.cmr.repository.NodeRef> private final Set<org.alfresco.service.namespace.QName> private final Set<org.alfresco.service.namespace.QName> private final Set<org.alfresco.service.namespace.QName> private org.alfresco.service.cmr.search.SearchParameters.Operatorprivate Integerprivate org.alfresco.service.cmr.repository.NodeRefprivate final Set<org.alfresco.service.cmr.repository.NodeRef> private Stringprivate org.alfresco.service.cmr.search.QueryConsistencyprivate org.alfresco.repo.model.Repositoryprivate org.alfresco.service.cmr.search.SearchServiceprivate Stringprivate org.alfresco.service.cmr.repository.StoreRefprivate Stringprivate SystemConfigurationServiceprivate org.alfresco.repo.tenant.TenantServiceprivate org.alfresco.service.namespace.QNameprivate final Set<org.alfresco.service.namespace.QName> private Set<org.alfresco.service.namespace.QName> Fields inherited from class fr.becpg.repo.search.impl.AbstractBeCPGQueryBuilder
language -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddSort.addSort(org.alfresco.service.namespace.QName propToSort, boolean sortOrder) addSort.voidandBetween(org.alfresco.service.namespace.QName propQName, String start, String end) andBetween.andBetweenOrNull(org.alfresco.service.namespace.QName propQName, String start, String end) andBetweenOrNull.andFTSQuery(String ftsQuery) andFTSQuery.andID(org.alfresco.service.cmr.repository.NodeRef nodeRef) andID.andIDs.andNotID(org.alfresco.service.cmr.repository.NodeRef nodeRef) andNotID.andNotIDs.andOperator.andPropEquals(org.alfresco.service.namespace.QName propQName, String value) andPropEquals.andPropQuery(org.alfresco.service.namespace.QName propQName, String propQuery) andPropQuery.private org.alfresco.query.PagingResults<org.alfresco.service.cmr.repository.NodeRef> asPagingResults(List<org.alfresco.service.cmr.repository.NodeRef> nodes, boolean hasMore, org.alfresco.util.Pair<Integer, Integer> total) asPagingResults.private StringbuildCmisQuery.private StringbuildQuery.bulkFetchEnabled(boolean isBulkFetchEnabled) bulkFetchEnabled.org.alfresco.query.PagingResults<org.alfresco.service.cmr.repository.NodeRef> childFileFolders(org.alfresco.query.PagingRequest pageRequest) childFileFolders.clearFTSQuery.clone()cmisLanguage.count()count.static BeCPGQueryBuildercreateQuery.private StringdefaultSearchTemplate.excludeArchivedEntities.excludeAspect(org.alfresco.service.namespace.QName aspect) excludeAspect.excludeDefaults.excludePath(String excludePath) excludePath.excludeProp(org.alfresco.service.namespace.QName propName, String query) excludeProp.excludeSearch.excludeSystems.excludeType(org.alfresco.service.namespace.QName type) excludeType.excludeVersions.org.alfresco.service.namespace.QNameextractSortQname(String sortProp) extractSortQname.ftsLanguage.private StringgetCmisPrefix(org.alfresco.service.namespace.QName tmpQName) getCmisPrefix.private org.alfresco.query.PagingResults<org.alfresco.service.cmr.repository.NodeRef> getPagingResults(org.alfresco.query.PagingRequest pagingRequest, org.alfresco.query.CannedQueryResults<org.alfresco.service.cmr.repository.NodeRef> results) getPagingResults.static Set<org.alfresco.service.namespace.QName> getTypesExcludedFromIndex.inBoostedType(org.alfresco.service.namespace.QName typeQname, Integer boostFactor) inBoostedType.includeAspect(org.alfresco.service.namespace.QName aspect) includeAspect.private BooleanincludeReportInSearch.inDB()inDB.inDBIfPossible.inParent(org.alfresco.service.cmr.repository.NodeRef parentNodeRef) inParent.inPath.inSearchTemplate(String searchTemplate) inSearchTemplate.inSite.inStore(org.alfresco.service.cmr.repository.StoreRef store) inStore.inSubPath.private org.alfresco.query.PagingResults<org.alfresco.service.cmr.repository.NodeRef> internalList(org.alfresco.service.cmr.repository.NodeRef rootNodeRef, Set<org.alfresco.service.namespace.QName> searchTypeQNames, Set<org.alfresco.service.namespace.QName> ignoreAspectQNames, List<org.alfresco.util.Pair<org.alfresco.service.namespace.QName, Boolean>> sortProps, org.alfresco.query.PagingRequest pagingRequest) internalList.inType(org.alfresco.service.namespace.QName typeQname) inType.private booleanisCmis()isCmis.static booleanisExcludedFromIndex(org.alfresco.service.namespace.QName type) isExcludedFromIndex.booleanisInit()isInit.isNotNull(org.alfresco.service.namespace.QName propQName) isNotNull.isNull(org.alfresco.service.namespace.QName propQName) isNull.isNullOrUnset(org.alfresco.service.namespace.QName propQName) isNullOrUnset.private booleanisPropQueryNotNull(String value) isPropQueryNotNull.private booleanisPropQueryNull(String value) isPropQueryNull.List<org.alfresco.service.cmr.repository.NodeRef> list()list.locale.maxResults(int maxResults) maxResults.members.ofExactType(org.alfresco.service.namespace.QName typeQname) ofExactType.ofType(org.alfresco.service.namespace.QName typeQname) ofType.orBetween.page(int page) skipCount.page(org.alfresco.query.PagingRequest pagingRequest) page.org.alfresco.query.PagingResults<org.alfresco.service.cmr.repository.NodeRef> pagingResults.parent(org.alfresco.service.cmr.repository.NodeRef parentNodeRef) parent.private StringsanitizeProperty(String prop) sanitizeProperty.private org.alfresco.query.PagingResults<org.alfresco.service.cmr.repository.NodeRef> search.org.alfresco.service.cmr.repository.NodeRefselectNodeByPath(String xPath) selectNodeByPath.org.alfresco.service.cmr.repository.NodeRefselectNodeByPath(org.alfresco.service.cmr.repository.NodeRef parentNodeRef, String xPath) selectNodeByPath.List<org.alfresco.service.cmr.repository.NodeRef> selectNodesByPath(org.alfresco.service.cmr.repository.NodeRef parentNodeRef, String xPath) selectNodesByPath.voidsetTypesToExcludeFromIndex(Set<org.alfresco.service.namespace.QName> typesToExcludeFromIndex) Setter for the fieldtypesToExcludeFromIndex.org.alfresco.service.cmr.repository.NodeRefsingleValue.toString()withAspect(org.alfresco.service.namespace.QName aspect) withAspect.Methods inherited from class fr.becpg.repo.search.impl.AbstractBeCPGQueryBuilder
boost, encodePath, endGroup, equalsQuery, escapeQName, getCond, getCondAspect, getCondContainsValue, getCondEqualID, getCondEqualValue, getCondExactPath, getCondExactType, getCondIsNullOrIsUnsetValue, getCondIsNullValue, getCondMembers, getCondParent, getCondPath, getCondSite, getCondSubPath, getCondType, getGroup, getMandatoryOrGroup, getSort, getSort, getSortProp, mandatory, optional, or, prohibided, startGroup
-
Field Details
-
logger
private static final org.apache.commons.logging.Log loggerConstantlogger -
DEFAULT_FIELD_NAME
ConstantDEFAULT_FIELD_NAME="keywords"- See Also:
-
CANNED_QUERY_FILEFOLDER_LIST
ConstantCANNED_QUERY_FILEFOLDER_LIST="fileFolderGetChildrenCannedQueryFactory"- See Also:
-
ENABLE_INDEX_TYPES_KEY
ConstantENABLE_INDEX_TYPES_KEY="beCPG.solr.enableIndexForTypes"- See Also:
-
INSTANCE
ConstantINSTANCE -
searchService
@Autowired @Qualifier("SearchService") private org.alfresco.service.cmr.search.SearchService searchService -
namespaceService
@Autowired private org.alfresco.service.namespace.NamespaceService namespaceService -
cannedQueryRegistry
@Autowired @Qualifier("fileFolderCannedQueryRegistry") private org.alfresco.util.registry.NamedObjectRegistry<org.alfresco.query.CannedQueryFactory<org.alfresco.service.cmr.repository.NodeRef>> cannedQueryRegistry -
entityDictionaryService
-
tenantService
@Autowired private org.alfresco.repo.tenant.TenantService tenantService -
systemConfigurationService
-
nodeService
@Autowired private org.alfresco.service.cmr.repository.NodeService nodeService -
repository
@Autowired private org.alfresco.repo.model.Repository repository -
maxResults
-
page
-
parentNodeRef
private org.alfresco.service.cmr.repository.NodeRef parentNodeRef -
parentNodeRefs
-
type
private org.alfresco.service.namespace.QName type -
types
-
boostedTypes
-
typesToExcludeFromIndex
-
aspects
-
subPath
-
path
-
inSite
-
excludePath
-
membersPath
-
ids
-
notIds
-
notNullProps
-
nullProps
-
nullOrUnsetProps
-
propQueriesMap
-
propBetweenQueriesMap
-
propOrBetweenQueriesMap
-
propBetweenOrNullQueriesMap
-
propQueriesEqualMap
-
ftsQueries
-
excludedAspects
-
excludedTypes
-
excludedPropQueriesMap
-
queryConsistancy
private org.alfresco.service.cmr.search.QueryConsistency queryConsistancy -
isExactType
private boolean isExactType -
searchTemplate
-
operator
private org.alfresco.service.cmr.search.SearchParameters.Operator operator -
locale
-
store
private org.alfresco.service.cmr.repository.StoreRef store -
isBulkFetchEnabled
private boolean isBulkFetchEnabled -
sortProps
-
-
Constructor Details
-
BeCPGQueryBuilder
private BeCPGQueryBuilder()Constructor for BeCPGQueryBuilder.
-
-
Method Details
-
includeReportInSearch
includeReportInSearch.
- Returns:
- a
Booleanobject
-
defaultSearchTemplate
defaultSearchTemplate.
- Returns:
- a
Stringobject
-
afterPropertiesSet
- Specified by:
afterPropertiesSetin interfaceorg.springframework.beans.factory.InitializingBean- Throws:
Exception
-
isInit
public boolean isInit()isInit.
- Returns:
- a boolean.
-
setTypesToExcludeFromIndex
public void setTypesToExcludeFromIndex(Set<org.alfresco.service.namespace.QName> typesToExcludeFromIndex) Setter for the field
typesToExcludeFromIndex.- Parameters:
typesToExcludeFromIndex- aSetobject
-
getTypesExcludedFromIndex
getTypesExcludedFromIndex.
- Returns:
- a
Setobject
-
isExcludedFromIndex
public static boolean isExcludedFromIndex(org.alfresco.service.namespace.QName type) isExcludedFromIndex.
- Parameters:
type- aQNameobject- Returns:
- a boolean
-
createQuery
createQuery.
- Returns:
- a
BeCPGQueryBuilderobject.
-
inStore
inStore.
- Parameters:
store- aStoreRefobject- Returns:
- a
BeCPGQueryBuilderobject
-
ofType
ofType.
- Parameters:
typeQname- aQNameobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
ofExactType
ofExactType.
- Parameters:
typeQname- aQNameobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
bulkFetchEnabled
bulkFetchEnabled.
- Parameters:
isBulkFetchEnabled- a boolean- Returns:
- a
BeCPGQueryBuilderobject
-
inType
inType.
- Parameters:
typeQname- aQNameobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
inBoostedType
public BeCPGQueryBuilder inBoostedType(org.alfresco.service.namespace.QName typeQname, Integer boostFactor) inBoostedType.
- Parameters:
typeQname- aQNameobject.boostFactor- aIntegerobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
withAspect
withAspect.
- Parameters:
aspect- aQNameobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
includeAspect
includeAspect.
- Parameters:
aspect- aQNameobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
inParent
inParent.
- Parameters:
parentNodeRef- aNodeRefobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
maxResults
maxResults.
- Parameters:
maxResults- a int.- Returns:
- a
BeCPGQueryBuilderobject.
-
page
skipCount.
- Parameters:
page- a int- Returns:
- a
BeCPGQueryBuilderobject.
-
page
page.
- Parameters:
pagingRequest- aPagingRequestobject- Returns:
- a
BeCPGQueryBuilderobject
-
andOperator
andOperator.
- Returns:
- a
BeCPGQueryBuilderobject.
-
locale
locale.
- Parameters:
locale- aLocaleobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
parent
parent.
- Parameters:
parentNodeRef- aNodeRefobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
members
members.
- Parameters:
path- aStringobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
inPath
inPath.
- Parameters:
path- aStringobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
inSubPath
inSubPath.
- Parameters:
subPath- aStringobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
excludePath
excludePath.
- Parameters:
excludePath- aStringobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
inDB
inDB.
- Returns:
- a
BeCPGQueryBuilderobject.
-
inDBIfPossible
inDBIfPossible.
- Returns:
- a
BeCPGQueryBuilderobject.
-
cmisLanguage
cmisLanguage.
- Returns:
- a
BeCPGQueryBuilderobject.
-
inSite
inSite.
- Parameters:
siteId- aStringobject.containerId- aStringobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
andID
andID.
- Parameters:
nodeRef- aNodeRefobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
andIDs
andIDs.
- Parameters:
nodeRefs- aSetobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
andNotID
andNotID.
- Parameters:
nodeRef- aNodeRefobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
andNotIDs
andNotIDs.
- Parameters:
nodeRefs- aSetobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
addSort
addSort.
- Parameters:
sortMap- aMapobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
addSort
public BeCPGQueryBuilder addSort(org.alfresco.service.namespace.QName propToSort, boolean sortOrder) addSort.
- Parameters:
propToSort- aQNameobject.sortOrder- a boolean.- Returns:
- a
BeCPGQueryBuilderobject.
-
isNotNull
isNotNull.
- Parameters:
propQName- aQNameobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
isNull
isNull.
- Parameters:
propQName- aQNameobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
isNullOrUnset
isNullOrUnset.
- Parameters:
propQName- aQNameobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
andFTSQuery
andFTSQuery.
- Parameters:
ftsQuery- aStringobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
clearFTSQuery
clearFTSQuery.
- Returns:
- a
BeCPGQueryBuilderobject.
-
andPropEquals
public BeCPGQueryBuilder andPropEquals(org.alfresco.service.namespace.QName propQName, String value) andPropEquals.
- Parameters:
propQName- aQNameobject.value- aStringobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
andPropQuery
public BeCPGQueryBuilder andPropQuery(org.alfresco.service.namespace.QName propQName, String propQuery) andPropQuery.
- Parameters:
propQName- aQNameobject.propQuery- aStringobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
isPropQueryNull
isPropQueryNull.
- Parameters:
value- aStringobject- Returns:
- a boolean
-
isPropQueryNotNull
isPropQueryNotNull.
- Parameters:
value- aStringobject- Returns:
- a boolean
-
andBetween
public BeCPGQueryBuilder andBetween(org.alfresco.service.namespace.QName propQName, String start, String end) andBetween.
- Parameters:
propQName- aQNameobject.start- aStringobject.end- aStringobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
orBetween
public BeCPGQueryBuilder orBetween(org.alfresco.service.namespace.QName propQName, String start, String end) orBetween.
- Parameters:
propQName- aQNameobjectstart- aStringobjectend- aStringobject- Returns:
- a
BeCPGQueryBuilderobject
-
andBetweenOrNull
public BeCPGQueryBuilder andBetweenOrNull(org.alfresco.service.namespace.QName propQName, String start, String end) andBetweenOrNull.
- Parameters:
propQName- aQNameobject.start- aStringobject.end- aStringobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
excludeProp
excludeProp.
- Parameters:
propName- aQNameobject.query- aStringobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
excludeType
excludeType.
- Parameters:
type- aQNameobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
excludeAspect
excludeAspect.
- Parameters:
aspect- aQNameobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
excludeVersions
excludeVersions.
- Returns:
- a
BeCPGQueryBuilderobject.
-
excludeDefaults
excludeDefaults.
- Returns:
- a
BeCPGQueryBuilderobject.
-
excludeSystems
excludeSystems.
- Returns:
- a
BeCPGQueryBuilderobject.
-
excludeSearch
excludeSearch.
- Returns:
- a
BeCPGQueryBuilderobject.
-
excludeArchivedEntities
excludeArchivedEntities.
- Returns:
- a
BeCPGQueryBuilderobject
-
selectNodeByPath
selectNodeByPath.
- Parameters:
xPath- aStringobject- Returns:
- a
NodeRefobject
-
selectNodeByPath
public org.alfresco.service.cmr.repository.NodeRef selectNodeByPath(org.alfresco.service.cmr.repository.NodeRef parentNodeRef, String xPath) selectNodeByPath.
- Parameters:
parentNodeRef- aNodeRefobject.xPath- aStringobject.- Returns:
- a
NodeRefobject.
-
selectNodesByPath
public List<org.alfresco.service.cmr.repository.NodeRef> selectNodesByPath(org.alfresco.service.cmr.repository.NodeRef parentNodeRef, String xPath) selectNodesByPath.
-
list
list.
- Returns:
- a
Listobject.
-
pagingResults
public org.alfresco.query.PagingResults<org.alfresco.service.cmr.repository.NodeRef> pagingResults()pagingResults.
- Returns:
- a
PagingResultsobject
-
singleValue
public org.alfresco.service.cmr.repository.NodeRef singleValue()singleValue.
- Returns:
- a
NodeRefobject.
-
buildQuery
buildQuery.
- Returns:
- a
Stringobject
-
buildCmisQuery
buildCmisQuery.
- Returns:
- a
Stringobject
-
sanitizeProperty
sanitizeProperty.
-
getCmisPrefix
getCmisPrefix.
- Parameters:
tmpQName- aQNameobject- Returns:
- a
Stringobject
-
isCmis
private boolean isCmis()isCmis.
- Returns:
- a boolean
-
inSearchTemplate
inSearchTemplate.
- Parameters:
searchTemplate- aStringobject.- Returns:
- a
BeCPGQueryBuilderobject.
-
ftsLanguage
ftsLanguage.
- Returns:
- a
BeCPGQueryBuilderobject.
-
search
private org.alfresco.query.PagingResults<org.alfresco.service.cmr.repository.NodeRef> search(String runnedQuery, Map<String, Boolean> sort, int page, int maxResults) search.
-
asPagingResults
private org.alfresco.query.PagingResults<org.alfresco.service.cmr.repository.NodeRef> asPagingResults(List<org.alfresco.service.cmr.repository.NodeRef> nodes, boolean hasMore, org.alfresco.util.Pair<Integer, Integer> total) asPagingResults.
- Parameters:
nodes- aListobjecthasMore- a booleantotal- aPairobject- Returns:
- a
PagingResultsobject
-
count
count.
This method can be very slow for high result counts and saturate nodeDao cache- Returns:
- a
Longobject.
-
extractSortQname
extractSortQname.
- Parameters:
sortProp- aStringobject.- Returns:
- a
QNameobject.
-
childFileFolders
public org.alfresco.query.PagingResults<org.alfresco.service.cmr.repository.NodeRef> childFileFolders(org.alfresco.query.PagingRequest pageRequest) childFileFolders.
- Parameters:
pageRequest- aPagingRequestobject.- Returns:
- a
PagingResultsobject.
-
internalList
private org.alfresco.query.PagingResults<org.alfresco.service.cmr.repository.NodeRef> internalList(org.alfresco.service.cmr.repository.NodeRef rootNodeRef, Set<org.alfresco.service.namespace.QName> searchTypeQNames, Set<org.alfresco.service.namespace.QName> ignoreAspectQNames, List<org.alfresco.util.Pair<org.alfresco.service.namespace.QName, Boolean>> sortProps, org.alfresco.query.PagingRequest pagingRequest) internalList.
-
getPagingResults
private org.alfresco.query.PagingResults<org.alfresco.service.cmr.repository.NodeRef> getPagingResults(org.alfresco.query.PagingRequest pagingRequest, org.alfresco.query.CannedQueryResults<org.alfresco.service.cmr.repository.NodeRef> results) getPagingResults.
- Parameters:
pagingRequest- aPagingRequestobjectresults- aCannedQueryResultsobject- Returns:
- a
PagingResultsobject
-
toString
-
clone
-