public interface RelationshipEnablerFamilyAssignmentSession extends OsidSession
This session provides methods to re-assign RelationshipEnabler
to Family
mappings. A RelationshipEnabler
may appear in multiple Family
objects and removing
the last reference to a RelationshipEnabler
is the
equivalent of deleting it. Each Relationship
may have its
own authorizations governing who is allowed to operate on it.
Adding a reference of a RelationshipEnabler
to another
Family
is not a copy operation (eg: does not change its
Id
).
Modifier and Type | Method and Description |
---|---|
void |
assignRelationshipEnablerToFamily(Id relationshipEnablerId,
Id familyId)
Adds an existing
RelationshipEnabler to a
Family. |
boolean |
canAssignRelationshipEnablers()
Tests if this user can alter relationship enabler/family mappings.
|
boolean |
canAssignRelationshipEnablersToFamily(Id familyId)
Tests if this user can alter relationship enabler/family mappings.
|
IdList |
getAssignableFamilyIds(Id familyId)
Gets a list of families including and under the given family node in
which any family enabler can be assigned.
|
IdList |
getAssignableFamilyIdsForRelationshipEnabler(Id familyId,
Id relationshipEnablerId)
Gets a list of families including and under the given family node in
which a specific family enabler can be assigned.
|
void |
reassignRelationshipEnablerToFamily(Id relationshipEnablerId,
Id fromFamilyId,
Id toFamilyId)
Moves a
RelationshipEnabler from one Family
to another. |
void |
unassignRelationshipEnablerFromFamily(Id relationshipEnablerId,
Id familyId)
Removes a
RelationshipEnabler from a Family. |
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
boolean canAssignRelationshipEnablers()
PERMISSION_DENIED.
This is intended as
a hint to an application that may opt not to offer lookup operations
to unauthorized users. false
if mapping is not authorized, true
otherwisemandatory
- This method must be implemented. boolean canAssignRelationshipEnablersToFamily(Id familyId)
PERMISSION_DENIED.
This is intended as
a hint to an application that may opt not to offer lookup operations
to unauthorized users.familyId
- the Id
of the Family
false
if mapping is not authorized, true
otherwiseNullArgumentException
- familyId
is
null
mandatory
- This method must be implemented. IdList getAssignableFamilyIds(Id familyId) throws OperationFailedException
familyId
- the Id
of the Family
Ids
NullArgumentException
- familyId
is
null
OperationFailedException
- unable to complete requestmandatory
- This method must be implemented. IdList getAssignableFamilyIdsForRelationshipEnabler(Id familyId, Id relationshipEnablerId) throws OperationFailedException
familyId
- the Id
of the Family
relationshipEnablerId
- the Id
of the
RelationshipEnabler
Ids
NullArgumentException
- familyId
or
relationshipEnablerId
is null
OperationFailedException
- unable to complete requestmandatory
- This method must be implemented. void assignRelationshipEnablerToFamily(Id relationshipEnablerId, Id familyId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
RelationshipEnabler
to a
Family.
relationshipEnablerId
- the Id
of the
RelationshipEnabler
familyId
- the Id
of the Family
AlreadyExistsException
- relationshipEnablerId
is already assigned to familyId
NotFoundException
- relationshipEnablerId
or familyId
not foundNullArgumentException
- relationshipEnablerId
or familyId
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void unassignRelationshipEnablerFromFamily(Id relationshipEnablerId, Id familyId) throws NotFoundException, OperationFailedException, PermissionDeniedException
RelationshipEnabler
from a Family.
relationshipEnablerId
- the Id
of the
RelationshipEnabler
familyId
- the Id
of the Family
NotFoundException
- relationshipEnablerId
or familyId
not found or
relationshipEnablerId
is not assigned to
familyId
NullArgumentException
- relationshipEnablerId
or familyId
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void reassignRelationshipEnablerToFamily(Id relationshipEnablerId, Id fromFamilyId, Id toFamilyId) throws NotFoundException, OperationFailedException, PermissionDeniedException
RelationshipEnabler
from one Family
to another. Mappings to other Families
are
unaffected.relationshipEnablerId
- the Id
of the
RelationshipEnabler
fromFamilyId
- the Id
of the current
Family
toFamilyId
- the Id
of the destination
Family
NotFoundException
- relationshipEnablerId,
fromFamilyId,
or toFamilyId
not found
or relationshipEnablerId
not mapped to
fromFamilyId
NullArgumentException
- relationshipEnabelrId,
fromFamilyId,
or toFamilyId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.