Class DefaultPageService
- All Implemented Interfaces:
PageService
-
Constructor Summary
ConstructorsConstructorDescriptionDefaultPageService(PageManager pageManager, PermissionManager permissionManager, ContentPermissionManager contentPermissionManager, DraftService draftService, com.atlassian.event.api.EventPublisher eventPublisher, LabelManager labelManager, DraftsTransitionHelper draftsTransitionHelper, MovePageCommandHelper movePageCommandHelper) -
Method Summary
Modifier and TypeMethodDescriptiongetIdPageLocator(long pageId) Creates a page locator that can locate a page based on an id.getPageVersionLocator(long pageId, int version) getTitleAndSpaceKeyPageLocator(String spaceKey, String title) Creates a page locator that can locate a page based on a space key and title.newConvertPageToBlogPostCommand(PageLocator pageLocator, SpaceLocator targetSpaceLocator) This converts a page into a blogpostnewCreatePageCommand(PageProvider provider, CreateContextProvider contextProvider, ContentEntityObject draft, ConfluenceUser user) Retrieve a command for creating a new page for the specified user.newCreatePageCommand(PageProvider provider, CreateContextProvider contextProvider, Draft draft, ConfluenceUser user) Retrieve a command for creating a new page for the specified user.newCreatePageCommand(PageProvider provider, CreateContextProvider contextProvider, Page draft, ConfluenceUser user) Retrieve a command for creating a new page for the specified user.newCreatePageCommandFromExisting(PageProvider pageProvider, CreateContextProvider contextProvider, ContentEntityObject draft, ConfluenceUser user, SpaceProvider spaceProvider) This is not a public API method! Creating a page from an existing page has different authorisation and validation logic from creating a brand new page.newCreatePageCommandFromExisting(PageProvider pageProvider, CreateContextProvider contextProvider, Page draft, ConfluenceUser user, SpaceProvider spaceProvider) This is not a public API method! Creating a page from an existing page has different authorisation and validation logic from creating a brand new page.newCreatePageCommandFromExisting(PageProvider provider, ContentEntityObject draft, ConfluenceUser user, SpaceProvider spaceProvider) This is not a public API method! Creating a page from an existing page has different authorisation and validation logic from creating a brand new page.newCreatePageCommandFromExisting(PageProvider provider, Draft draft, ConfluenceUser user, SpaceProvider spaceProvider) This is not a public API method! Creating a page from an existing page has different authorisation and validation logic from creating a brand new page.newDeletePageCommand(PageLocator pageLocator) Retrieve a command to remove an existing pagenewMovePageCommand(PageLocator sourcePageLocator, PageLocator targetPageLocator, String position) Retrieve a command to perform a simple move operation.newMovePageCommand(PageLocator sourcePageLocator, SpaceLocator targetSpaceLocator) Retrieve a command that performs a move operation of a page to a top level of a target space.newRemovePageVersionCommand(PageLocator pageLocator) newRevertPageCommand(PageLocator pageToRevert, int version, String revertComment, boolean revertTitle) Retrieve a command to revert a pagenewRevertPageOrderCommand(PageLocator parentPageLocator) Retrieve a command to clear any existing positions for children of the located Page.newSetPageOrderCommand(PageLocator parentPageLocator, List<Long> childPageIds) Retrieve a command to set the order of all children for a supplied parent Page locator.
-
Constructor Details
-
DefaultPageService
public DefaultPageService(PageManager pageManager, PermissionManager permissionManager, ContentPermissionManager contentPermissionManager, DraftService draftService, com.atlassian.event.api.EventPublisher eventPublisher, LabelManager labelManager, DraftsTransitionHelper draftsTransitionHelper, MovePageCommandHelper movePageCommandHelper) - Since:
- 10.0
-
-
Method Details
-
newMovePageCommand
public MovePageCommand newMovePageCommand(PageLocator sourcePageLocator, PageLocator targetPageLocator, String position) Description copied from interface:PageServiceRetrieve a command to perform a simple move operation.- Specified by:
newMovePageCommandin interfacePageService- Parameters:
position- the point describing where the source should be moved to in relation to the target, seeMovePageCommand- Returns:
- an appropriate command instance
-
newMovePageCommand
public MovePageCommand newMovePageCommand(PageLocator sourcePageLocator, SpaceLocator targetSpaceLocator) Description copied from interface:PageServiceRetrieve a command that performs a move operation of a page to a top level of a target space.- Specified by:
newMovePageCommandin interfacePageService
-
newSetPageOrderCommand
public ServiceCommand newSetPageOrderCommand(PageLocator parentPageLocator, List<Long> childPageIds) Description copied from interface:PageServiceRetrieve a command to set the order of all children for a supplied parent Page locator.- Specified by:
newSetPageOrderCommandin interfacePageService- Parameters:
parentPageLocator- locator for the parent Page objectchildPageIds- a list of child page ids
-
newRevertPageOrderCommand
Description copied from interface:PageServiceRetrieve a command to clear any existing positions for children of the located Page.- Specified by:
newRevertPageOrderCommandin interfacePageService
-
newDeletePageCommand
Description copied from interface:PageServiceRetrieve a command to remove an existing page- Specified by:
newDeletePageCommandin interfacePageService
-
newRemovePageVersionCommand
- Specified by:
newRemovePageVersionCommandin interfacePageService- Parameters:
pageLocator- a page locator that identifies either the historical version of a page directly (e.g.IdPageLocator) or the page and a version (e.g.IdAndVersionPageLocator).- Returns:
- a command to remove a version of a page.
-
getIdPageLocator
Description copied from interface:PageServiceCreates a page locator that can locate a page based on an id.- Specified by:
getIdPageLocatorin interfacePageService
-
getTitleAndSpaceKeyPageLocator
Description copied from interface:PageServiceCreates a page locator that can locate a page based on a space key and title.- Specified by:
getTitleAndSpaceKeyPageLocatorin interfacePageService
-
getPageVersionLocator
- Specified by:
getPageVersionLocatorin interfacePageService- Parameters:
pageId- the id of the original version of the pageversion- a historical version, where 1 refers to version 1.- Returns:
- a page locator that will locate a historical version of a page.
-
newRevertPageCommand
public ServiceCommand newRevertPageCommand(PageLocator pageToRevert, int version, String revertComment, boolean revertTitle) Description copied from interface:PageServiceRetrieve a command to revert a page- Specified by:
newRevertPageCommandin interfacePageService
-
newCreatePageCommand
public ServiceCommand newCreatePageCommand(PageProvider provider, CreateContextProvider contextProvider, Page draft, ConfluenceUser user) Description copied from interface:PageServiceRetrieve a command for creating a new page for the specified user.- Specified by:
newCreatePageCommandin interfacePageService- Parameters:
provider- an object that will provide the page to be created.contextProvider- an object that can provide a context to be included when publishing the page creation eventuser- the user creating this page- Returns:
- a CreatePageCommand for creating the specified page.
-
newCreatePageCommand
public ServiceCommand newCreatePageCommand(PageProvider provider, CreateContextProvider contextProvider, ContentEntityObject draft, ConfluenceUser user) Description copied from interface:PageServiceRetrieve a command for creating a new page for the specified user.- Specified by:
newCreatePageCommandin interfacePageService- Parameters:
provider- an object that will provide the page to be created.contextProvider- an object that can provide a context to be included when publishing the page creation eventuser- the user creating this page- Returns:
- a CreatePageCommand for creating the specified page.
-
newCreatePageCommand
public ServiceCommand newCreatePageCommand(PageProvider provider, CreateContextProvider contextProvider, Draft draft, ConfluenceUser user) Description copied from interface:PageServiceRetrieve a command for creating a new page for the specified user.- Specified by:
newCreatePageCommandin interfacePageService- Parameters:
provider- an object that will provide the page to be created.contextProvider- an object that can provide a context to be included when publishing the page creation eventuser- the user creating this page- Returns:
- a CreatePageCommand for creating the specified page.
-
newCreatePageCommandFromExisting
public ServiceCommand newCreatePageCommandFromExisting(PageProvider provider, Draft draft, ConfluenceUser user, SpaceProvider spaceProvider) Description copied from interface:PageServiceThis is not a public API method! Creating a page from an existing page has different authorisation and validation logic from creating a brand new page. This method allows creation of a command that implements that difference in logic. Apart from that the command created here will have the same logic as that created by
PageService.newCreatePageCommand(PageProvider, CreateContextProvider, Draft, ConfluenceUser).This logic in this command originates from
CopyPageActionwhich differs from that ofCreatePageAction.I hope that when we get a chance to analyse why
CopyPageActionhas different permission and validation logic we will eventually remove this method.- Specified by:
newCreatePageCommandFromExistingin interfacePageService- Parameters:
provider- an object that will provide the page to be created.draft- the draft associated with the copy, if present.user- the user creating this pagespaceProvider- provide the space where page will be created.
-
newCreatePageCommandFromExisting
public ServiceCommand newCreatePageCommandFromExisting(PageProvider provider, ContentEntityObject draft, ConfluenceUser user, SpaceProvider spaceProvider) Description copied from interface:PageServiceThis is not a public API method! Creating a page from an existing page has different authorisation and validation logic from creating a brand new page. This method allows creation of a command that implements that difference in logic. Apart from that the command created here will have the same logic as that created by
PageService.newCreatePageCommand(PageProvider, CreateContextProvider, Draft, ConfluenceUser).This logic in this command originates from
CopyPageActionwhich differs from that ofCreatePageAction.I hope that when we get a chance to analyse why
CopyPageActionhas different permission and validation logic we will eventually remove this method.- Specified by:
newCreatePageCommandFromExistingin interfacePageService- Parameters:
provider- an object that will provide the page to be created.draft- the draft associated with the copy, if present.user- the user creating this pagespaceProvider- provide the space where page will be created.
-
newCreatePageCommandFromExisting
public ServiceCommand newCreatePageCommandFromExisting(PageProvider pageProvider, CreateContextProvider contextProvider, ContentEntityObject draft, ConfluenceUser user, SpaceProvider spaceProvider) Description copied from interface:PageServiceThis is not a public API method! Creating a page from an existing page has different authorisation and validation logic from creating a brand new page. This method allows creation of a command that implements that difference in logic. Apart from that the command created here will have the same logic as that created by
PageService.newCreatePageCommand(PageProvider, CreateContextProvider, Draft, ConfluenceUser).This logic in this command originates from
CopyPageActionwhich differs from that ofCreatePageAction.I hope that when we get a chance to analyse why
CopyPageActionhas different permission and validation logic we will eventually remove this method.- Specified by:
newCreatePageCommandFromExistingin interfacePageService- Parameters:
pageProvider- an object that will provide the page to be created.contextProvider- an object that provides context for the new page creationdraft- the draft associated with the copy, if present.user- the user creating this pagespaceProvider- provide the space where page will be created.
-
newCreatePageCommandFromExisting
public ServiceCommand newCreatePageCommandFromExisting(PageProvider pageProvider, CreateContextProvider contextProvider, Page draft, ConfluenceUser user, SpaceProvider spaceProvider) Description copied from interface:PageServiceThis is not a public API method! Creating a page from an existing page has different authorisation and validation logic from creating a brand new page. This method allows creation of a command that implements that difference in logic. Apart from that the command created here will have the same logic as that created by
PageService.newCreatePageCommand(PageProvider, CreateContextProvider, Draft, ConfluenceUser).This logic in this command originates from
CopyPageActionwhich differs from that ofCreatePageAction.I hope that when we get a chance to analyse why
CopyPageActionhas different permission and validation logic we will eventually remove this method.- Specified by:
newCreatePageCommandFromExistingin interfacePageService- Parameters:
pageProvider- an object that will provide the page to be created.contextProvider- an object that provides context for the new page creationdraft- the draft associated with the copy, if present.user- the user creating this pagespaceProvider- provide the space where page will be created.
-
newConvertPageToBlogPostCommand
public ServiceCommand newConvertPageToBlogPostCommand(PageLocator pageLocator, SpaceLocator targetSpaceLocator) Description copied from interface:PageServiceThis converts a page into a blogpost
- Specified by:
newConvertPageToBlogPostCommandin interfacePageService- Parameters:
pageLocator- Page locator for the page to be convertedtargetSpaceLocator- Space locator for the destination space
-