@ExperimentalApi
public interface RemoteRelationService
For example, to create a favourite relation between a user and the DEV Space :
relationService.create(RelationInstance.builder(user, new SpaceFavouriteRelation(), space).build));
assertTrue(relationService.isRelated(user, new SpaceFavouriteRelation(), space));
and to find the favourite spaces of a user :
relationService.findTargets(user, new SpaceFavouriteRelation()).fetchMany(new SimplePageRequest(0, 10));
RelationInstance,
Relatable,
RelationDescriptor| Modifier and Type | Method and Description |
|---|---|
<S extends Relatable,T extends Relatable> |
create(RelationInstance<S,T> relationInstance)
Creates a directed relation between two relatable entities.
|
<S extends Relatable,T extends Relatable> |
delete(RelationInstance<S,T> relationInstance)
Remove a relation if it exists between a source and a target relatable entity
|
<S extends Relatable,T extends Relatable> |
isRelated(S source,
RelationDescriptor<S,T> relationDescriptor,
T target)
Determine whether a given source and target are related by the given relation
|
<S extends Relatable,T extends Relatable> com.atlassian.util.concurrent.Promise<Void> create(RelationInstance<S,T> relationInstance) throws ServiceException
For example, when a user favourites a space a SpaceFavouriteRelation is created from the user to the space:
relationService.create(RelationInstance.builder(user, new SpaceFavouriteRelation(), space).build));
S - type of the source entityT - type of the target entityrelationInstance - the relation to createServiceException - if validation fails<S extends Relatable,T extends Relatable> com.atlassian.util.concurrent.Promise<Void> delete(RelationInstance<S,T> relationInstance) throws ServiceException
S - type of the source entityT - type of the target entityrelationInstance - relation to be deletedServiceException - if validation fails<S extends Relatable,T extends Relatable> com.atlassian.util.concurrent.Promise<Boolean> isRelated(S source, RelationDescriptor<S,T> relationDescriptor, T target)
S - type of the source entityT - type of the target entityCopyright © 2003–2017 Atlassian. All rights reserved.