Class BeCPGQueryBuilder

All Implemented Interfaces:
org.springframework.beans.factory.InitializingBean

@Service("beCPGQueryBuilder") public class BeCPGQueryBuilder extends AbstractBeCPGQueryBuilder implements org.springframework.beans.factory.InitializingBean

BeCPGQueryBuilder class.

Version:
$Id: $Id
Author:
matthieu
  • Field Details

    • logger

      private static final org.apache.commons.logging.Log logger
    • DEFAULT_FIELD_NAME

      private static final String DEFAULT_FIELD_NAME
      See Also:
    • CANNED_QUERY_FILEFOLDER_LIST

      private static final String CANNED_QUERY_FILEFOLDER_LIST
      See Also:
    • ENABLE_INDEX_TYPES_KEY

      private static final String ENABLE_INDEX_TYPES_KEY
      See Also:
    • INSTANCE

      private static BeCPGQueryBuilder INSTANCE
    • 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

      @Autowired private EntityDictionaryService entityDictionaryService
    • tenantService

      @Autowired private org.alfresco.repo.tenant.TenantService tenantService
    • systemConfigurationService

      @Autowired private SystemConfigurationService systemConfigurationService
    • nodeService

      @Autowired private org.alfresco.service.cmr.repository.NodeService nodeService
    • repository

      @Autowired private org.alfresco.repo.model.Repository repository
    • maxResults

      private Integer maxResults
    • page

      private Integer page
    • parentNodeRef

      private org.alfresco.service.cmr.repository.NodeRef parentNodeRef
    • parentNodeRefs

      private final Set<org.alfresco.service.cmr.repository.NodeRef> parentNodeRefs
    • type

      private org.alfresco.service.namespace.QName type
    • types

      private final Set<org.alfresco.service.namespace.QName> types
    • boostedTypes

      private final Set<org.alfresco.util.Pair<org.alfresco.service.namespace.QName,Integer>> boostedTypes
    • typesToExcludeFromIndex

      private Set<org.alfresco.service.namespace.QName> typesToExcludeFromIndex
    • aspects

      private final Set<org.alfresco.service.namespace.QName> aspects
    • subPath

      private String subPath
    • path

      private String path
    • inSite

      private String inSite
    • excludePath

      private String excludePath
    • membersPath

      private String membersPath
    • ids

      private final Set<org.alfresco.service.cmr.repository.NodeRef> ids
    • notIds

      private final Set<org.alfresco.service.cmr.repository.NodeRef> notIds
    • notNullProps

      private final Set<org.alfresco.service.namespace.QName> notNullProps
    • nullProps

      private final Set<org.alfresco.service.namespace.QName> nullProps
    • nullOrUnsetProps

      private final Set<org.alfresco.service.namespace.QName> nullOrUnsetProps
    • propQueriesMap

      private final Map<org.alfresco.service.namespace.QName,String> propQueriesMap
    • propBetweenQueriesMap

      private final Map<org.alfresco.service.namespace.QName,org.alfresco.util.Pair<String,String>> propBetweenQueriesMap
    • propOrBetweenQueriesMap

      private final Map<org.alfresco.service.namespace.QName,org.alfresco.util.Pair<String,String>> propOrBetweenQueriesMap
    • propBetweenOrNullQueriesMap

      private final Map<org.alfresco.service.namespace.QName,org.alfresco.util.Pair<String,String>> propBetweenOrNullQueriesMap
    • propQueriesEqualMap

      private final Map<org.alfresco.service.namespace.QName,String> propQueriesEqualMap
    • ftsQueries

      private final Set<String> ftsQueries
    • excludedAspects

      private final Set<org.alfresco.service.namespace.QName> excludedAspects
    • excludedTypes

      private final Set<org.alfresco.service.namespace.QName> excludedTypes
    • excludedPropQueriesMap

      private final Map<org.alfresco.service.namespace.QName,List<String>> excludedPropQueriesMap
    • queryConsistancy

      private org.alfresco.service.cmr.search.QueryConsistency queryConsistancy
    • isExactType

      private boolean isExactType
    • searchTemplate

      private String searchTemplate
    • operator

      private org.alfresco.service.cmr.search.SearchParameters.Operator operator
    • locale

      private Locale locale
    • store

      private org.alfresco.service.cmr.repository.StoreRef store
    • isBulkFetchEnabled

      private boolean isBulkFetchEnabled
    • sortProps

      Map<String,Boolean> sortProps
  • Constructor Details

    • BeCPGQueryBuilder

      private BeCPGQueryBuilder()
  • Method Details

    • includeReportInSearch

      private Boolean includeReportInSearch()
    • defaultSearchTemplate

      private String defaultSearchTemplate()
    • afterPropertiesSet

      public void afterPropertiesSet() throws Exception
      Specified by:
      afterPropertiesSet in interface org.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 - a Set object
    • getTypesExcludedFromIndex

      public static Set<org.alfresco.service.namespace.QName> getTypesExcludedFromIndex()

      getTypesExcludedFromIndex.

      Returns:
      a Set object
    • isExcludedFromIndex

      public static boolean isExcludedFromIndex(org.alfresco.service.namespace.QName type)

      isExcludedFromIndex.

      Parameters:
      type - a QName object
      Returns:
      a boolean
    • createQuery

      public static BeCPGQueryBuilder createQuery()

      createQuery.

      Returns:
      a BeCPGQueryBuilder object.
    • inStore

      public BeCPGQueryBuilder inStore(org.alfresco.service.cmr.repository.StoreRef store)

      inStore.

      Parameters:
      store - a StoreRef object
      Returns:
      a BeCPGQueryBuilder object
    • ofType

      public BeCPGQueryBuilder ofType(org.alfresco.service.namespace.QName typeQname)

      ofType.

      Parameters:
      typeQname - a QName object.
      Returns:
      a BeCPGQueryBuilder object.
    • ofExactType

      public BeCPGQueryBuilder ofExactType(org.alfresco.service.namespace.QName typeQname)

      ofExactType.

      Parameters:
      typeQname - a QName object.
      Returns:
      a BeCPGQueryBuilder object.
    • bulkFetchEnabled

      public BeCPGQueryBuilder bulkFetchEnabled(boolean isBulkFetchEnabled)

      bulkFetchEnabled.

      Parameters:
      isBulkFetchEnabled - a boolean
      Returns:
      a BeCPGQueryBuilder object
    • inType

      public BeCPGQueryBuilder inType(org.alfresco.service.namespace.QName typeQname)

      inType.

      Parameters:
      typeQname - a QName object.
      Returns:
      a BeCPGQueryBuilder object.
    • inBoostedType

      public BeCPGQueryBuilder inBoostedType(org.alfresco.service.namespace.QName typeQname, Integer boostFactor)

      inBoostedType.

      Parameters:
      typeQname - a QName object.
      boostFactor - a Integer object.
      Returns:
      a BeCPGQueryBuilder object.
    • withAspect

      public BeCPGQueryBuilder withAspect(org.alfresco.service.namespace.QName aspect)

      withAspect.

      Parameters:
      aspect - a QName object.
      Returns:
      a BeCPGQueryBuilder object.
    • includeAspect

      public BeCPGQueryBuilder includeAspect(org.alfresco.service.namespace.QName aspect)

      includeAspect.

      Parameters:
      aspect - a QName object.
      Returns:
      a BeCPGQueryBuilder object.
    • inParent

      public BeCPGQueryBuilder inParent(org.alfresco.service.cmr.repository.NodeRef parentNodeRef)

      inParent.

      Parameters:
      parentNodeRef - a NodeRef object.
      Returns:
      a BeCPGQueryBuilder object.
    • maxResults

      public BeCPGQueryBuilder maxResults(int maxResults)

      maxResults.

      Parameters:
      maxResults - a int.
      Returns:
      a BeCPGQueryBuilder object.
    • page

      public BeCPGQueryBuilder page(int page)

      skipCount.

      Parameters:
      page - a int
      Returns:
      a BeCPGQueryBuilder object.
    • page

      public BeCPGQueryBuilder page(org.alfresco.query.PagingRequest pagingRequest)

      page.

      Parameters:
      pagingRequest - a PagingRequest object
      Returns:
      a BeCPGQueryBuilder object
    • andOperator

      public BeCPGQueryBuilder andOperator()

      andOperator.

      Returns:
      a BeCPGQueryBuilder object.
    • locale

      public BeCPGQueryBuilder locale(Locale locale)

      locale.

      Parameters:
      locale - a Locale object.
      Returns:
      a BeCPGQueryBuilder object.
    • parent

      public BeCPGQueryBuilder parent(org.alfresco.service.cmr.repository.NodeRef parentNodeRef)

      parent.

      Parameters:
      parentNodeRef - a NodeRef object.
      Returns:
      a BeCPGQueryBuilder object.
    • members

      public BeCPGQueryBuilder members(String path)

      members.

      Parameters:
      path - a String object.
      Returns:
      a BeCPGQueryBuilder object.
    • inPath

      public BeCPGQueryBuilder inPath(String path)

      inPath.

      Parameters:
      path - a String object.
      Returns:
      a BeCPGQueryBuilder object.
    • inSubPath

      public BeCPGQueryBuilder inSubPath(String subPath)

      inSubPath.

      Parameters:
      subPath - a String object.
      Returns:
      a BeCPGQueryBuilder object.
    • excludePath

      public BeCPGQueryBuilder excludePath(String excludePath)

      excludePath.

      Parameters:
      excludePath - a String object.
      Returns:
      a BeCPGQueryBuilder object.
    • inDB

      public BeCPGQueryBuilder inDB()

      inDB.

      Returns:
      a BeCPGQueryBuilder object.
    • inDBIfPossible

      public BeCPGQueryBuilder inDBIfPossible()

      inDBIfPossible.

      Returns:
      a BeCPGQueryBuilder object.
    • cmisLanguage

      public BeCPGQueryBuilder cmisLanguage()

      cmisLanguage.

      Returns:
      a BeCPGQueryBuilder object.
    • inSite

      public BeCPGQueryBuilder inSite(String siteId, String containerId)

      inSite.

      Parameters:
      siteId - a String object.
      containerId - a String object.
      Returns:
      a BeCPGQueryBuilder object.
    • andID

      public BeCPGQueryBuilder andID(org.alfresco.service.cmr.repository.NodeRef nodeRef)

      andID.

      Parameters:
      nodeRef - a NodeRef object.
      Returns:
      a BeCPGQueryBuilder object.
    • andNotID

      public BeCPGQueryBuilder andNotID(org.alfresco.service.cmr.repository.NodeRef nodeRef)

      andNotID.

      Parameters:
      nodeRef - a NodeRef object.
      Returns:
      a BeCPGQueryBuilder object.
    • andNotIDs

      public BeCPGQueryBuilder andNotIDs(Set<org.alfresco.service.cmr.repository.NodeRef> nodeRefs)

      andNotIDs.

      Parameters:
      nodeRefs - a Set object.
      Returns:
      a BeCPGQueryBuilder object.
    • addSort

      public BeCPGQueryBuilder addSort(Map<String,Boolean> sortMap)

      addSort.

      Parameters:
      sortMap - a Map object.
      Returns:
      a BeCPGQueryBuilder object.
    • addSort

      public BeCPGQueryBuilder addSort(org.alfresco.service.namespace.QName propToSort, boolean sortOrder)

      addSort.

      Parameters:
      propToSort - a QName object.
      sortOrder - a boolean.
      Returns:
      a BeCPGQueryBuilder object.
    • isNotNull

      public BeCPGQueryBuilder isNotNull(org.alfresco.service.namespace.QName propQName)

      isNotNull.

      Parameters:
      propQName - a QName object.
      Returns:
      a BeCPGQueryBuilder object.
    • isNull

      public BeCPGQueryBuilder isNull(org.alfresco.service.namespace.QName propQName)

      isNull.

      Parameters:
      propQName - a QName object.
      Returns:
      a BeCPGQueryBuilder object.
    • isNullOrUnset

      public BeCPGQueryBuilder isNullOrUnset(org.alfresco.service.namespace.QName propQName)

      isNullOrUnset.

      Parameters:
      propQName - a QName object.
      Returns:
      a BeCPGQueryBuilder object.
    • andFTSQuery

      public BeCPGQueryBuilder andFTSQuery(String ftsQuery)

      andFTSQuery.

      Parameters:
      ftsQuery - a String object.
      Returns:
      a BeCPGQueryBuilder object.
    • clearFTSQuery

      public BeCPGQueryBuilder clearFTSQuery()

      clearFTSQuery.

      Returns:
      a BeCPGQueryBuilder object.
    • andPropEquals

      public BeCPGQueryBuilder andPropEquals(org.alfresco.service.namespace.QName propQName, String value)

      andPropEquals.

      Parameters:
      propQName - a QName object.
      value - a String object.
      Returns:
      a BeCPGQueryBuilder object.
    • andPropQuery

      public BeCPGQueryBuilder andPropQuery(org.alfresco.service.namespace.QName propQName, String propQuery)

      andPropQuery.

      Parameters:
      propQName - a QName object.
      propQuery - a String object.
      Returns:
      a BeCPGQueryBuilder object.
    • isPropQueryNull

      private boolean isPropQueryNull(String value)
    • isPropQueryNotNull

      private boolean isPropQueryNotNull(String value)
    • andBetween

      public BeCPGQueryBuilder andBetween(org.alfresco.service.namespace.QName propQName, String start, String end)

      andBetween.

      Parameters:
      propQName - a QName object.
      start - a String object.
      end - a String object.
      Returns:
      a BeCPGQueryBuilder object.
    • orBetween

      public BeCPGQueryBuilder orBetween(org.alfresco.service.namespace.QName propQName, String start, String end)

      orBetween.

      Parameters:
      propQName - a QName object
      start - a String object
      end - a String object
      Returns:
      a BeCPGQueryBuilder object
    • andBetweenOrNull

      public BeCPGQueryBuilder andBetweenOrNull(org.alfresco.service.namespace.QName propQName, String start, String end)

      andBetweenOrNull.

      Parameters:
      propQName - a QName object.
      start - a String object.
      end - a String object.
      Returns:
      a BeCPGQueryBuilder object.
    • excludeProp

      public BeCPGQueryBuilder excludeProp(org.alfresco.service.namespace.QName propName, String query)

      excludeProp.

      Parameters:
      propName - a QName object.
      query - a String object.
      Returns:
      a BeCPGQueryBuilder object.
    • excludeType

      public BeCPGQueryBuilder excludeType(org.alfresco.service.namespace.QName type)

      excludeType.

      Parameters:
      type - a QName object.
      Returns:
      a BeCPGQueryBuilder object.
    • excludeAspect

      public BeCPGQueryBuilder excludeAspect(org.alfresco.service.namespace.QName aspect)

      excludeAspect.

      Parameters:
      aspect - a QName object.
      Returns:
      a BeCPGQueryBuilder object.
    • excludeVersions

      public BeCPGQueryBuilder excludeVersions()

      excludeVersions.

      Returns:
      a BeCPGQueryBuilder object.
    • excludeDefaults

      public BeCPGQueryBuilder excludeDefaults()

      excludeDefaults.

      Returns:
      a BeCPGQueryBuilder object.
    • excludeSystems

      public BeCPGQueryBuilder excludeSystems()

      excludeSystems.

      Returns:
      a BeCPGQueryBuilder object.
    • excludeSearch

      public BeCPGQueryBuilder excludeSearch()

      excludeSearch.

      Returns:
      a BeCPGQueryBuilder object.
    • excludeArchivedEntities

      public BeCPGQueryBuilder excludeArchivedEntities()

      excludeArchivedEntities.

      Returns:
      a BeCPGQueryBuilder object
    • selectNodeByPath

      public org.alfresco.service.cmr.repository.NodeRef selectNodeByPath(String xPath)

      selectNodeByPath.

      Parameters:
      xPath - a String object
      Returns:
      a NodeRef object
    • selectNodeByPath

      public org.alfresco.service.cmr.repository.NodeRef selectNodeByPath(org.alfresco.service.cmr.repository.NodeRef parentNodeRef, String xPath)

      selectNodeByPath.

      Parameters:
      parentNodeRef - a NodeRef object.
      xPath - a String object.
      Returns:
      a NodeRef object.
    • selectNodesByPath

      public List<org.alfresco.service.cmr.repository.NodeRef> selectNodesByPath(org.alfresco.service.cmr.repository.NodeRef parentNodeRef, String xPath)

      selectNodesByPath.

      Parameters:
      parentNodeRef - a NodeRef object.
      xPath - a String object.
      Returns:
      a List object.
    • list

      public List<org.alfresco.service.cmr.repository.NodeRef> list()

      list.

      Returns:
      a List object.
    • pagingResults

      public org.alfresco.query.PagingResults<org.alfresco.service.cmr.repository.NodeRef> pagingResults()

      pagingResults.

      Returns:
      a PagingResults object
    • singleValue

      public org.alfresco.service.cmr.repository.NodeRef singleValue()

      singleValue.

      Returns:
      a NodeRef object.
    • buildQuery

      private String buildQuery()
    • buildCmisQuery

      private String buildCmisQuery()
    • sanitizeProperty

      private String sanitizeProperty(String prop)
    • getCmisPrefix

      private String getCmisPrefix(org.alfresco.service.namespace.QName tmpQName)
    • isCmis

      private boolean isCmis()
    • inSearchTemplate

      public BeCPGQueryBuilder inSearchTemplate(String searchTemplate)

      inSearchTemplate.

      Parameters:
      searchTemplate - a String object.
      Returns:
      a BeCPGQueryBuilder object.
    • ftsLanguage

      public BeCPGQueryBuilder ftsLanguage()

      ftsLanguage.

      Returns:
      a BeCPGQueryBuilder object.
    • search

      private org.alfresco.query.PagingResults<org.alfresco.service.cmr.repository.NodeRef> search(String runnedQuery, Map<String,Boolean> sort, int page, int maxResults)
    • 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)
    • count

      public Long count()

      count.

      This method can be very slow for high result counts and saturate nodeDao cache
      Returns:
      a Long object.
    • extractSortQname

      public org.alfresco.service.namespace.QName extractSortQname(String sortProp)

      extractSortQname.

      Parameters:
      sortProp - a String object.
      Returns:
      a QName object.
    • childFileFolders

      public org.alfresco.query.PagingResults<org.alfresco.service.cmr.repository.NodeRef> childFileFolders(org.alfresco.query.PagingRequest pageRequest)

      childFileFolders.

      Parameters:
      pageRequest - a PagingRequest object.
      Returns:
      a PagingResults object.
    • 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)
    • 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)
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • clone

      public BeCPGQueryBuilder clone()
      Overrides:
      clone in class Object