Package com.atlassian.confluence.content
Interface CustomContentManager
- All Superinterfaces:
ContentEntityManager
- All Known Implementing Classes:
DefaultCustomContentManager
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic enum
static enum
-
Field Summary
Fields inherited from interface com.atlassian.confluence.core.ContentEntityManager
ITERATE_ALL
-
Method Summary
Modifier and TypeMethodDescriptionlong
countChildrenOfType
(CustomContentEntityObject content, String contentModuleKey) Get the total number of children of a piece of content with the given type@NonNull Iterator<CustomContentEntityObject>
findAllChildren
(CustomContentEntityObject content) Get an iterator of all children of a piece of content.@NonNull Iterator<CustomContentEntityObject>
findAllContainedOfType
(long containerContentId, String pluginModuleKey) Get an iterator of contained content of a piece of content with a given type.@NonNull Collection<CustomContentEntityObject>
findAllInSpace
(Space space) Deprecated.Since 4.2.<T> @NonNull Iterator<T>
findByQuery
(ContentQuery<T> query, int offset, int maxResults) Get the results of a query for CustomContentEntityObjectsdefault <T> @NonNull PageResponse<T>
findByQuery
(ContentQuery<T> query, LimitedRequest request, Predicate<T> predicate) Get the results of a query for CustomContentEntityObjects<T> @NonNull PageResponse<T>
findByQueryAndFilter
(ContentQuery<T> query, boolean cacheable, LimitedRequest request, Predicate<T> predicate) Deprecated.since 8.7@NonNull Iterator<CustomContentEntityObject>
findChildrenOfType
(CustomContentEntityObject content, String contentModuleKey, int offset, int maxResults, CustomContentManager.SortField sortField, CustomContentManager.SortOrder sortOrder) Get an iterator of children of a piece of content with a given type.@NonNull Iterator<CustomContentEntityObject>
findCurrentInSpace
(Space space, String contentModuleKey, int offset, int maxResults, CustomContentManager.SortField sortField, CustomContentManager.SortOrder sortOrder) Get an iterator of all the current, non-deleted content of the given type in the given space.<T> @Nullable T
findFirstObjectByQuery
(ContentQuery<T> query) Find the first result of a query for CustomContentEntityObjects.int
findTotalInSpace
(Space space, String contentModuleKey) Get the total count of current, non-deleted content of the given type in the given space.@Nullable CustomContentEntityObject
getById
(long id) Find a single CustomContentEntityObject by its id@NonNull PageResponse<CustomContentEntityObject>
getChildrenOfTypeAndFilter
(ContentEntityObject entity, String contentModuleKey, LimitedRequest limitedRequest, Expansions expansions, Depth depth, Predicate<? super CustomContentEntityObject> predicate) Returns the children of a CustomContentEntityObject, limited to the pagination requested.@NonNull CustomContentEntityObject
newPluginContentEntityObject
(String contentModuleKey) Create a new CustomContentEntityObject for the given module.<T> @NonNull List<T>
queryForList
(ContentQuery<T> query) Get the results of a query for CustomContentEntityObjects<T> @NonNull List<T>
queryForList
(ContentQuery<T> query, int offset, int maxResults) Get the results of a query for CustomContentEntityObjectsvoid
removeAllInSpace
(String contentModuleKey, Space space) Remove all plugin content of a particular type from a given space.void
removeAllPluginContent
(String contentModuleKey) Remove all plugin content of a particular typevoid
Remove all plugin content (of all types) from a given space.void
saveContentEntity
(ContentEntityObject obj, @Nullable ContentEntityObject origObj, @Nullable SaveContext saveContext) In order to create a history for this object, we need to pass in the modified as well as the original version of the object.@NonNull CustomContentEntityObject
updatePluginModuleKey
(CustomContentEntityObject content, String pluginModuleKey) Update the type of an existing CustomContentEntityObject with the specified module key.Methods inherited from interface com.atlassian.confluence.core.ContentEntityManager
getContributionStatusByUser, getNextVersion, getOtherVersion, getPageAndBlogPostsVersionsLastEditedByUser, getPageAndBlogPostsVersionsLastEditedByUserIncludingDrafts, getPreviousVersion, getRecentlyAddedEntities, getRecentlyModifiedEntities, getRecentlyModifiedEntitiesForUser, getRecentlyModifiedForChangeDigest, getVersionHistorySummaries, getVersionsLastEditedByUser, refreshContentEntity, removeContentEntity, removeHistoricalVersion, revertContentEntityBackToVersion, saveContentEntity, saveNewVersion, saveNewVersion
-
Method Details
-
saveContentEntity
void saveContentEntity(ContentEntityObject obj, @Nullable ContentEntityObject origObj, @Nullable SaveContext saveContext) Description copied from interface:ContentEntityManager
In order to create a history for this object, we need to pass in the modified as well as the original version of the object.- Specified by:
saveContentEntity
in interfaceContentEntityManager
saveContext
- - aSaveContext
holding additional parameters for the manager to use when saving.
-
newPluginContentEntityObject
Create a new CustomContentEntityObject for the given module. This method will ensure that the plugin delegate and various necessary arguments are set.- Parameters:
contentModuleKey
- the module complete key of the content's ContentAdapter module- Returns:
- a blank entity object for that plugin
-
updatePluginModuleKey
@NonNull CustomContentEntityObject updatePluginModuleKey(CustomContentEntityObject content, String pluginModuleKey) Update the type of an existing CustomContentEntityObject with the specified module key.- Parameters:
pluginModuleKey
- the module complete key of the content's ContentAdapter module- Returns:
- a blank entity object for that plugin
-
getById
Find a single CustomContentEntityObject by its id- Specified by:
getById
in interfaceContentEntityManager
- Parameters:
id
- the ID of the entity to retrieve- Returns:
- the entity, or null if no such entity exists.
-
findByQuery
Get the results of a query for CustomContentEntityObjects- Parameters:
query
- the query to performoffset
- the first result to returnmaxResults
- the maximum number of results to return- Returns:
- an iterator of the results of the query
-
queryForList
Get the results of a query for CustomContentEntityObjects- Parameters:
query
- the query to performoffset
- the first result to returnmaxResults
- the maximum number of results to return- Returns:
- a list of the results of the query
- Since:
- 7.14
-
queryForList
Get the results of a query for CustomContentEntityObjects- Parameters:
query
- the query to perform- Returns:
- a list of the results of the query
- Since:
- 7.17
-
findByQuery
default <T> @NonNull PageResponse<T> findByQuery(ContentQuery<T> query, LimitedRequest request, Predicate<T> predicate) Get the results of a query for CustomContentEntityObjects- Parameters:
query
- the query to performcacheable
- whether the results for the given query can be cachedrequest
- the limited pagination requestpredicate
- the filter to apply to the results- Returns:
- a PageResponse of the results of the query, after filtering with the given predicate
- Since:
- 7.0.1
-
findByQueryAndFilter
@Deprecated <T> @NonNull PageResponse<T> findByQueryAndFilter(ContentQuery<T> query, boolean cacheable, LimitedRequest request, Predicate<T> predicate) Deprecated.since 8.7Get the results of a query for CustomContentEntityObjects- Parameters:
query
- the query to performcacheable
- whether the results for the given query can be cachedrequest
- the limited pagination requestpredicate
- the filter to apply to the results- Returns:
- a PageResponse of the results of the query, after filtering with the given predicate
- Since:
- 7.0.1
-
findFirstObjectByQuery
Find the first result of a query for CustomContentEntityObjects. This is a convenience method for queries where we expect to only retrieve a single result.- Parameters:
query
- the query to perform- Returns:
- the first result of the query, or null if no results are returned
-
findTotalInSpace
Get the total count of current, non-deleted content of the given type in the given space.- Parameters:
space
- the space to count content incontentModuleKey
- the plugin module complete key of the content to be searched for- Returns:
- the total number of non-deleted, non-historical versions of content of the given type in that space
-
findCurrentInSpace
@NonNull Iterator<CustomContentEntityObject> findCurrentInSpace(Space space, String contentModuleKey, int offset, int maxResults, CustomContentManager.SortField sortField, CustomContentManager.SortOrder sortOrder) Get an iterator of all the current, non-deleted content of the given type in the given space.- Parameters:
space
- the space to retrieve content fromcontentModuleKey
- the plugin module complete key of the content to be searched forsortField
- what field to sort the content onsortOrder
- which direction to sort the content in- Returns:
- an iterator of the non-deleted, non-historical versions of content of the given type in that space
-
countChildrenOfType
Get the total number of children of a piece of content with the given type- Parameters:
content
- the content to look for children ofcontentModuleKey
- the module key for the type of child to look for- Returns:
- the number of available children of that type
-
findAllContainedOfType
@NonNull Iterator<CustomContentEntityObject> findAllContainedOfType(long containerContentId, String pluginModuleKey) Get an iterator of contained content of a piece of content with a given type.- Parameters:
containerContentId
- the content id of the content to look contained forpluginModuleKey
- the module key of the type of contained to look for
-
findChildrenOfType
@NonNull Iterator<CustomContentEntityObject> findChildrenOfType(CustomContentEntityObject content, String contentModuleKey, int offset, int maxResults, CustomContentManager.SortField sortField, CustomContentManager.SortOrder sortOrder) Get an iterator of children of a piece of content with a given type.- Parameters:
content
- the content to look for children ofcontentModuleKey
- the module key of the type of child to look foroffset
- the offset of the first resultmaxResults
- the maximum total results to returnsortField
- what field to sort the content onsortOrder
- which direction to sort the content in
-
getChildrenOfTypeAndFilter
@NonNull PageResponse<CustomContentEntityObject> getChildrenOfTypeAndFilter(ContentEntityObject entity, String contentModuleKey, LimitedRequest limitedRequest, Expansions expansions, Depth depth, Predicate<? super CustomContentEntityObject> predicate) Returns the children of a CustomContentEntityObject, limited to the pagination requested. This method will return children that have the entity as a container, and children that have the entity as a parent.- Parameters:
entity
- the content to look for children ofcontentModuleKey
- the module key of the type of child to look forlimitedRequest
- the pagination requestedexpansions
- the expansions applied to resultsdepth
- the depth to return children topredicate
- predicates used to filter the CustomContentEntityObjects- Returns:
- Since:
- 9.0
-
findAllChildren
Get an iterator of all children of a piece of content.- Parameters:
content
- the content to look for children of
-
removeAllInSpace
Remove all plugin content of a particular type from a given space.- Parameters:
contentModuleKey
- the plugin module complete key of the content to be searched forspace
- the space from which to delete all content of that type
-
removeAllPluginContentInSpace
Remove all plugin content (of all types) from a given space. This usually happens when a space is removed. Plugins wishing to perform extra work on space removal should listen for the PluginContentWillBeRemovedForSpaceEvent event.- Parameters:
space
-
-
removeAllPluginContent
Remove all plugin content of a particular type- Parameters:
contentModuleKey
- the plugin module complete key of the content to be searched for
-
findAllInSpace
Deprecated.Since 4.2. No replacement.This method is required for space exports to work properly. Which is a good sign that space exports are evil and need to be rewritten. If you call it from anywhere else, I will kill a puppy.- Parameters:
space
- a space- Returns:
- all plugin content within that space
-