Interface SpaceDao
-
- All Superinterfaces:
ObjectDao
- All Known Subinterfaces:
SpaceDaoInternal
- All Known Implementing Classes:
HibernateSpaceDao
@ParametersAreNonnullByDefault public interface SpaceDao extends ObjectDao
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description int
countSpaces(SpacesQueryWithPermissionQueryBuilder queryWithPermissionClauseBuilder)
Count the spaces specified by theSpacesQuery
.int
findPageTotal(Space space)
Fast way to count pages in a space without loading them.@NonNull Collection<String>
findSpaceKeysWithStatus(String status)
find all space keys where the space status is equal to the given status.@NonNull String
findUniqueVersionOfSpaceKey(String spaceKey)
Return a unique version of the supplied spaceKey.@Nullable Space
getById(long id)
int
getNumberOfBlogPosts(Space space)
Fast way to count blog posts in a space without loading them.@Nullable Space
getPersonalSpace(@Nullable ConfluenceUser user)
@Nullable Space
getSpace(@Nullable String spaceKey)
Find a space by its space key.@Nullable Space
getSpaceByContentId(long contentId)
Get the space that some content belongs to in a single db query.@NonNull List<Space>
getSpaces(SpacesQueryWithPermissionQueryBuilder queryWithPermissionClauseBuilder)
Get a list of spaces specified by theSpacesQuery
.@NonNull List<Space>
getSpaces(SpacesQueryWithPermissionQueryBuilder queryWithPermissionClauseBuilder, int offset, int maxResults)
Get a list of spaces specified by theSpacesQueryWithPermissionQueryBuilder
.@NonNull List<Space>
getSpacesContainingCommentsByUser(@Nullable String username)
Find all spaces containing comments by a particular user.@NonNull List<Space>
getSpacesContainingPagesEditedByUser(@Nullable String username)
Find all spaces containing pages that were edited by a particular user.@NonNull List<Space>
getSpacesCreatedAfter(Date creationDate)
@NonNull List<Space>
getSpacesCreatedByUser(@Nullable String username)
Find all the spaces created by a given user.@NonNull List<Space>
getSpacesCreatedOrUpdatedSinceDate(Date previousLoginDate)
void
performOnAll(Consumer<Space> function)
Perform the task with all spaces.-
Methods inherited from interface bucket.core.persistence.ObjectDao
findAll, findAllSorted, findAllSorted, findByClassIds, getPersistentClass, refresh, remove, replicate, save, saveRaw
-
-
-
-
Method Detail
-
getById
@Nullable Space getById(long id)
-
getSpacesCreatedByUser
@NonNull List<Space> getSpacesCreatedByUser(@Nullable String username)
Find all the spaces created by a given user.
-
getPersonalSpace
@Nullable Space getPersonalSpace(@Nullable ConfluenceUser user)
- Parameters:
user
- the user who's personal space is to be retrieved- Returns:
- the personal space for the specified user or null if none exists
-
getSpacesContainingPagesEditedByUser
@NonNull List<Space> getSpacesContainingPagesEditedByUser(@Nullable String username)
Find all spaces containing pages that were edited by a particular user. This is for tracking down whether a user can be safely deleted or not.- Parameters:
username
- the name of the user to track down- Returns:
- a list of the spaces containing pages that were edited by this user, or the empty list if no such spaces exist.
-
getSpacesContainingCommentsByUser
@NonNull List<Space> getSpacesContainingCommentsByUser(@Nullable String username)
Find all spaces containing comments by a particular user. This is for tracking down whether a user can be safely deleted or not.Does currently not include personal spaces, but probably should.
- Parameters:
username
- the name of the user to track down- Returns:
- a list of the spaces containing comments by this user, or the empty list if no such spaces exist.
-
getSpacesCreatedOrUpdatedSinceDate
@NonNull List<Space> getSpacesCreatedOrUpdatedSinceDate(Date previousLoginDate)
-
findPageTotal
int findPageTotal(Space space)
Fast way to count pages in a space without loading them. Counts all pages, not just the current versions.- Returns:
- returns the number of all versions of all pages in a space
-
getNumberOfBlogPosts
int getNumberOfBlogPosts(Space space)
Fast way to count blog posts in a space without loading them. Counts all blog posts, not just the current versions.- Returns:
- returns the number of all versions of all blog posts in a space
-
getSpaces
@NonNull List<Space> getSpaces(SpacesQueryWithPermissionQueryBuilder queryWithPermissionClauseBuilder, int offset, int maxResults)
Get a list of spaces specified by theSpacesQueryWithPermissionQueryBuilder
.- Since:
- 5.9
-
getSpaces
@NonNull List<Space> getSpaces(SpacesQueryWithPermissionQueryBuilder queryWithPermissionClauseBuilder)
Get a list of spaces specified by theSpacesQuery
. Its recommended to use thegetSpaces(SpacesQueryWithPermissionQueryBuilder, int, int)
form of this method where ever possible.- Since:
- 5.9
-
countSpaces
int countSpaces(SpacesQueryWithPermissionQueryBuilder queryWithPermissionClauseBuilder)
Count the spaces specified by theSpacesQuery
.- Since:
- 5.9
-
getSpaceByContentId
@Nullable Space getSpaceByContentId(long contentId)
Get the space that some content belongs to in a single db query. This will only work for content that directly belongs to a space (i.e. Pages, Blog Posts, Space Descriptions but not Comments or Attachments) and it will only work for current content (old content is dissassociated from its space)- Parameters:
contentId
- the ID of the content- Returns:
- the space that content belongs to
-
findSpaceKeysWithStatus
@NonNull Collection<String> findSpaceKeysWithStatus(String status)
find all space keys where the space status is equal to the given status.- Parameters:
status
- the status to search for- Returns:
- all space keys of spaces that match that status
-
findUniqueVersionOfSpaceKey
@NonNull String findUniqueVersionOfSpaceKey(String spaceKey)
Return a unique version of the supplied spaceKey. This is done by checking the database for a duplicate and following the algorithm of counting up until a duplicate is achieved e.g. spaceKey_1, spaceKey_2, etc.- Parameters:
spaceKey
- the space key to create a unique version of- Returns:
- the unique space key
-
-