Interface RelationshipEnablerQuerySession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
All Known Subinterfaces:
RelationshipEnablerSearchSession

public interface RelationshipEnablerQuerySession extends OsidSession

This session provides methods for searching among RelationshipEnabler objects. The search query is constructed using the RelationshipEnablerQuery .

This session defines views that offer differing behaviors for searching.

  • federated family view: searches include relationship enablers in families of which this family is an ancestor in the family hierarchy
  • isolated family view: searches are restricted to relationship enablers in this family

Relationship enablers may have a query record indicated by their respective record types. The query record is accessed via the RelationshipEnablerQuery .

  • Method Details

    • getFamilyId

      Id getFamilyId()
      Gets the Family Id associated with this session.
      Returns:
      the Family Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getFamily

      Gets the Family associated with this session.
      Returns:
      the family
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canSearchRelationshipEnablers

      boolean canSearchRelationshipEnablers()
      Tests if this user can perform RelationshipEnabler lookups. A return of true does not guarantee successful authorization. A return of false indicates that it is known all methods in this session will result in a PERMISSION_DENIED . This is intended as a hint to an application that may not offer lookup operations to unauthorized users.
      Returns:
      false if search methods are not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useFederatedFamilyView

      void useFederatedFamilyView()
      Federates the view for methods in this session. A federated view will include relationship enablers in families which are children of this family in the family hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedFamilyView

      void useIsolatedFamilyView()
      Isolates the view for methods in this session. An isolated view restricts lookups to this family only.
      Compliance:
      mandatory - This method is must be implemented.
    • getRelationshipEnablerQuery

      RelationshipEnablerQuery getRelationshipEnablerQuery()
      Gets a relationship enabler query.
      Returns:
      the relationship enabler query
      Compliance:
      mandatory - This method must be implemented.
    • getRelationshipEnablersByQuery

      RelationshipEnablerList getRelationshipEnablersByQuery(RelationshipEnablerQuery relationshipEnablerQuery) throws OperationFailedException, PermissionDeniedException
      Gets a list of RelationshipEnablers matching the given relationship enabler query.
      Parameters:
      relationshipEnablerQuery - the relationship enabler query
      Returns:
      the returned RelationshipEnablerList
      Throws:
      NullArgumentException - relationshipEnablerQuery is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - relationshipEnablerQuery is not of this service
      Compliance:
      mandatory - This method must be implemented.