Interface SpaceService
-
- All Known Implementing Classes:
SpaceServiceImpl
@ExperimentalApi public interface SpaceService
Provides CRUD operations on Spaces.- Since:
- 5.5
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
SpaceService.SingleSpaceFetcher
static interface
SpaceService.SpaceContentFinder
A finder interface to encapsulate finding content in a particular spacestatic interface
SpaceService.SpaceFinder
A finder for locating spaces.static interface
SpaceService.Validator
Provides methods for validating the create, update and delete methods.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Space
create(Space newSpace, boolean isPrivate)
Create a new space.LongTaskSubmission
delete(Space spaceToDelete)
Delete the given space.SpaceService.SpaceFinder
find(Expansion... expansion)
Create a space finder to locate spaces, the expansions will be applied to each Space matching the restrictions on the finder.SpaceService.SpaceContentFinder
findContent(Space space, Expansion... expansion)
A finder to locate content in the spaceSpace
update(Space space)
Updates a space.SpaceService.Validator
validator()
Get the validator view of the Space Service.
-
-
-
Method Detail
-
create
Space create(Space newSpace, boolean isPrivate) throws ServiceException
Create a new space.If the "isPrivate" flag is set to true the new space will only be visible to the creator.
Minimum properties to be valid is a key and name.
- Parameters:
newSpace
- the space to createisPrivate
- whether the space is private (true) or has default permissions (false)- Returns:
- the space created
- Throws:
ServiceException
- if the space cannot be created
-
update
Space update(Space space) throws ServiceException
Updates a space.Currently limited to changing the space name, description and homepage.
- Parameters:
space
- the updatedSpace
- Returns:
- the updated space after being persisted
- Throws:
ServiceException
-
find
SpaceService.SpaceFinder find(Expansion... expansion)
Create a space finder to locate spaces, the expansions will be applied to each Space matching the restrictions on the finder. Restrictions can be applied to the finder using the appropriate withFoo() methodFor example:
spaceService.find() .withKeys("DEV","PROD") .fetchMany(new SimplePageRequest(0, 10);
- Parameters:
expansion
- - the expansion to apply to each fetched space- Returns:
- a new SpaceFinder
-
findContent
SpaceService.SpaceContentFinder findContent(Space space, Expansion... expansion) throws NotFoundException
A finder to locate content in the space- Returns:
- a finder
- Throws:
NotFoundException
- if the space does not exist or you do not have permission to view it
-
delete
LongTaskSubmission delete(Space spaceToDelete) throws ServiceException
Delete the given space.The deletion happens asynchronously so a LongTaskStatus is returned, that can be used to track progress.
- Parameters:
spaceToDelete
- the space to delete- Returns:
- a LongTaskStatus describing the space-removal operation
- Throws:
NotFoundException
- if the space does not exist or you do not have permission to view itPermissionException
- if you do not have permission to delete the spaceServiceException
-
validator
SpaceService.Validator validator()
Get the validator view of the Space Service.
-
-