Interface RelevancyEnablerNotificationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface RelevancyEnablerNotificationSession extends OsidSession

This session defines methods to receive notifications on adds/changes to RelevancyEnabler objects in this Ontology . This also includes existing RelevancyEnablers that may appear or disappear due to changes in the Ontology hierarchy, This session is intended for consumers needing to synchronize their state with this service without the use of polling. Notifications are cancelled when this session is closed.

The two views defined in this session correspond to the views in the RelevancyEnablerLookupSession .

  • Method Details

    • getOntologyId

      Id getOntologyId()
      Gets the Ontology Id associated with this session.
      Returns:
      the Ontology Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getOntology

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

      boolean canRegisterForRelevancyEnablerNotifications()
      Tests if this user can register for RelevancyEnabler notifications. 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 notification operations.
      Returns:
      false if notification methods are not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useFederatedOntologyView

      void useFederatedOntologyView()
      Federates the view for methods in this session. A federated view will include enablers in ontologies which are children of this ontology in the ontology hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedOntologyView

      void useIsolatedOntologyView()
      Isolates the view for methods in this session. An isolated view restricts notifications to this ontology only.
      Compliance:
      mandatory - This method is must be implemented.
    • reliableRelevancyEnablerNotifications

      void reliableRelevancyEnablerNotifications()
      Reliable notifications are desired. In reliable mode, notifications are to be acknowledged using acknowledgeRelevancyEnablerNotification() .
      Compliance:
      mandatory - This method is must be implemented.
    • unreliableRelevancyEnablerNotifications

      void unreliableRelevancyEnablerNotifications()
      Unreliable notifications are desired. In unreliable mode, notifications do not need to be acknowledged.
      Compliance:
      mandatory - This method is must be implemented.
    • acknowledgeRelevancyEnablerNotification

      void acknowledgeRelevancyEnablerNotification(Id notificationId) throws OperationFailedException, PermissionDeniedException
      Acknowledge a relevancy enabler notification.
      Parameters:
      notificationId - the Id of the notification
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForNewRelevancyEnablers

      void registerForNewRelevancyEnablers() throws OperationFailedException, PermissionDeniedException
      Register for notifications of new relevancy enablers. RelevancyEnablerReceiver.newRelevancyEnablers() is invoked when a new RelevancyEnabler appears in this ontology.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedRelevancyEnablers

      void registerForChangedRelevancyEnablers() throws OperationFailedException, PermissionDeniedException
      Registers for notification of updated ontology enabelrs. RelevancyEnablerReceiver.changedRelevancyEnablers() is invoked when a relevancy enabler in this ontology is changed.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedRelevancyEnabler

      void registerForChangedRelevancyEnabler(Id relevancyEnablerId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of an updated relevancy enabler. ProvisionableReceiver.changedRelevancyEnablers() is invoked when the specified relevancy enabler in this ontology is changed.
      Parameters:
      relevancyEnablerId - the Id of the RelevancyEnabler to monitor
      Throws:
      NullArgumentException - relevancyEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedRelevancyEnablers

      void registerForDeletedRelevancyEnablers() throws OperationFailedException, PermissionDeniedException
      Registers for notification of deleted relevancy enablers. RelevancyEnablerReceiver.deletedRelevancyEnablers() is invoked when a relevancy enabler is deleted or removed from this ontology.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedRelevancyEnabler

      void registerForDeletedRelevancyEnabler(Id relevancyEnablerId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of a deleted relevancy enabler. RelevancyEnablerReceiver.deletedRelevancyEnablers() is invoked when the specified relevancy enabler is deleted or removed from this ontology.
      Parameters:
      relevancyEnablerId - the Id of the RelevancyEnabler to monitor
      Throws:
      NullArgumentException - relevancyEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.