Interface RelationshipEnablerFamilySession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface RelationshipEnablerFamilySession extends OsidSession

This session provides methods to retrieve RelationshipEnabler to Relationship mappings. A RelationshipEnabler may appear in multiple Relationship objects. Each relationship may have its own authorizations governing who is allowed to look at it.

This lookup session defines several views:

  • comparative view: elements may be silently omitted or re-ordered
  • plenary view: provides a complete result set or is an error condition
  • Method Details

    • canLookupRelationshipEnablerFamilytMappings

      boolean canLookupRelationshipEnablerFamilytMappings()
      Tests if this user can perform lookups of relationship enabler/family mappings. A return of true does not guarantee successful authorization. A return of false indicates that it is known lookup methods in this session will result in a PERMISSION_DENIED . This is intended as a hint to an application that may opt not to offer lookup operations to unauthorized users.
      Returns:
      false if looking up mappings is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useComparativeRelationshipEnablerFamilyView

      void useComparativeRelationshipEnablerFamilyView()
      The returns from the lookup methods may omit or translate elements based on this session, such as authorization, and not result in an error. This view is used when greater interoperability is desired at the expense of precision.
      Compliance:
      mandatory - This method is must be implemented.
    • usePlenaryRelationshipEnablerFamilyView

      void usePlenaryRelationshipEnablerFamilyView()
      A complete view of the RelationshipEnabler and Family returns is desired. Methods will return what is requested or result in an error. This view is used when greater precision is desired at the expense of interoperability.
      Compliance:
      mandatory - This method is must be implemented.
    • getRelationshipEnablerIdsByFamily

      IdList getRelationshipEnablerIdsByFamily(Id familyId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the list of RelationshipEnablerIds associated with a Family .
      Parameters:
      familyId - Id of the Family
      Returns:
      list of related relationship enabler Ids
      Throws:
      NotFoundException - familyId is not found
      NullArgumentException - familyId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getRelationshipEnablersByFamily

      Gets the list of relationship enablers associated with a Family .
      Parameters:
      familyId - Id of the Family
      Returns:
      list of related relationship enablers
      Throws:
      NotFoundException - familyId is not found
      NullArgumentException - familyId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getRelationshipEnablerIdsByFamilies

      IdList getRelationshipEnablerIdsByFamilies(IdList familyIds) throws OperationFailedException, PermissionDeniedException
      Gets the list of RelationshipEnablerIds corresponding to a list of Families .
      Parameters:
      familyIds - list of family Ids
      Returns:
      list of relationship enabler Ids
      Throws:
      NullArgumentException - familyIds is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getRelationshipEnablersByFamilies

      RelationshipEnablerList getRelationshipEnablersByFamilies(IdList familyIds) throws OperationFailedException, PermissionDeniedException
      Gets the list of relationship enablers corresponding to a list of Families .
      Parameters:
      familyIds - list of family Ids
      Returns:
      list of relationship enablers
      Throws:
      NullArgumentException - familyIds is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getFamilyIdsByRelationshipEnabler

      IdList getFamilyIdsByRelationshipEnabler(Id relationshipEnablerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the Family Ids mapped to a RelationshipEnabler .
      Parameters:
      relationshipEnablerId - Id of a RelationshipEnabler
      Returns:
      list of family Ids
      Throws:
      NotFoundException - relationshipEnablerId is not found
      NullArgumentException - relationshipEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getRelationshipsByRelationshipEnabler

      FamilyList getRelationshipsByRelationshipEnabler(Id relationshipEnablerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the families mapped to a RelationshipEnabler .
      Parameters:
      relationshipEnablerId - Id of a RelationshipEnabler
      Returns:
      list of families
      Throws:
      NotFoundException - relationshipEnablerId is not found
      NullArgumentException - relationshipEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.