Interface EndpointLookupSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface EndpointLookupSession extends OsidSession

This session provides methods for retrieving Endpoint objects. The Endpoint represents transport destination.

This session defines two views which offer differing behaviors when retrieving multiple objects.

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

Generally, the comparative view should be used for most applications as it permits operation even if there is data out of sync.

  • Method Details

    • canLookupEndpoints

      boolean canLookupEndpoints()
      Tests if this user can perform Endpoint 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 opt not to offer lookup operations to unauthorized users.
      Returns:
      false if lookup methods are not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useComparativeEndpointView

      void useComparativeEndpointView()
      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.
    • usePlenaryEndpointView

      void usePlenaryEndpointView()
      A complete view of the Endpoint 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.
    • getEndpoint

      Gets the Endpoint specified by its Id . In plenary mode, the exact Id is found or a NOT_FOUND results. Otherwise, the returned Endpoint may have a different Id than requested, such as the case where a duplicate Id was assigned to a Endpoint and retained for compatibility.
      Parameters:
      endpointId - the Id of the Endpoint to retrieve
      Returns:
      the Endpoint
      Throws:
      NotFoundException - no Endpoint found with the given Id
      NullArgumentException - Id is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getEndpointsByIds

      Gets an EndpointList corresponding to the given IdList . In plenary mode, the returned list contains all of the endpoints specified in the Id list, in the order of the list, including duplicates, or an error results if an Id in the supplied list is not found or inaccessible. Otherwise, inaccessible Endpoint elements may be omitted from the list and may present the elements in any order including returning a unique set.
      Parameters:
      endpointIds - the list of Ids to retrieve
      Returns:
      the returned Endpoint list
      Throws:
      NotFoundException - an Id was not found
      NullArgumentException - endpointIds is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getEndpointsByGenusType

      EndpointList getEndpointsByGenusType(Type endpointGenusType) throws OperationFailedException, PermissionDeniedException
      Gets an EndpointList corresponding to the given endpoint genus Type which does not include endpoints of genus types derived from the specified Type .In plenary mode, the returned list contains all known endpoints or an error results. Otherwise, the returned list may contain only those endpoints that are accessible through this session.
      Parameters:
      endpointGenusType - an endpoint genus type
      Returns:
      the returned Endpoint list
      Throws:
      NullArgumentException - endpointGenusType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getEndpointsByParentGenusType

      EndpointList getEndpointsByParentGenusType(Type endpointsGenusType) throws OperationFailedException, PermissionDeniedException
      Gets an EndpointList corresponding to the given endpoint genus Type and include any additional endpoints with genus types derived from the specified Type .In plenary mode, the returned list contains all known endpoints or an error results. Otherwise, the returned list may contain only those endpoints that are accessible through this session.
      Parameters:
      endpointsGenusType - an endpoint genus type
      Returns:
      the returned Endpoint list
      Throws:
      NullArgumentException - endpointGenusType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getEndpointsByRecordType

      EndpointList getEndpointsByRecordType(Type endpointsRecordType) throws OperationFailedException, PermissionDeniedException
      Gets an EndpointList containing the given endpoint record Type . In plenary mode, the returned list contains all known endpoints or an error results. Otherwise, the returned list may contain only those endpoints that are accessible through this session.
      Parameters:
      endpointsRecordType - an endpoint record type
      Returns:
      the returned Endpoint list
      Throws:
      NullArgumentException - endpointRecordType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getEndpointsByProvider

      EndpointList getEndpointsByProvider(Id resourceId) throws OperationFailedException, PermissionDeniedException
      Gets an EndpointList containing the given endpoint record Type . In plenary mode, the returned list contains all known endpoints or an error results. Otherwise, the returned list may contain only those endpoints that are accessible through this session.
      Parameters:
      resourceId - a resource Id
      Returns:
      the returned Endpoint list
      Throws:
      NullArgumentException - resourceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getEndpoints

      Gets all Endpoint elements. In plenary mode, the returned list contains all known endpoints or an error results. Otherwise, the returned list may contain only those endpoints that are accessible through this session.
      Returns:
      a list of endpoints
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.