Package com.atlassian.confluence.spaces
Interface SpaceManager
-
- All Known Subinterfaces:
SpaceManagerInternal
- All Known Implementing Classes:
DefaultSpaceManager
@ParametersAreNonnullByDefault @Transactional public interface SpaceManager
-
-
Field Summary
Fields Modifier and Type Field Description static String
GLOBAL_LOGO
-
Method Summary
All Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method Description void
archiveSpace(Space space)
Archive the space.@NonNull Space
createPersonalSpace(String name, @Nullable String description, com.atlassian.user.User owner)
Creates a personal space.@NonNull Space
createPrivatePersonalSpace(String name, @Nullable String description, com.atlassian.user.User owner)
Create a personal Space for which only the creator has any permissions@NonNull Space
createPrivateSpace(String key, String name, @Nullable String description, com.atlassian.user.User creator)
Creates a Space for which only the creator has any permissions@NonNull Space
createSpace(Space space)
Deprecated.since 6.10.0, use {#link #createSpace(String key, String name, String description, User creator)}@NonNull Space
createSpace(String key, String name, @Nullable String description, com.atlassian.user.User creator)
void
ensureSpaceDescriptionExists(Space space)
If the given Space does not have a description, creates one for it, and saves it.long
findPageTotal(Space space)
Get the number of pages in a space.@NonNull Collection<String>
getAllSpaceKeys(SpaceStatus status)
Get the space keys of all spaces with the given status.@NonNull List<Space>
getAllSpaces()
Deprecated.since 7.3.0, useSpaceService.find(Expansion...)
in plugins andSpaceManagerInternal
in core where applicable@NonNull List<Space>
getAllSpaces(SpacesQuery query)
Deprecated.since 7.3.0, useSpaceService.find(Expansion...)
in plugins andSpaceManagerInternal
in core where applicable@NonNull List
getAuthoredSpacesByUser(String username)
@NonNull SpaceLogo
getLogoForGlobalcontext()
@NonNull SpaceLogo
getLogoForSpace(@Nullable String spaceKey)
int
getNumberOfBlogPosts(Space space)
Get the number of blog posts in a space.@Nullable Space
getPersonalSpace(@Nullable ConfluenceUser user)
Deprecated.since 7.3.0, useSpaceService.find(Expansion...)
in plugins andSpaceManagerInternal
in core where applicable@Nullable Space
getSpace(long id)
Deprecated.since 7.3.0, useSpaceService.find(Expansion...)
in plugins andSpaceManagerInternal
in core where applicable@Nullable Space
getSpace(@Nullable String spaceKey)
Deprecated.since 7.3.0, useSpaceService.find(Expansion...)
in plugins andSpaceManagerInternal
in core where applicable@NonNull List<com.atlassian.user.User>
getSpaceAdmins(Space spaces)
Returns a list of administrators for a given space, sorted by full name@NonNull List<com.atlassian.user.User>
getSpaceAdmins(Space spaces, int limit)
Returns a list of administrators for a given space, sorted by full name, up to the size limit@Nullable String
getSpaceFromPageId(long pageId)
Get the key for a space from its pageId in a single db call@NonNull ListBuilder<Space>
getSpaces(SpacesQuery query)
Deprecated.since 7.3.0, useSpaceService.find(Expansion...)
in plugins andSpaceManagerInternal
in core where applicable@NonNull List
getSpacesContainingCommentsBy(String username)
@NonNull List
getSpacesContainingPagesEditedBy(String username)
ReturnsPage
s that are either created or edited by the specified user@NonNull List<Space>
getSpacesCreatedAfter(Date creationDate)
@NonNull Boolean
removeSpace(Space space)
Removes a space with a given space.@NonNull Boolean
removeSpace(String spaceKey)
Removes a space with a given spaceKey (case sensitive).@NonNull Boolean
removeSpace(String spaceKey, com.atlassian.core.util.ProgressMeter progressMeter)
Removes a space with a given spaceKey (case sensitive).void
removeSpacesInGroup(SpaceGroup spaceGroup)
Deprecated.since 5.9.void
saveSpace(Space space)
void
saveSpace(Space space, Space originalSpace)
void
unarchiveSpace(Space space)
Un-archive the space.
-
-
-
Field Detail
-
GLOBAL_LOGO
static final String GLOBAL_LOGO
- See Also:
- Constant Field Values
-
-
Method Detail
-
createSpace
@NonNull Space createSpace(String key, String name, @Nullable String description, com.atlassian.user.User creator)
-
createPersonalSpace
@NonNull Space createPersonalSpace(String name, @Nullable String description, com.atlassian.user.User owner)
Creates a personal space. The difference to a normal space are that this space will have a type "personal" and the user passed to this space should not be the creator, but is the owner of the space.
-
createPrivatePersonalSpace
@NonNull Space createPrivatePersonalSpace(String name, @Nullable String description, com.atlassian.user.User owner)
Create a personal Space for which only the creator has any permissions
-
createSpace
@Deprecated @NonNull Space createSpace(Space space)
Deprecated.since 6.10.0, use {#link #createSpace(String key, String name, String description, User creator)}
-
createPrivateSpace
@NonNull Space createPrivateSpace(String key, String name, @Nullable String description, com.atlassian.user.User creator)
Creates a Space for which only the creator has any permissions
-
saveSpace
void saveSpace(Space space)
-
removeSpace
@Transactional(propagation=REQUIRES_NEW) @NonNull Boolean removeSpace(Space space)
Removes a space with a given space.Delegates to
removeSpace(String, com.atlassian.core.util.ProgressMeter)
.- Parameters:
space
- the key of the space to remove- Returns:
- true if the space was successfully removed.
-
removeSpace
@Transactional(propagation=REQUIRES_NEW) @NonNull Boolean removeSpace(String spaceKey)
Removes a space with a given spaceKey (case sensitive).Delegates to
removeSpace(String, com.atlassian.core.util.ProgressMeter)
.- Parameters:
spaceKey
- the key of the space to remove- Returns:
- true if the space was successfully removed.
- Since:
- 7.14.0
-
removeSpace
@Transactional(propagation=REQUIRES_NEW) @NonNull Boolean removeSpace(String spaceKey, com.atlassian.core.util.ProgressMeter progressMeter)
Removes a space with a given spaceKey (case sensitive). This must be passed a progress monitor which will be updated with internationalised status while the space is being removed. Ideally this should be done from a long running task, since it can be very slow and it clears the current Hibernate session.- Parameters:
spaceKey
- the key of the space to removeprogressMeter
- will be updated with status messages and percentage completed. Not Null.- Returns:
- true if the space was successfully removed.
- Since:
- 4.2
-
removeSpacesInGroup
@Deprecated @Transactional(propagation=REQUIRES_NEW) void removeSpacesInGroup(SpaceGroup spaceGroup)
Deprecated.since 5.9.SpaceGroup
and related classes likeSpaceGroupManager
andSpaceGroupComparator
will be removed. Please do not use them.
-
getSpace
@Deprecated @Transactional(readOnly=true) @Nullable Space getSpace(long id)
Deprecated.since 7.3.0, useSpaceService.find(Expansion...)
in plugins andSpaceManagerInternal
in core where applicableRetrieve a space by its ID. The space can be of any type.- Parameters:
id
- the ID of the space- Returns:
- the space, or null if no space exists with that id.
-
getSpace
@Deprecated @Transactional(readOnly=true) @Nullable Space getSpace(@Nullable String spaceKey)
Deprecated.since 7.3.0, useSpaceService.find(Expansion...)
in plugins andSpaceManagerInternal
in core where applicableRetrieve a space by its key. The space can be of any type.- Parameters:
spaceKey
- the space key of the space to retrieve- Returns:
- the space, or null if no space exists with that key
-
getPersonalSpace
@Deprecated @Transactional(readOnly=true) @Nullable Space getPersonalSpace(@Nullable ConfluenceUser user)
Deprecated.since 7.3.0, useSpaceService.find(Expansion...)
in plugins andSpaceManagerInternal
in core where applicableGet the personal space of the given user.- Parameters:
user
- the user to get the space for. If user is null, the method will return null- Returns:
- the personal space of the user if one exists, otherwise null.
- Since:
- 5.2
-
getAllSpaces
@Deprecated @Transactional(readOnly=true) @NonNull List<Space> getAllSpaces()
Deprecated.since 7.3.0, useSpaceService.find(Expansion...)
in plugins andSpaceManagerInternal
in core where applicableFinds all spaces in Confluence, of any type, sorted alphabetically by space name.- Returns:
- List of spaces
-
getSpacesContainingPagesEditedBy
@Transactional(readOnly=true) @NonNull List getSpacesContainingPagesEditedBy(String username)
ReturnsPage
s that are either created or edited by the specified user- Parameters:
username
- a username- Returns:
Page
s that are either created or edited by the specified user
-
getSpacesContainingCommentsBy
@Transactional(readOnly=true) @NonNull List getSpacesContainingCommentsBy(String username)
-
getAuthoredSpacesByUser
@Transactional(readOnly=true) @NonNull List getAuthoredSpacesByUser(String username)
-
findPageTotal
@Transactional(readOnly=true) long findPageTotal(Space space)
Get the number of pages in a space. This counts all pages, including non-current versions, and including pages that are in the trash. As such, it probably doesn't do what you think it does.- Parameters:
space
- the space to count pages in- Returns:
- the number of pages in that space
-
getNumberOfBlogPosts
@Transactional(readOnly=true) int getNumberOfBlogPosts(Space space)
Get the number of blog posts in a space. This counts all news, including non-current versions, and including news that is in the trash. As such, it probably doesn't do what you think it does.- Parameters:
space
- the space to count pages in- Returns:
- the number of blog posts (news items) in that space
-
getSpaceFromPageId
@Transactional(readOnly=true) @Nullable String getSpaceFromPageId(long pageId)
Get the key for a space from its pageId in a single db call- Parameters:
pageId
- the id of the page to look for- Returns:
- the key for the space containing the given page
-
getSpacesCreatedAfter
@Transactional(readOnly=true) @NonNull List<Space> getSpacesCreatedAfter(Date creationDate)
-
ensureSpaceDescriptionExists
void ensureSpaceDescriptionExists(Space space)
If the given Space does not have a description, creates one for it, and saves it.This is required for CONF-4080, because labels on a Space are attached to a Space Description.
- Parameters:
space
- an existing space. Not null.
-
getLogoForSpace
@Transactional(readOnly=true) @NonNull SpaceLogo getLogoForSpace(@Nullable String spaceKey)
-
getLogoForGlobalcontext
@Transactional(readOnly=true) @NonNull SpaceLogo getLogoForGlobalcontext()
-
getSpaces
@Deprecated @Transactional(readOnly=true) @NonNull ListBuilder<Space> getSpaces(SpacesQuery query)
Deprecated.since 7.3.0, useSpaceService.find(Expansion...)
in plugins andSpaceManagerInternal
in core where applicableGet a list of spaces specified by theSpacesQuery
limited by the offset and maxResults.
-
getAllSpaces
@Deprecated @Transactional(readOnly=true) @NonNull List<Space> getAllSpaces(SpacesQuery query)
Deprecated.since 7.3.0, useSpaceService.find(Expansion...)
in plugins andSpaceManagerInternal
in core where applicableGet a list of spaces specified by theSpacesQuery
. Any code that calls this method is a potential performance problem. The method may be deprecated and removed in a future version of Confluence. UsegetSpaces(SpacesQuery)
to retrieve pages of results instead.
-
getSpaceAdmins
@Transactional(readOnly=true) @NonNull List<com.atlassian.user.User> getSpaceAdmins(Space spaces)
Returns a list of administrators for a given space, sorted by full name
-
getSpaceAdmins
@Transactional(readOnly=true) @NonNull List<com.atlassian.user.User> getSpaceAdmins(Space spaces, int limit)
Returns a list of administrators for a given space, sorted by full name, up to the size limit
-
archiveSpace
void archiveSpace(Space space)
Archive the space. Archived spaces are removed from various lists and search results to unclutter the user interface. If the space is archived, this method does nothing.- Parameters:
space
- the space to archive.
-
unarchiveSpace
void unarchiveSpace(Space space)
Un-archive the space. If the space is already un-archived, this method does nothing.- Parameters:
space
- the space to archive.
-
getAllSpaceKeys
@Transactional(readOnly=true) @NonNull Collection<String> getAllSpaceKeys(SpaceStatus status)
Get the space keys of all spaces with the given status.- Parameters:
status
- the status to search for- Returns:
- the keys of all spaces with that status.
-
-