Class CmsCategoryResourceCollector
- java.lang.Object
-
- org.opencms.file.collectors.A_CmsResourceCollector
-
- org.opencms.file.collectors.CmsCategoryResourceCollector
-
- All Implemented Interfaces:
java.lang.Comparable<I_CmsResourceCollector>
,I_CmsCollectorPublishListProvider
,I_CmsResourceCollector
public class CmsCategoryResourceCollector extends A_CmsResourceCollector
A collector to fetch XML contents in a folder or the current site filtered by one or more given category types.The return list will also be filtered by given key value pairs which are given as a collector parameter.
Usage:
<cms:contentload collector="allKeyValuePairFiltered" param="resource=[filename]|resourceType=[resource type]|categoryTypes=[category1,category2,...]|subTree=[boolean]|sortBy=[category|date|property:[property_name]]|sortAsc=[boolean]">
- Since:
- 7.0.0
-
-
Field Summary
Fields Modifier and Type Field Description static java.util.Comparator<CmsResource>
COMPARE_DATE_RELEASED_DESC
Compares the release date of resources in descending order.protected static org.apache.commons.logging.Log
LOG
The log object for this class.-
Fields inherited from class org.opencms.file.collectors.A_CmsResourceCollector
m_order, SEPARATOR_TEMPLATEFILE
-
Fields inherited from interface org.opencms.file.collectors.I_CmsResourceCollector
DEFAULT_LIMIT
-
-
Constructor Summary
Constructors Constructor Description CmsCategoryResourceCollector()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.util.List<CmsResource>
allKeyValuePairFiltered(CmsObject cms, java.lang.String param, int numResults)
Collects all resources for the given categories filtered and sorted by the given collector parameter.java.util.List<java.lang.String>
getCollectorNames()
Returns a list of all collector names (Strings) this collector implementation supports.java.lang.String
getCreateLink(CmsObject cms, java.lang.String collectorName, java.lang.String param)
Returns the link that must be executed when a user clicks on the direct edit "new" button on a list created by the named collector.java.lang.String
getCreateParam(CmsObject cms, java.lang.String collectorName, java.lang.String param)
Returns the parameter that must be passed to theI_CmsResourceCollector.getCreateLink(CmsObject, String, String)
method.java.util.List<CmsResource>
getResults(CmsObject cms, java.lang.String collectorName, java.lang.String param)
Returns a list ofCmsResource
Objects that are gathered in the VFS using the named collector.java.util.List<CmsResource>
getResults(CmsObject cms, java.lang.String collectorName, java.lang.String param, int numResults)
Returns a list ofCmsResource
Objects that are gathered in the VFS using the named collector.-
Methods inherited from class org.opencms.file.collectors.A_CmsResourceCollector
checkParams, compareTo, createResourceForCollector, equals, getCreateInFolder, getCreateInFolder, getCreateLink, getCreateParam, getCreateTypeId, getDefaultCollectorName, getDefaultCollectorParam, getOrder, getPostCreateHandler, getPublishResources, getResults, hashCode, setDefaultCollectorName, setDefaultCollectorParam, setOrder, shrinkToFit, shrinkToFit
-
-
-
-
Field Detail
-
COMPARE_DATE_RELEASED_DESC
public static final java.util.Comparator<CmsResource> COMPARE_DATE_RELEASED_DESC
Compares the release date of resources in descending order.
-
LOG
protected static final org.apache.commons.logging.Log LOG
The log object for this class.
-
-
Constructor Detail
-
CmsCategoryResourceCollector
public CmsCategoryResourceCollector()
-
-
Method Detail
-
getCollectorNames
public java.util.List<java.lang.String> getCollectorNames()
Description copied from interface:I_CmsResourceCollector
Returns a list of all collector names (Strings) this collector implementation supports.- Returns:
- a list of all collector names this collector implementation supports
- See Also:
I_CmsResourceCollector.getCollectorNames()
-
getCreateLink
public java.lang.String getCreateLink(CmsObject cms, java.lang.String collectorName, java.lang.String param) throws CmsException, CmsDataAccessException
Description copied from interface:I_CmsResourceCollector
Returns the link that must be executed when a user clicks on the direct edit "new" button on a list created by the named collector.If this method returns
null
, it indicated that the selected collector implementation does not support a "create link", and so no "new" button will should shown on lists generated with this collector.- Parameters:
cms
- the current CmsObjectcollectorName
- the name of the collector to useparam
- an optional collector parameter- Returns:
- the link to execute after a "new" button was clicked
- Throws:
CmsException
- if something goes wrongCmsDataAccessException
- if the parameter attribute of the corresponding collector tag is invalid- See Also:
I_CmsResourceCollector.getCreateLink(org.opencms.file.CmsObject, java.lang.String, java.lang.String)
-
getCreateParam
public java.lang.String getCreateParam(CmsObject cms, java.lang.String collectorName, java.lang.String param) throws CmsDataAccessException
Description copied from interface:I_CmsResourceCollector
Returns the parameter that must be passed to theI_CmsResourceCollector.getCreateLink(CmsObject, String, String)
method.If this method returns
null
, it indicates that the selected collector implementation does not support a "create link", and so no "new" button will should shown on lists generated with this collector.- Parameters:
cms
- the current CmsObjectcollectorName
- the name of the collector to useparam
- an optional collector parameter from the current page context- Returns:
- the parameter that will be passed to the
I_CmsResourceCollector.getCreateLink(CmsObject, String, String)
method, or null - Throws:
CmsDataAccessException
- if the parameter attribute of the corresponding collector tag is invalid- See Also:
I_CmsResourceCollector.getCreateParam(org.opencms.file.CmsObject, java.lang.String, java.lang.String)
-
getResults
public java.util.List<CmsResource> getResults(CmsObject cms, java.lang.String collectorName, java.lang.String param) throws CmsDataAccessException, CmsException
Description copied from interface:I_CmsResourceCollector
Returns a list ofCmsResource
Objects that are gathered in the VFS using the named collector.- Parameters:
cms
- the current CmsObjectcollectorName
- the name of the collector to useparam
- an optional collector parameter- Returns:
- a list of CmsXmlContent objects
- Throws:
CmsDataAccessException
- if the parameter attribute of the corresponding collector tag is invalidCmsException
- if something goes wrong- See Also:
I_CmsResourceCollector.getResults(org.opencms.file.CmsObject, java.lang.String, java.lang.String)
-
getResults
public java.util.List<CmsResource> getResults(CmsObject cms, java.lang.String collectorName, java.lang.String param, int numResults) throws CmsDataAccessException, CmsException
Description copied from interface:I_CmsResourceCollector
Returns a list ofCmsResource
Objects that are gathered in the VFS using the named collector.This method takes as a parameter the desired number of results. If this number is -1, the number of results will only depend on the collector parameters. If it is positive, any given result number in the collector parameter string will not be used.
- Parameters:
cms
- the current CmsObjectcollectorName
- the name of the collector to useparam
- an optional collector parameternumResults
- the desired number of results (overrides result number possibl- Returns:
- a list of CmsXmlContent objects
- Throws:
CmsDataAccessException
- if the parameter attribute of the corresponding collector tag is invalidCmsException
- if something goes wrong- See Also:
I_CmsResourceCollector.getResults(org.opencms.file.CmsObject, java.lang.String, java.lang.String)
-
allKeyValuePairFiltered
protected java.util.List<CmsResource> allKeyValuePairFiltered(CmsObject cms, java.lang.String param, int numResults) throws CmsException
Collects all resources for the given categories filtered and sorted by the given collector parameter.- Parameters:
cms
- the current OpenCms user contextparam
- value parameter to filter the resourcesnumResults
- number of results- Returns:
- a list of resources filtered and sorted by the given collector parameter
- Throws:
CmsException
- if something goes wrong
-
-