com.atlassian.confluence.api.service.content
Interface SpaceService

All Known Implementing Classes:
SpaceServiceImpl

@ExperimentalApi
public interface SpaceService

Provides CRUD operations on Spaces.

Since:
5.5

Nested Class Summary
static interface SpaceService.SingleSpaceFetcher
           
static interface SpaceService.SpaceContentFinder
          A finder interface to encapsulate finding content in a particular space
static interface SpaceService.SpaceFinder
          A finder for locating spaces.
static interface SpaceService.Validator
          Provides methods for validating the create, update and delete methods.
 
Method Summary
 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 space
 com.atlassian.fugue.Option<Space> getSpace(String spaceKey, Expansion... expansions)
          Deprecated. Since 5.5 use find().withKey(String).fetchOne();
 Space 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 create
isPrivate - 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 updated Space
Returns:
the updated space after being persisted
Throws:
ServiceException

getSpace

@Deprecated
com.atlassian.fugue.Option<Space> getSpace(String spaceKey,
                                                      Expansion... expansions)
Deprecated. Since 5.5 use find().withKey(String).fetchOne();

Retrieve a space with the given spacekey. A space key uniquely identifies a space.

Parameters:
spaceKey - - the space key of the space
Returns:
an Option of the space with the given key if one exists.

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() method For 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:
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 it
PermissionException - if you do not have permission to delete the space
ServiceException

validator

SpaceService.Validator validator()
Get the validator view of the Space Service.



Copyright © 2003–2015 Atlassian. All rights reserved.