Class ContentServiceImpl
- All Implemented Interfaces:
ContentService
ContentService. Contrast with the RemoteContentService.-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from interface com.atlassian.confluence.api.service.content.ContentService
ContentService.ContentFetcher, ContentService.ContentFinder, ContentService.ParameterContentFinder, ContentService.SingleContentFetcher, ContentService.Validator -
Field Summary
Fields inherited from interface com.atlassian.confluence.api.service.content.ContentService
DEFAULT_EXPANSIONS -
Constructor Summary
ConstructorsConstructorDescriptionContentServiceImpl(PermissionManager permissionManager, ContentFactory contentFactory, ContentFinderFactory contentFinderFactory, ContentTrashService trashService, ApiSupportProvider apiSupportProvider, ContentEntityManagerInternal contentEntityManager, UserChecker userChecker, Supplier<TouchRelationSupport> touchRelationSupportSupplier, LicenseService licenseService) -
Method Summary
Modifier and TypeMethodDescriptionCreate a piece of content.Create a piece of content.voidRemoves a piece of Content from the system.Create a ContentFinder for locating content, the expansions will be applied to each piece of content that matches the finder.voidsetPermissionManager(PermissionManager permissionManager) Updates a piece of content.Get the validator view of the ContentService.
-
Constructor Details
-
ContentServiceImpl
public ContentServiceImpl(PermissionManager permissionManager, ContentFactory contentFactory, ContentFinderFactory contentFinderFactory, ContentTrashService trashService, ApiSupportProvider apiSupportProvider, ContentEntityManagerInternal contentEntityManager, UserChecker userChecker, Supplier<TouchRelationSupport> touchRelationSupportSupplier, LicenseService licenseService)
-
-
Method Details
-
find
Description copied from interface:ContentServiceCreate a ContentFinder for locating content, the expansions will be applied to each piece of content that matches the finder. Content will be retrieved by using the fetch methods on the returned ContentFinder.For example, to fetch the first 50 blog posts in the DEV Space :
contentService.find() .withSpace("DEV") .withType(ContentType.BLOG_POST) .fetchMany(new SimplePageRequest(0,50);- Specified by:
findin interfaceContentService- Returns:
-
create
Description copied from interface:ContentServiceCreate a piece of content.Valid
ContentRepresentations for theContentBodycan be found in the documentation on theContentBodyConversionService.- Specified by:
createin interfaceContentService- Parameters:
newContent- the content to create- Returns:
- the content created
- Throws:
ServiceException- if the content cannot be created
-
create
Description copied from interface:ContentServiceCreate a piece of content.Valid
ContentRepresentations for theContentBodycan be found in the documentation on theContentBodyConversionService.- Specified by:
createin interfaceContentService- Parameters:
newContent- the content to createexpansions- the particular expansions will be applied to the new created content- Returns:
- the content created
- Throws:
ServiceException- if the content cannot be created
-
update
Description copied from interface:ContentServiceUpdates a piece of content.Valid
ContentRepresentations for theContentBodycan be found in the documentation on theContentBodyConversionService.Content with an existing status of
ContentStatus.TRASHEDthat is updated to have statusContentStatus.CURRENTwill be restored from the trash, provided that the version in the supplied Content is correct and the user has permission to perform the restore.
Any other changes to the Content being restored will be discarded.- Specified by:
updatein interfaceContentService- Parameters:
updatedContent- the updatedContent- Returns:
- the updated content after being persisted
- Throws:
ServiceException
-
delete
Description copied from interface:ContentServiceRemoves a piece of Content from the system.The way that this method behaves depends on whether the Content being deleted supports trashing, and its current status:
-
Trashable content currently includes Pages and Blogpost, which can have two statuses relevant here:
current, in which case calling this method will trash the contenttrashed, in which case calling this method will fail. Clients should useContentTrashService.purge(Content)to permanently delete trashed content.
-
Non-trashable content (e.g. Comments, Attachments) will be immediately and permanently purged from the
system, without being updated to have
trashedstatus.
The methods
ContentTrashService.trash(Content)andContentTrashService.purge(Content)can be used for content that is known to support trashing.- Specified by:
deletein interfaceContentService- Parameters:
content- the content to remove- Throws:
ServiceException- if the content cannot be found, or cannot be deleted
-
Trashable content currently includes Pages and Blogpost, which can have two statuses relevant here:
-
validator
Description copied from interface:ContentServiceGet the validator view of the ContentService.- Specified by:
validatorin interfaceContentService- Returns:
- a Validator that can be used to validate service requests.
-
setPermissionManager
-