|
||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.opencms.relations.CmsCategoryService
public class CmsCategoryService
Provides several simplified methods for manipulating category relations.
CmsCategory
Field Summary | |
---|---|
static java.lang.String |
CENTRALIZED_REPOSITORY
The centralized path for categories. |
Constructor Summary | |
---|---|
CmsCategoryService()
|
Method Summary | |
---|---|
void |
addResourceToCategory(CmsObject cms,
java.lang.String resourceName,
CmsCategory category)
Adds a resource identified by the given resource name to the given category. |
void |
addResourceToCategory(CmsObject cms,
java.lang.String resourceName,
java.lang.String categoryPath)
Adds a resource identified by the given resource name to the category identified by the given category path. |
void |
clearCategoriesForResource(CmsObject cms,
java.lang.String resourcePath)
Removes the given resource from all categories. |
CmsCategory |
createCategory(CmsObject cms,
CmsCategory parent,
java.lang.String name,
java.lang.String title,
java.lang.String description)
Deprecated. use createCategory(CmsObject, CmsCategory, String, String, String, String) instead |
CmsCategory |
createCategory(CmsObject cms,
CmsCategory parent,
java.lang.String name,
java.lang.String title,
java.lang.String description,
java.lang.String referencePath)
Creates a new category. |
void |
deleteCategory(CmsObject cms,
java.lang.String categoryPath)
Deprecated. use deleteCategory(CmsObject, String, String) instead |
void |
deleteCategory(CmsObject cms,
java.lang.String categoryPath,
java.lang.String referencePath)
Deletes the category identified by the given path. |
CmsCategory |
getCategory(CmsObject cms,
CmsResource resource)
Creates a category from the given resource. |
CmsCategory |
getCategory(CmsObject cms,
java.lang.String categoryRootPath)
Creates a category from the given category root path. |
java.util.List |
getCategoryRepositories(CmsObject cms,
java.lang.String referencePath)
Returns all category repositories for the given reference path. |
static CmsCategoryService |
getInstance()
Returns the singleton instance. |
java.lang.String |
getRepositoryBaseFolderName(CmsObject cms)
Returns the category repositories base folder name. |
void |
moveCategory(CmsObject cms,
java.lang.String oldCatPath,
java.lang.String newCatPath)
Deprecated. use moveCategory(CmsObject, String, String, String) instead |
void |
moveCategory(CmsObject cms,
java.lang.String oldCatPath,
java.lang.String newCatPath,
java.lang.String referencePath)
Renames/Moves a category from the old path to the new one. |
java.util.List |
readAllCategories(CmsObject cms,
boolean includeSubCats)
Deprecated. use readCategories(CmsObject, String, boolean, String) instead |
java.util.List |
readCategories(CmsObject cms,
java.lang.String parentCategoryPath,
boolean includeSubCats,
java.lang.String referencePath)
Returns all categories given some search parameters. |
CmsCategory |
readCategory(CmsObject cms,
java.lang.String categoryPath)
Deprecated. use readCategory(CmsObject, String, String) instead |
CmsCategory |
readCategory(CmsObject cms,
java.lang.String categoryPath,
java.lang.String referencePath)
Reads all categories identified by the given category path for the given reference path. |
java.util.List |
readCategoryResources(CmsObject cms,
java.lang.String categoryPath,
boolean recursive)
Deprecated. use readCategoryResources(CmsObject, String, boolean, String) instead |
java.util.List |
readCategoryResources(CmsObject cms,
java.lang.String categoryPath,
boolean recursive,
java.lang.String referencePath)
Reads the resources for a category identified by the given category path. |
java.util.List |
readResourceCategories(CmsObject cms,
java.lang.String resourceName)
Reads the categories for a resource identified by the given resource name. |
java.util.List |
readSubCategories(CmsObject cms,
java.lang.String categoryPath,
boolean includeSubCats)
Deprecated. use readCategories(CmsObject, String, boolean, String) instead |
void |
removeResourceFromCategory(CmsObject cms,
java.lang.String resourceName,
CmsCategory category)
Removes a resource identified by the given resource name from the given category. |
void |
removeResourceFromCategory(CmsObject cms,
java.lang.String resourceName,
java.lang.String categoryPath)
Removes a resource identified by the given resource name from the category identified by the given category path. |
void |
repairRelations(CmsObject cms,
CmsResource resource)
Repairs broken category relations. |
void |
repairRelations(CmsObject cms,
java.lang.String resourceName)
Repairs broken category relations. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String CENTRALIZED_REPOSITORY
Constructor Detail |
---|
public CmsCategoryService()
Method Detail |
---|
public static CmsCategoryService getInstance()
public void addResourceToCategory(CmsObject cms, java.lang.String resourceName, CmsCategory category) throws CmsException
The resource has to be locked.
cms
- the current cms contextresourceName
- the site relative path to the resource to addcategory
- the category to add the resource to
CmsException
- if something goes wrongpublic void addResourceToCategory(CmsObject cms, java.lang.String resourceName, java.lang.String categoryPath) throws CmsException
Only the most global category matching the given category path for the given resource will be affected.
The resource has to be locked.
cms
- the current cms contextresourceName
- the site relative path to the resource to addcategoryPath
- the path of the category to add the resource to
CmsException
- if something goes wrongpublic void clearCategoriesForResource(CmsObject cms, java.lang.String resourcePath) throws CmsException
cms
- the cms contextresourcePath
- the resource to reset the categories for
CmsException
- if something goes wrongpublic CmsCategory createCategory(CmsObject cms, CmsCategory parent, java.lang.String name, java.lang.String title, java.lang.String description) throws CmsException
createCategory(CmsObject, CmsCategory, String, String, String, String)
instead
cms
- the current cms contextparent
- the parent category or null
for a new top level categoryname
- the name of the new categorytitle
- the titledescription
- the description
CmsException
- if something goes wrongpublic CmsCategory createCategory(CmsObject cms, CmsCategory parent, java.lang.String name, java.lang.String title, java.lang.String description, java.lang.String referencePath) throws CmsException
Will use the same category repository as the parent if specified, or the closest category repository to the reference path if specified, or the centralized category repository in all other cases.
cms
- the current cms contextparent
- the parent category or null
for a new top level categoryname
- the name of the new categorytitle
- the titledescription
- the descriptionreferencePath
- the reference path for the category repository
CmsException
- if something goes wrongpublic void deleteCategory(CmsObject cms, java.lang.String categoryPath) throws CmsException
deleteCategory(CmsObject, String, String)
instead
The given category path may be a relative path to the centralized categories repository, or an absolute path.
cms
- the current cms contextcategoryPath
- the path of the category to delete
CmsException
- if something goes wrongpublic void deleteCategory(CmsObject cms, java.lang.String categoryPath, java.lang.String referencePath) throws CmsException
Only the most global category matching the given category path for the given resource will be affected.
This method will try to lock the involved resource.
cms
- the current cms contextcategoryPath
- the path of the category to deletereferencePath
- the reference path to find the category repositories
CmsException
- if something goes wrongpublic CmsCategory getCategory(CmsObject cms, CmsResource resource) throws CmsException
cms
- the cms contextresource
- the resource
CmsException
- if something goes wrongpublic CmsCategory getCategory(CmsObject cms, java.lang.String categoryRootPath) throws CmsException
cms
- the cms contextcategoryRootPath
- the category root path
CmsException
- if something goes wrongpublic java.util.List getCategoryRepositories(CmsObject cms, java.lang.String referencePath)
cms
- the cms contextreferencePath
- the reference path
public java.lang.String getRepositoryBaseFolderName(CmsObject cms)
cms
- the cms context
public void moveCategory(CmsObject cms, java.lang.String oldCatPath, java.lang.String newCatPath) throws CmsException
moveCategory(CmsObject, String, String, String)
instead
cms
- the current cms contextoldCatPath
- the path of the category to movenewCatPath
- the new category path
CmsException
- if something goes wrongpublic void moveCategory(CmsObject cms, java.lang.String oldCatPath, java.lang.String newCatPath, java.lang.String referencePath) throws CmsException
This method will keep all categories in their original repository.
cms
- the current cms contextoldCatPath
- the path of the category to movenewCatPath
- the new category pathreferencePath
- the reference path to find the category
CmsException
- if something goes wrongpublic java.util.List readAllCategories(CmsObject cms, boolean includeSubCats) throws CmsException
readCategories(CmsObject, String, boolean, String)
instead
cms
- the current cms contextincludeSubCats
- flag to indicate if sub categories should also be read
CmsCategory
objects
CmsException
- if something goes wrongpublic java.util.List readCategories(CmsObject cms, java.lang.String parentCategoryPath, boolean includeSubCats, java.lang.String referencePath) throws CmsException
cms
- the current cms contextparentCategoryPath
- the path of the parent category to get the categories forincludeSubCats
- if to include all categories, or first level child categories onlyreferencePath
- the reference path to find all the category repositories
CmsCategory
objects
CmsException
- if something goes wrongpublic CmsCategory readCategory(CmsObject cms, java.lang.String categoryPath) throws CmsException
readCategory(CmsObject, String, String)
instead
This method will only lookup in the centralized repository.
cms
- the current cms contextcategoryPath
- the path of the category to read
CmsException
- if something goes wrongpublic CmsCategory readCategory(CmsObject cms, java.lang.String categoryPath, java.lang.String referencePath) throws CmsException
cms
- the current cms contextcategoryPath
- the path of the category to readreferencePath
- the reference path to find all the category repositories
CmsException
- if something goes wrongpublic java.util.List readCategoryResources(CmsObject cms, java.lang.String categoryPath, boolean recursive) throws CmsException
readCategoryResources(CmsObject, String, boolean, String)
instead
cms
- the current cms contextcategoryPath
- the path of the category to read the resources forrecursive
- true
if including sub-categories
CmsResource
objects
CmsException
- if something goes wrongpublic java.util.List readCategoryResources(CmsObject cms, java.lang.String categoryPath, boolean recursive, java.lang.String referencePath) throws CmsException
cms
- the current cms contextcategoryPath
- the path of the category to read the resources forrecursive
- true
if including sub-categoriesreferencePath
- the reference path to find all the category repositories
CmsResource
objects
CmsException
- if something goes wrongpublic java.util.List readResourceCategories(CmsObject cms, java.lang.String resourceName) throws CmsException
cms
- the current cms contextresourceName
- the path of the resource to get the categories for
CmsException
- if something goes wrongpublic java.util.List readSubCategories(CmsObject cms, java.lang.String categoryPath, boolean includeSubCats) throws CmsException
readCategories(CmsObject, String, boolean, String)
instead
cms
- the current cms contextcategoryPath
- the path of the category to get the sub categories forincludeSubCats
- if to include sub-subcategories
CmsCategory
objects
CmsException
- if something goes wrongpublic void removeResourceFromCategory(CmsObject cms, java.lang.String resourceName, CmsCategory category) throws CmsException
The resource has to be previously locked.
cms
- the current cms contextresourceName
- the site relative path to the resource to removecategory
- the category to remove the resource from
CmsException
- if something goes wrongpublic void removeResourceFromCategory(CmsObject cms, java.lang.String resourceName, java.lang.String categoryPath) throws CmsException
The resource has to be previously locked.
cms
- the current cms contextresourceName
- the site relative path to the resource to removecategoryPath
- the path of the category to remove the resource from
CmsException
- if something goes wrongpublic void repairRelations(CmsObject cms, CmsResource resource) throws CmsException
This could be caused by renaming/moving a category folder, or changing the category repositories base folder name.
Also repairs problems when creating/deleting conflicting category folders across several repositories.
The resource has to be previously locked.
cms
- the cms contextresource
- the resource to repair
CmsException
- if something goes wrongpublic void repairRelations(CmsObject cms, java.lang.String resourceName) throws CmsException
This could be caused by renaming/moving a category folder, or changing the category repositories base folder name.
Also repairs problems when creating/deleting conflicting category folders across several repositories.
The resource has to be previously locked.
cms
- the cms contextresourceName
- the site relative path to the resource to repair
CmsException
- if something goes wrong
|
||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |