Interface PageService
- All Known Implementing Classes:
DefaultPageService
PageManager
.- See Also:
-
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.newCreatePageCommand
(PageProvider provider, ContentPermissionProvider permissionProvider, CreateContextProvider contextProvider, ContentEntityObject draft, com.atlassian.user.User user, boolean notifySelf) Retrieve a command for creating a new page for the specified user.newCreatePageCommand
(PageProvider provider, ContentPermissionProvider permissionProvider, CreateContextProvider contextProvider, Draft draft, com.atlassian.user.User user, boolean notifySelf) Retrieve a command for creating a new page for the specified user.newCreatePageCommand
(PageProvider provider, ContentPermissionProvider permissionProvider, CreateContextProvider contextProvider, Page draft, com.atlassian.user.User user, boolean notifySelf) Retrieve a command for creating a new page for the specified user.newCreatePageCommandFromExisting
(PageProvider provider, ContentPermissionProvider permissionProvider, CreateContextProvider contextProvider, ContentEntityObject draft, com.atlassian.user.User user, boolean notifySelf, 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, ContentPermissionProvider permissionProvider, CreateContextProvider contextProvider, Page draft, com.atlassian.user.User user, boolean notifySelf, 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, ContentPermissionProvider permissionProvider, ContentEntityObject draft, com.atlassian.user.User user, boolean notifySelf, 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, ContentPermissionProvider permissionProvider, Draft draft, com.atlassian.user.User user, boolean notifySelf, 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.
-
Method Details
-
newMovePageCommand
MovePageCommand newMovePageCommand(PageLocator sourcePageLocator, PageLocator targetPageLocator, String position) Retrieve a command to perform a simple move operation.- Parameters:
position
- the point describing where the source should be moved to in relation to the target, seeMovePageCommand
- Returns:
- an appropriate command instance
-
newMovePageCommand
Retrieve a command that performs a move operation of a page to a top level of a target space. -
getIdPageLocator
Creates a page locator that can locate a page based on an id. -
getTitleAndSpaceKeyPageLocator
Creates a page locator that can locate a page based on a space key and title. -
getPageVersionLocator
- 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.
-
newSetPageOrderCommand
Retrieve a command to set the order of all children for a supplied parent Page locator.- Parameters:
parentPageLocator
- locator for the parent Page objectchildPageIds
- a list of child page ids
-
newRevertPageOrderCommand
Retrieve a command to clear any existing positions for children of the located Page. -
newDeletePageCommand
Retrieve a command to remove an existing page -
newRemovePageVersionCommand
- 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.
-
newRevertPageCommand
ServiceCommand newRevertPageCommand(PageLocator pageToRevert, int version, String revertComment, boolean revertTitle) Retrieve a command to revert a page -
newCreatePageCommand
ServiceCommand newCreatePageCommand(PageProvider provider, ContentPermissionProvider permissionProvider, CreateContextProvider contextProvider, Page draft, com.atlassian.user.User user, boolean notifySelf) Retrieve a command for creating a new page for the specified user.- Parameters:
provider
- an object that will provide the page to be created.permissionProvider
- provide the permissions to be applied to the created page.contextProvider
- an object that can provide a context to be included when publishing the page creation eventdraft
-user
- the user creating this pagenotifySelf
- a flag indicating whether the user wants to be notified about this page creation.- Returns:
- a CreatePageCommand for creating the specified page.
-
newCreatePageCommand
ServiceCommand newCreatePageCommand(PageProvider provider, ContentPermissionProvider permissionProvider, CreateContextProvider contextProvider, ContentEntityObject draft, com.atlassian.user.User user, boolean notifySelf) Retrieve a command for creating a new page for the specified user.- Parameters:
provider
- an object that will provide the page to be created.permissionProvider
- provide the permissions to be applied to the created page.contextProvider
- an object that can provide a context to be included when publishing the page creation eventdraft
-user
- the user creating this pagenotifySelf
- a flag indicating whether the user wants to be notified about this page creation.- Returns:
- a CreatePageCommand for creating the specified page.
-
newCreatePageCommand
ServiceCommand newCreatePageCommand(PageProvider provider, ContentPermissionProvider permissionProvider, CreateContextProvider contextProvider, Draft draft, com.atlassian.user.User user, boolean notifySelf) Retrieve a command for creating a new page for the specified user.- Parameters:
provider
- an object that will provide the page to be created.permissionProvider
- provide the permissions to be applied to the created page.contextProvider
- an object that can provide a context to be included when publishing the page creation eventdraft
-user
- the user creating this pagenotifySelf
- a flag indicating whether the user wants to be notified about this page creation.- Returns:
- a CreatePageCommand for creating the specified page.
-
newCreatePageCommandFromExisting
ServiceCommand newCreatePageCommandFromExisting(PageProvider provider, ContentPermissionProvider permissionProvider, Draft draft, com.atlassian.user.User user, boolean notifySelf, 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. 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
newCreatePageCommand(PageProvider, ContentPermissionProvider, CreateContextProvider, Draft, User, boolean)
.This logic in this command originates from
CopyPageAction
which differs from that ofCreatePageAction
.I hope that when we get a chance to analyse why
CopyPageAction
has different permission and validation logic we will eventually remove this method.- Parameters:
provider
- an object that will provide the page to be created.permissionProvider
- provide the permissions to be applied to the created page.draft
- the draft associated with the copy, if present.user
- the user creating this pagenotifySelf
- a flag indicating whether the user wants to be notified about this page creation. @return a CreatePageCommand for creating the specified page.spaceProvider
- provide the space where page will be created.
-
newCreatePageCommandFromExisting
ServiceCommand newCreatePageCommandFromExisting(PageProvider provider, ContentPermissionProvider permissionProvider, ContentEntityObject draft, com.atlassian.user.User user, boolean notifySelf, 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. 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
newCreatePageCommand(PageProvider, ContentPermissionProvider, CreateContextProvider, Draft, User, boolean)
.This logic in this command originates from
CopyPageAction
which differs from that ofCreatePageAction
.I hope that when we get a chance to analyse why
CopyPageAction
has different permission and validation logic we will eventually remove this method.- Parameters:
provider
- an object that will provide the page to be created.permissionProvider
- provide the permissions to be applied to the created page.draft
- the draft associated with the copy, if present.user
- the user creating this pagenotifySelf
- a flag indicating whether the user wants to be notified about this page creation. @return a CreatePageCommand for creating the specified page.spaceProvider
- provide the space where page will be created.
-
newCreatePageCommandFromExisting
ServiceCommand newCreatePageCommandFromExisting(PageProvider provider, ContentPermissionProvider permissionProvider, CreateContextProvider contextProvider, ContentEntityObject draft, com.atlassian.user.User user, boolean notifySelf, 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. 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
newCreatePageCommand(PageProvider, ContentPermissionProvider, CreateContextProvider, Draft, User, boolean)
.This logic in this command originates from
CopyPageAction
which differs from that ofCreatePageAction
.I hope that when we get a chance to analyse why
CopyPageAction
has different permission and validation logic we will eventually remove this method.- Parameters:
provider
- an object that will provide the page to be created.permissionProvider
- provide the permissions to be applied to the created page.contextProvider
- an object that provides context for the new page creationdraft
- the draft associated with the copy, if present.user
- the user creating this pagenotifySelf
- a flag indicating whether the user wants to be notified about this page creation. @return a CreatePageCommand for creating the specified page.spaceProvider
- provide the space where page will be created.
-
newCreatePageCommandFromExisting
ServiceCommand newCreatePageCommandFromExisting(PageProvider provider, ContentPermissionProvider permissionProvider, CreateContextProvider contextProvider, Page draft, com.atlassian.user.User user, boolean notifySelf, 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. 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
newCreatePageCommand(PageProvider, ContentPermissionProvider, CreateContextProvider, Draft, User, boolean)
.This logic in this command originates from
CopyPageAction
which differs from that ofCreatePageAction
.I hope that when we get a chance to analyse why
CopyPageAction
has different permission and validation logic we will eventually remove this method.- Parameters:
provider
- an object that will provide the page to be created.permissionProvider
- provide the permissions to be applied to the created page.contextProvider
- an object that provides context for the new page creationdraft
- the draft associated with the copy, if present.user
- the user creating this pagenotifySelf
- a flag indicating whether the user wants to be notified about this page creation. @return a CreatePageCommand for creating the specified page.spaceProvider
- provide the space where page will be created.
-