Interface SpaceManagerInternal
- All Superinterfaces:
SpaceManager
- All Known Implementing Classes:
DefaultSpaceManager
- Since:
- 9.0
-
Field Summary
Fields inherited from interface com.atlassian.confluence.spaces.SpaceManager
GLOBAL_LOGO
-
Method Summary
Modifier and TypeMethodDescriptioncloneSpaceForRemoveEvent
(Space space) @NonNull Space
createSpace
(Space space) Deprecated.since 6.10.0, use {#link #createSpace(String key, String name, String description, User creator)}@NonNull PageResponse
<Space> getSpaces
(SpacesQuery query, LimitedRequest limitedRequest, Predicate<? super Space>... filter) get a paginated list of spaces that match the spaceQuery, filtered by the given predicate@NonNull Boolean
removeSpace
(Space space) Deprecated, for removal: This API element is subject to removal in a future version.@NonNull Boolean
removeSpace
(String spaceKey) Deprecated, for removal: This API element is subject to removal in a future version.@NonNull Boolean
removeSpace
(String spaceKey, com.atlassian.core.util.ProgressMeter progressMeter) Deprecated, for removal: This API element is subject to removal in a future version.void
removeSpacesInGroup
(SpaceGroup spaceGroup) Deprecated, for removal: This API element is subject to removal in a future version.since 5.9.@NonNull io.atlassian.fugue.Either
<AccessDenied, SpacesQueryWithPermissionQueryBuilder> toSpacesQueryWithPermissionQueryBuilder
(SpacesQuery spacesQuery) Converts aSpacesQuery
into a decorated formSpacesQueryWithPermissionQueryBuilder
that includes information about how database queries should be built for the space permissions table.Methods inherited from interface com.atlassian.confluence.spaces.SpaceManager
archiveSpace, createPersonalSpace, createPrivatePersonalSpace, createPrivateSpace, createSpace, ensureSpaceDescriptionExists, findPageTotal, getAllSpaceKeys, getAllSpaces, getAllSpaces, getAuthoredSpacesByUser, getDefaultHomepageTitle, getLogoForGlobalcontext, getLogoForSpace, getNumberOfBlogPosts, getPersonalSpace, getSpace, getSpace, getSpaceAdmins, getSpaceAdmins, getSpaceFromPageId, getSpaces, getSpacesContainingCommentsBy, getSpacesContainingPagesEditedBy, getSpacesCreatedAfter, hasPersonalSpace, saveSpace, saveSpace, unarchiveSpace
-
Method Details
-
cloneSpaceForRemoveEvent
-
getSpaces
@Transactional(readOnly=true) @NonNull PageResponse<Space> getSpaces(SpacesQuery query, LimitedRequest limitedRequest, Predicate<? super Space>... filter) get a paginated list of spaces that match the spaceQuery, filtered by the given predicate- Parameters:
query
- - the query to use to fetch the spaces from the databaseslimitedRequest
- - the pagination request limitfilter
- - the filter to apply to the requested spaces- Returns:
- a PageResponse of matching spaces
- Since:
- 7.0.1
-
toSpacesQueryWithPermissionQueryBuilder
@NonNull io.atlassian.fugue.Either<AccessDenied,SpacesQueryWithPermissionQueryBuilder> toSpacesQueryWithPermissionQueryBuilder(SpacesQuery spacesQuery) Converts a
SpacesQuery
into a decorated formSpacesQueryWithPermissionQueryBuilder
that includes information about how database queries should be built for the space permissions table. This extra information is passed down to the DAO level so thatSpaceDao
doesn't have to call out to the manager level to determine things like the user'sAccessStatus
, or construct extremely complex queries to join and figure out the user's Confluence access.If no permission check is defined in the
SpacesQuery
or the user is a super-user, then the returned object excludes permission checking.- Parameters:
spacesQuery
- the query to use to fetch the spaces from the databases- Returns:
- the
SpacesQuery
decorated into aSpacesQueryWithPermissionQueryBuilder
ORAccessDenied
if the user does not have Confluence access, or an invalid permission is being checked for the user. - Since:
- 7.0.1
-
removeSpace
@Transactional(propagation=REQUIRES_NEW) @Deprecated(forRemoval=true, since="9.4") @NonNull Boolean removeSpace(Space space) Deprecated, for removal: This API element is subject to removal in a future version.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) @Deprecated(forRemoval=true, since="9.4") @NonNull Boolean removeSpace(String spaceKey) Deprecated, for removal: This API element is subject to removal in a future version.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) @Deprecated(forRemoval=true, since="9.4") @NonNull Boolean removeSpace(String spaceKey, com.atlassian.core.util.ProgressMeter progressMeter) Deprecated, for removal: This API element is subject to removal in a future version.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(forRemoval=true) @Transactional(propagation=REQUIRES_NEW) void removeSpacesInGroup(SpaceGroup spaceGroup) Deprecated, for removal: This API element is subject to removal in a future version.since 5.9.SpaceGroup
and related classes likeSpaceGroupManager
andSpaceGroupComparator
will be removed. Please do not use them. -
createSpace
Deprecated.since 6.10.0, use {#link #createSpace(String key, String name, String description, User creator)}
-