Interface SignalLookupSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface SignalLookupSession extends OsidSession

This session defines methods for retrieving signals.

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
  • isolated map view: All signal methods in this session operate, retrieve and pertain to signals defined explicitly in the current map. Using an isolated view is useful for managing Signals with the SignalAdminSession .
  • federated map view: All signal lookup methods in this session operate, retrieve and pertain to all signals defined in this map and any other signals implicitly available in this map through map inheritence.
  • active signal view: All signal lookup methods return active signals.
  • any status signal view: Signals of any active or inactive status are returned from methods.

The methods useFederatedMapView() and useIsolatedMapView() behave as a radio group and one should be selected before invoking any lookup methods.

Signals may have an additional records indicated by their respective record types. The record may not be accessed through a cast of the Signals .

  • Method Details

    • getMapId

      Id getMapId()
      Gets the Map Id associated with this session.
      Returns:
      the Map Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getMap

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

      boolean canLookupSignals()
      Tests if this user can perform Signal 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 lookup methods are not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useComparativeSignalView

      void useComparativeSignalView()
      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.
    • usePlenarySignalView

      void usePlenarySignalView()
      A complete view of the Signal 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.
    • useFederatedMapView

      void useFederatedMapView()
      Federates the view for methods in this session. A federated view will include signals in maps which are children of this map in the map hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedMapView

      void useIsolatedMapView()
      Isolates the view for methods in this session. An isolated view restricts retrievals to this map only.
      Compliance:
      mandatory - This method is must be implemented.
    • useActiveSignalView

      void useActiveSignalView()
      Only active signals are returned by methods in this session.
      Compliance:
      mandatory - This method is must be implemented.
    • useAnyStatusSignalView

      void useAnyStatusSignalView()
      All active and inactive signals are returned by methods in this session.
      Compliance:
      mandatory - This method is must be implemented.
    • getSignal

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

      Gets a SignalList corresponding to the given IdList . I n plenary mode, the returned list contains all of the signals 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 Signals may be omitted from the list and may present the elements in any order including returning a unique set. In active mode, signals are returned that are currently active. In any status mode, active and inactive signals are returned.
      Parameters:
      signalIds - the list of Ids to retrieve
      Returns:
      the returned Signal list
      Throws:
      NotFoundException - an Id was not found
      NullArgumentException - signalIds is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getSignalsByGenusType

      SignalList getSignalsByGenusType(Type signalGenusType) throws OperationFailedException, PermissionDeniedException
      Gets a SignalList corresponding to the given signal genus Type which does not include signals of types derived from the specified Type . In plenary mode, the returned list contains all known signals or an error results. Otherwise, the returned list may contain only those signals that are accessible through this session. In active mode, signals are returned that are currently active. In any status mode, active and inactive signals are returned.
      Parameters:
      signalGenusType - a signal genus type
      Returns:
      the returned Signal list
      Throws:
      NullArgumentException - signalGenusType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getSignalsByParentGenusType

      SignalList getSignalsByParentGenusType(Type signalGenusType) throws OperationFailedException, PermissionDeniedException
      Gets a SignalList corresponding to the given signal genus Type and include any additional signals with genus types derived from the specified Type . In plenary mode, the returned list contains all known signals or an error results. Otherwise, the returned list may contain only those signals that are accessible through this session. In active mode, signals are returned that are currently active. In any status mode, active and inactive signals are returned.
      Parameters:
      signalGenusType - a signal genus type
      Returns:
      the returned Signal list
      Throws:
      NullArgumentException - signalGenusType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getSignalsByRecordType

      SignalList getSignalsByRecordType(Type signalRecordType) throws OperationFailedException, PermissionDeniedException
      Gets a SignalList containing the given signal record Type . In plenary mode, the returned list contains all known signals or an error results. Otherwise, the returned list may contain only those signals that are accessible through this session. In active mode, signals are returned that are currently active. In any status mode, active and inactive signals are returned.
      Parameters:
      signalRecordType - a signal record type
      Returns:
      the returned Signal list
      Throws:
      NullArgumentException - signalRecordType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getSignalsForPath

      Gets a SignalList containing the given path. In plenary mode, the returned list contains all known signals or an error results. Otherwise, the returned list may contain only those signals that are accessible through this session. In active mode, signals are returned that are currently active. In any status mode, active and inactive signals are returned.
      Parameters:
      pathId - a path Id
      Returns:
      the returned Signal list
      Throws:
      NullArgumentException - pathId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getSignalsForPathAtCoordinate

      SignalList getSignalsForPathAtCoordinate(Id pathId, Coordinate coordinate, Distance distance) throws OperationFailedException, PermissionDeniedException
      Gets a SignalList containing the given path between the given coordinates inclusive. In plenary mode, the returned list contains all known signals or an error results. Otherwise, the returned list may contain only those signals that are accessible through this session. In active mode, signals are returned that are currently active. In any status mode, active and inactive signals are returned.
      Parameters:
      pathId - a path Id
      coordinate - starting coordinate
      distance - a distance from coordinate
      Returns:
      the returned Signal list
      Throws:
      NullArgumentException - pathId, coordinate or distance is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getSignals

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