Package com.jalios.jcms
Class QueryManager
- java.lang.Object
-
- com.jalios.jcms.QueryManager
-
- All Implemented Interfaces:
JcmsConstants
,JaliosConstants
public class QueryManager extends java.lang.Object implements JcmsConstants
This class manages queries on publications- Since:
- jcms-5.0.0
- Author:
- Olivier Dedieu, Olivier Jaquemet
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
QueryManager.QueryPublicationSelector
static class
QueryManager.QueryStep
Query manager steps, used to determintate which query processing is being performed.
-
Field Summary
Fields Modifier and Type Field Description protected int
idCount
static java.lang.String
QUERY_MANAGER_STEP_ATTRIBUTE
QueryHandler attribute key of the current QueryManager processing step of the QueryManager.protected java.util.Set<QueryFilter>
queryFilterSet
-
Fields inherited from interface com.jalios.util.JaliosConstants
CRLF, MILLIS_IN_ONE_DAY, MILLIS_IN_ONE_HOUR, MILLIS_IN_ONE_MINUTE, MILLIS_IN_ONE_MONTH, MILLIS_IN_ONE_SECOND, MILLIS_IN_ONE_WEEK, MILLIS_IN_ONE_YEAR
-
Fields inherited from interface com.jalios.jcms.JcmsConstants
ADATE_SEARCH, ADMIN_NOTES_PROP, ADVANCED_TAB, AJAX_MODE_ATTR, ARCHIVES_DIR, ASCII_WIDTH, CATEGORY_TAB, CDATE_SEARCH, CLASS_PROPERTY, COMMON_ALARM, CONTENT_TAB, COOKIE_MAX_AGE, COUNTRY_SPRITE, CS_TYPOLOGY_ROOT_CAT_VID, CTRL_TOPIC_INTERNAL, CTRL_TOPIC_REF, CTRL_TOPIC_VALUE, CTRL_TOPIC_WRITE, CUSTOM_PROP, DATA_DIRECTORY, DEFAULT_PHOTO_PROP, DOCCHOOSER_HEIGHT, DOCCHOOSER_WIDTH, DOCS_DIR, EDATE_SEARCH, EMAIL_REGEXP, ERROR_MSG, FORBIDDEN_FILE_ACCESS, FORBIDDEN_REDIRECT, FORCE_REDIRECT, GLYPH_ICON_PREFIX, ICON_ARCHIVE, ICON_ICON_PREFIX, ICON_LOCK, ICON_LOCK_STRONG, ICON_PREFIX_PROP, ICON_WARN, ICON_WH_BOOK_CLOSED, ICON_WH_BOOK_OPEN, INFORMATION_MSG, IS_IN_FRONT_OFFICE, JALIOS_JUNIT_PROP, JCMS_CADDY, JCMS_MSG_LIST, JCMS_TOASTR_COLLECTION, JSYNC_DOWNLOAD_DIR, JSYNC_SYNC_ALARM, LANG_SPRITE, LOG_FILE, LOG_TOPIC_SECURITY, LOGGER_PROP, LOGGER_XMLPROP, MBR_PHOTO_DIR, MDATE_SEARCH, MONITOR_XML, OP_CREATE, OP_CREATE_STR, OP_DEEP_COPY, OP_DEEP_COPY_STR, OP_DEEP_DELETE, OP_DEEP_DELETE_STR, OP_DELETE, OP_DELETE_STR, OP_MERGE, OP_MERGE_STR, OP_UPDATE, OP_UPDATE_STR, ORGANIZATION_ROOT_GROUP_PROP, PDATE_SEARCH, PHOTO_DIR, PHOTO_ICON, PHOTO_ICON_HEIGHT, PHOTO_ICON_PROP_PREFIX, PHOTO_ICON_WIDTH, PHOTO_LARGE, PHOTO_LARGE_HEIGHT, PHOTO_LARGE_PROP_PREFIX, PHOTO_LARGE_WIDTH, PHOTO_MINI, PHOTO_MINI_HEIGHT, PHOTO_MINI_PROP_PREFIX, PHOTO_MINI_WIDTH, PHOTO_NORMAL, PHOTO_NORMAL_HEIGHT, PHOTO_NORMAL_PROP_PREFIX, PHOTO_NORMAL_WIDTH, PHOTO_SMALL, PHOTO_SMALL_HEIGHT, PHOTO_SMALL_PROP_PREFIX, PHOTO_SMALL_WIDTH, PHOTO_TINY, PHOTO_TINY_HEIGHT, PHOTO_TINY_PROP_PREFIX, PHOTO_TINY_WIDTH, PREVIOUS_TAB, PRINT_VIEW, PRIVATE_FILE_ACCESS, PUBLIC_FILE_ACCESS, RAW_CONTENT_ICON_PREFIX, READ_RIGHT_TAB, SDATE_SEARCH, SEARCHENGINE_ALARM, SECURITY_LOG_FILE, SESSION_AUTHORIZED_FILENAMES_SET, SPRITE_ICON_PREFIX, STATS_REPORT_DIR, STATUS_PROP, STORE_DIR, STORE_XML, SUCCESS_MSG, SVG_ICON_PREFIX, SVGINLINE_ICON_PREFIX, TEMPLATE_TAB, THUMBNAIL_LARGE_HEIGHT, THUMBNAIL_LARGE_WIDTH, THUMBNAIL_SMALL_HEIGHT, THUMBNAIL_SMALL_WIDTH, TTCARD_MEDIA_HEIGHT, TTCARD_MEDIA_WIDTH, TYPES_ICON_ALT_PROP, TYPES_ICON_SUFFIX_PROP, TYPES_ICON_TITLE_PROP, TYPES_PREFIX_PROP, TYPES_THUMB_SUFFIX_PROP, UDATE_SEARCH, UPDATE_RIGHT_TAB, UPLOAD_DIR, UPLOAD_PERMISSION_COUNT_PROP_PREFIX, UPLOAD_PERMISSION_SIZE_PROP_PREFIX, URL_REGEXP, VID_LOGGED_MEMBER, WARNING_MSG, WEBAPP_PROP, WFEXPRESS_ALARM, WFREMINDER_ALARM, WORKFLOW_TAB, WORKFLOW_XML
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addQueryFilter(QueryFilter qf)
Add the given QueryFilter.boolean
callFilterDBResult(PublicationCriteria pubCriteria)
void
filterCriteria(PublicationCriteria pubCriteria, org.hibernate.Criteria criteria)
Invoke all QueryFilter to allow them to modify the Hibernate Criteria used for a DB Query.boolean
filterDBResult(Publication pub, java.util.Map context)
protected java.util.Date[]
getBeginAndEndDates(QueryHandler qh)
Compute begin and end date of a query from QueryHandler values.CategorySearchEngine
getCategorySearchEngine()
protected static int
getDateType(QueryHandler qh)
Return an integer describing the type of search date from a QueryHandler.static QueryManager
getInstance()
PublicationSearchEngine
getPublicationSearchEngine()
protected java.util.HashSet<Category>
getQueryAvoidCategorySet(QueryHandler qh)
Compute aHashSet
ofCategory
to exclude during query from the "cidsOff" value of the given QueryHandler.protected java.util.HashSet<java.lang.Class<? extends Publication>>
getQueryAvoidClassSet(QueryHandler qh)
Compute aHashSet
ofClass
(type) to include during query from the "typesOff" value of the given QueryHandler.protected java.util.HashSet<Group>
getQueryAvoidGroupSet(QueryHandler qh)
Compute aHashSet
ofGroup
to exclude during query from the "gidsOff" value of the given QueryHandler.protected java.util.HashSet<Member>
getQueryAvoidMemberSet(QueryHandler qh)
Compute aHashSet
ofMember
to exclude during query from the "midsOff" value of the given QueryHandler.protected java.util.HashSet<Category>
getQueryCategorySet(QueryHandler qh)
Compute aHashSet
ofCategory
to include during query from the "cids" value of the given QueryHandler.protected java.util.HashSet<java.lang.Class<? extends Publication>>
getQueryClassSet(QueryHandler qh, boolean addFileDoc)
Compute aHashSet
ofClass
(type) to include during query from the "types" value of the given QueryHandler.java.util.Set<QueryFilter>
getQueryFilterSet()
Returns all the query filter.protected java.util.HashSet<Group>
getQueryGroupSet(QueryHandler qh)
Compute aHashSet
ofGroup
to include during query from the "gids" value of the given QueryHandler.static QueryManager
getQueryManager()
protected java.util.HashSet<Member>
getQueryMemberSet(QueryHandler qh)
Compute aHashSet
ofMember
to include during query from the "mids" value of the given QueryHandler.protected java.util.HashSet<PortalElement>
getQueryPortalElementSet(QueryHandler qh)
Compute aHashSet
ofPortalElement
including all portal ands its children from the "portalIds" value of the given QueryHandler.java.util.SortedSet<? extends Publication>
getRelatedPublicationSet(Publication pub, QueryHandler qh)
Returns a set of publications related to the given publication and the given query handler.java.util.SortedSet<? extends Publication>
getRelatedPublicationSet(Publication pub, Member mbr, java.lang.Class... classes)
Returns a set of publications related to the given publication and the given types for the given member.java.util.SortedSet<? extends Publication>
getRelatedPublicationSet(java.util.Set<Category> catSet, QueryHandler qh, java.util.Comparator<? extends Publication> superComparator)
Returns a set of publications related to the given category set and the given query handler.static boolean
matchLucenePublicationRefinement(QueryHandler qh, Publication pub)
protected QueryResultSet
performJStoreQuery(QueryHandler qh, javax.servlet.http.HttpServletRequest request, java.util.Set<? extends Publication> proposedDataSet)
void
prepareExternalResult(Publication pub)
Prepare the given publication to be displayed in the result list.QueryResultSet
query(QueryHandler qh, javax.servlet.ServletRequest request, java.util.Set<? extends Publication> proposedDataSet)
Perform a query using parameters specified in the givenQueryHandler
.protected void
reduceDataSetWithCategories(QueryHandler qh, java.util.HashSet<Publication> dataToKeepSet, java.util.HashSet<Publication> dataToExcludeSet, boolean[] indexUsed)
Fill the givenHashSet
withData
to keep and to exclude using Categories options (cids/cidsOff) of the QueryHandler.protected QueryResultSet
reduceDataSetWithHistoryRefinement(QueryHandler qh, java.util.Set<? extends Publication> proposedDataSet, javax.servlet.http.HttpServletRequest request, java.util.HashSet<Publication> dataToKeepSet, java.util.HashSet<Publication> dataToExcludeSet, boolean[] indexUsed)
Fill the givenHashSet
withData
to keep and to exclude using query History (hist) of the QueryHandler.protected void
reduceDataSetWithMembers(QueryHandler qh, java.util.HashSet<Publication> dataToKeepSet, java.util.HashSet<Publication> dataToExcludeSet, boolean[] indexUsed)
Fill the givenHashSet
withData
to keep and to exclude using Members options (mids/midsOff) of the QueryHandler.protected void
reduceDataSetWithPortalElements(QueryHandler qh, java.util.HashSet<Publication> dataToKeepSet, java.util.HashSet<Publication> dataToExcludeSet, boolean[] indexUsed)
Fill the givenHashSet
withData
to keep and to exclude using PortalElement options (mids/midsOff) of the QueryHandler.protected void
reduceDataSetWithTextEngine(QueryHandler qh, java.util.HashSet<Publication> dataToKeepSet, java.util.HashSet<Publication> dataToExcludeSet, boolean[] indexUsed)
Fill the givenHashSet
withData
to keep and to exclude using Text Search options of the QueryHandler.protected boolean
reduceDataSetWithTypes(QueryHandler qh, java.util.HashSet<Publication> dataToKeepSet, java.util.HashSet<Publication> dataToExcludeSet, boolean[] indexUsed)
Fill the givenHashSet
withData
to keep and to exclude using Types options (types/typesOff) of the QueryHandler.void
removeQueryFilter(QueryFilter qf)
Remove the given QueryFilter.protected void
replaceFileDocByReferrers(QueryHandler qh, QueryResultSet resultSet, DataSelector replacedFileDocSelector)
This method replace any FileDocuments inside the givenQueryResultSet
by their referrer (see getLinkIndexedDataSet(Publication.class)).protected boolean
searchFulltext(QueryHandler qh, java.util.HashSet<Publication> dataSet, QueryResultSet resultSet)
Perform a full-text search.
-
-
-
Field Detail
-
QUERY_MANAGER_STEP_ATTRIBUTE
public static final java.lang.String QUERY_MANAGER_STEP_ATTRIBUTE
QueryHandler attribute key of the current QueryManager processing step of the QueryManager.- See Also:
QueryManager.QueryStep
, Constant Field Values
-
queryFilterSet
protected java.util.Set<QueryFilter> queryFilterSet
-
idCount
protected int idCount
-
-
Method Detail
-
getQueryManager
public static QueryManager getQueryManager()
-
getInstance
public static QueryManager getInstance()
-
getPublicationSearchEngine
public PublicationSearchEngine getPublicationSearchEngine()
- Returns:
- the PublicationSearchEngine
- Since:
- jcms-5.5.0
-
getCategorySearchEngine
public CategorySearchEngine getCategorySearchEngine()
- Returns:
- the CategorySearchEngine
- Since:
- jcms-5.5.0
-
addQueryFilter
public void addQueryFilter(QueryFilter qf)
Add the given QueryFilter.- Parameters:
qf
- the QueryFilter to be added- Since:
- jcms-5.0.0
-
removeQueryFilter
public void removeQueryFilter(QueryFilter qf)
Remove the given QueryFilter.- Parameters:
qf
- the QueryFilter to be removed- Since:
- jcms-5.0.0
-
getQueryFilterSet
public java.util.Set<QueryFilter> getQueryFilterSet()
Returns all the query filter. DO NOT alter the returned set, clone prior modification.- Returns:
- the queryFilterSet
- Since:
- jcms-5.5.0
-
prepareExternalResult
public void prepareExternalResult(Publication pub)
Prepare the given publication to be displayed in the result list. Fill the publication with fake id, cdate, mdate and pdate, and author.- Parameters:
pub
- the publication to be prepared- Since:
- jcms-5.0.0
-
query
public QueryResultSet query(QueryHandler qh, javax.servlet.ServletRequest request, java.util.Set<? extends Publication> proposedDataSet)
Perform a query using parameters specified in the givenQueryHandler
.
Search in the givenCollection
ofPublication
or in allPublication
if not specified.- Parameters:
qh
- theQueryHandler
from which to retrieve the query parameters, MUST NOT be null.request
- theServletHttpRequest
used to set some error or warning messages in the attributes, can be null.proposedDataSet
- theCollection
ofPublication
in which to search and apply query parameters, if null, search is done in allPublication
.- Returns:
- a
QueryResultSet
containing all results of this query, it is aHashSet
and therefore it is NOT sorted. use eitherQueryResultSet.getAsSortedSet()
orQueryResultSet.getAsSortedSet(java.util.Comparator)
to obtain a sorted Set. - Since:
- jcms-5.0.0
-
performJStoreQuery
protected QueryResultSet performJStoreQuery(QueryHandler qh, javax.servlet.http.HttpServletRequest request, java.util.Set<? extends Publication> proposedDataSet)
- Parameters:
qh
- the queryHandlerrequest
- the requestproposedDataSet
- the proposed data set- Returns:
- see QueryManager#query(QueryHandler, ServletRequest, Set)
- See Also:
query(QueryHandler, ServletRequest, Set)
-
getDateType
protected static int getDateType(QueryHandler qh)
Return an integer describing the type of search date from a QueryHandler.- Parameters:
qh
- theQueryHandler
to use.- Returns:
- an integer, see ?DATE_SEARCH constants.
-
getBeginAndEndDates
protected java.util.Date[] getBeginAndEndDates(QueryHandler qh)
Compute begin and end date of a query from QueryHandler values.- Parameters:
qh
- theQueryHandler
to use.- Returns:
- an array of two
Date
, the first is the begin date, the second the end Date.
-
getQueryCategorySet
protected java.util.HashSet<Category> getQueryCategorySet(QueryHandler qh)
Compute aHashSet
ofCategory
to include during query from the "cids" value of the given QueryHandler.- Parameters:
qh
- the QueryHandler- Returns:
- a
HashSet
ofCategory
-
getQueryAvoidCategorySet
protected java.util.HashSet<Category> getQueryAvoidCategorySet(QueryHandler qh)
Compute aHashSet
ofCategory
to exclude during query from the "cidsOff" value of the given QueryHandler.- Parameters:
qh
- the QueryHandler- Returns:
- a
HashSet
ofCategory
-
getQueryMemberSet
protected java.util.HashSet<Member> getQueryMemberSet(QueryHandler qh)
Compute aHashSet
ofMember
to include during query from the "mids" value of the given QueryHandler.- Parameters:
qh
- the QueryHandler- Returns:
- a
HashSet
ofMember
-
getQueryAvoidMemberSet
protected java.util.HashSet<Member> getQueryAvoidMemberSet(QueryHandler qh)
Compute aHashSet
ofMember
to exclude during query from the "midsOff" value of the given QueryHandler.- Parameters:
qh
- the QueryHandler- Returns:
- a
HashSet
ofMember
-
getQueryGroupSet
protected java.util.HashSet<Group> getQueryGroupSet(QueryHandler qh)
Compute aHashSet
ofGroup
to include during query from the "gids" value of the given QueryHandler. Return null if the computed hashset is empty.- Parameters:
qh
- the QueryHandler- Returns:
- a
HashSet
ofGroup
-
getQueryAvoidGroupSet
protected java.util.HashSet<Group> getQueryAvoidGroupSet(QueryHandler qh)
Compute aHashSet
ofGroup
to exclude during query from the "gidsOff" value of the given QueryHandler.- Parameters:
qh
- the QueryHandler- Returns:
- a
HashSet
ofGroup
-
getQueryPortalElementSet
protected java.util.HashSet<PortalElement> getQueryPortalElementSet(QueryHandler qh)
Compute aHashSet
ofPortalElement
including all portal ands its children from the "portalIds" value of the given QueryHandler.- Parameters:
qh
- the QueryHandler- Returns:
- a
HashSet
ofPortalElement
-
getQueryClassSet
protected java.util.HashSet<java.lang.Class<? extends Publication>> getQueryClassSet(QueryHandler qh, boolean addFileDoc)
Compute aHashSet
ofClass
(type) to include during query from the "types" value of the given QueryHandler.- Parameters:
qh
- the QueryHandleraddFileDoc
- if true add the FileDocument class- Returns:
- a
HashSet
ofClass
-
getQueryAvoidClassSet
protected java.util.HashSet<java.lang.Class<? extends Publication>> getQueryAvoidClassSet(QueryHandler qh)
Compute aHashSet
ofClass
(type) to include during query from the "typesOff" value of the given QueryHandler.- Parameters:
qh
- the QueryHandler- Returns:
- a
HashSet
ofClass
-
reduceDataSetWithTextEngine
protected void reduceDataSetWithTextEngine(QueryHandler qh, java.util.HashSet<Publication> dataToKeepSet, java.util.HashSet<Publication> dataToExcludeSet, boolean[] indexUsed)
Fill the givenHashSet
withData
to keep and to exclude using Text Search options of the QueryHandler.- Parameters:
qh
- the QueryHandlerdataToKeepSet
- the set of data to keepdataToExcludeSet
- the set of data to excludeindexUsed
- a flag to mark if data set is to keep or to exclude- Since:
- jcms-6.1.0
-
reduceDataSetWithTypes
protected boolean reduceDataSetWithTypes(QueryHandler qh, java.util.HashSet<Publication> dataToKeepSet, java.util.HashSet<Publication> dataToExcludeSet, boolean[] indexUsed)
Fill the givenHashSet
withData
to keep and to exclude using Types options (types/typesOff) of the QueryHandler.- Parameters:
qh
- the QueryHandlerdataToKeepSet
- the set of data to keepdataToExcludeSet
- the set of data to excludeindexUsed
- a flag to mark if data set is to keep or to exclude- Returns:
- true if the reduction using dataToKeepSet was performed, false otherwise.
-
reduceDataSetWithCategories
protected void reduceDataSetWithCategories(QueryHandler qh, java.util.HashSet<Publication> dataToKeepSet, java.util.HashSet<Publication> dataToExcludeSet, boolean[] indexUsed)
Fill the givenHashSet
withData
to keep and to exclude using Categories options (cids/cidsOff) of the QueryHandler.- Parameters:
qh
- the QueryHandlerdataToKeepSet
- the set of data to keepdataToExcludeSet
- the set of data to excludeindexUsed
- a flag to mark if data set is to keep or to exclude
-
reduceDataSetWithMembers
protected void reduceDataSetWithMembers(QueryHandler qh, java.util.HashSet<Publication> dataToKeepSet, java.util.HashSet<Publication> dataToExcludeSet, boolean[] indexUsed)
Fill the givenHashSet
withData
to keep and to exclude using Members options (mids/midsOff) of the QueryHandler.- Parameters:
qh
- the QueryHandlerdataToKeepSet
- the set of data to keepdataToExcludeSet
- the set of data to excludeindexUsed
- a flag to mark if data set is to keep or to exclude
-
reduceDataSetWithPortalElements
protected void reduceDataSetWithPortalElements(QueryHandler qh, java.util.HashSet<Publication> dataToKeepSet, java.util.HashSet<Publication> dataToExcludeSet, boolean[] indexUsed)
Fill the givenHashSet
withData
to keep and to exclude using PortalElement options (mids/midsOff) of the QueryHandler.- Parameters:
qh
- the QueryHandlerdataToKeepSet
- the set of data to keepdataToExcludeSet
- the set of data to excludeindexUsed
- a flag to mark if data set is to keep or to exclude
-
reduceDataSetWithHistoryRefinement
protected QueryResultSet reduceDataSetWithHistoryRefinement(QueryHandler qh, java.util.Set<? extends Publication> proposedDataSet, javax.servlet.http.HttpServletRequest request, java.util.HashSet<Publication> dataToKeepSet, java.util.HashSet<Publication> dataToExcludeSet, boolean[] indexUsed)
Fill the givenHashSet
withData
to keep and to exclude using query History (hist) of the QueryHandler.- Parameters:
qh
- the QueryHandlerproposedDataSet
- the proposed set of data to seach on.request
- the requestdataToKeepSet
- the set of data to keepdataToExcludeSet
- the set of data to excludeindexUsed
- a flag to mark if data set is to keep or to exclude- Returns:
- the QueryResultSet which was used for history refinement if any, or null otherwise
-
replaceFileDocByReferrers
protected void replaceFileDocByReferrers(QueryHandler qh, QueryResultSet resultSet, DataSelector replacedFileDocSelector)
This method replace any FileDocuments inside the givenQueryResultSet
by their referrer (see getLinkIndexedDataSet(Publication.class)).It keeps score of original FileDocument (except if the publication was already part of the result.
It removes FileDocument from the resultSet and add other Publications (if they match authorization and query params).- Parameters:
qh
- the QueryHandlerresultSet
- the QueryResultSetreplacedFileDocSelector
- a DataSelector- Since:
- jcms-4.1
-
searchFulltext
protected boolean searchFulltext(QueryHandler qh, java.util.HashSet<Publication> dataSet, QueryResultSet resultSet)
Perform a full-text search. It fills the givenresultSet
with results from the dataSet matching critera of qh.- Parameters:
qh
- the QueryhandlerdataSet
- aHashSet
containing all the publication to search.resultSet
- aQueryResultSet
in which to put all the results.- Returns:
- true if the search has been performed.
- Since:
- jcms-5.0.0
-
matchLucenePublicationRefinement
public static boolean matchLucenePublicationRefinement(QueryHandler qh, Publication pub)
-
callFilterDBResult
public boolean callFilterDBResult(PublicationCriteria pubCriteria)
-
filterCriteria
public void filterCriteria(PublicationCriteria pubCriteria, org.hibernate.Criteria criteria)
Invoke all QueryFilter to allow them to modify the Hibernate Criteria used for a DB Query.- Parameters:
pubCriteria
- the criteria of the query.criteria
- the hibernate criteria computed by JPlatform core- Since:
- jcms-10.0.7 / JCMS-9561
-
filterDBResult
public boolean filterDBResult(Publication pub, java.util.Map context)
-
getRelatedPublicationSet
public java.util.SortedSet<? extends Publication> getRelatedPublicationSet(Publication pub, Member mbr, java.lang.Class... classes)
Returns a set of publications related to the given publication and the given types for the given member.- Parameters:
pub
- the publication to search related publications.mbr
- the logged memberclasses
- an array of publication classes- Returns:
- a set of publications related to the given publication and the given types for the given member.
- Since:
- jcms-10.0.4
-
getRelatedPublicationSet
public java.util.SortedSet<? extends Publication> getRelatedPublicationSet(Publication pub, QueryHandler qh)
Returns a set of publications related to the given publication and the given query handler.- Parameters:
pub
- the publication to search related publications.qh
- the QueryHandler- Returns:
- a set of publications related to the given publication and the given query handler.
- Since:
- jcms-10.0.0
-
getRelatedPublicationSet
public java.util.SortedSet<? extends Publication> getRelatedPublicationSet(java.util.Set<Category> catSet, QueryHandler qh, java.util.Comparator<? extends Publication> superComparator)
Returns a set of publications related to the given category set and the given query handler.- Parameters:
catSet
- the set of category to search related publications.qh
- the QueryHandlersuperComparator
- if not null use this comparator in case of equality on the common category count.- Returns:
- a set of publications related to the given category set and the given query handler.
- Since:
- jcms-10.0.0
-
-