Interface ConfigurationNotificationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface ConfigurationNotificationSession extends OsidSession

This session defines methods to receive notifications on adds/changes to Configurations . Notrifications related to adding or removing of parameters are handled through the ValueNotificationSession . This session is intended for adapters and providers needing to synchronize their state with this service without the use of polling. Notifications are cancelled when this session is closed.

  • Method Details

    • canRegisterForConfigurationNotifications

      boolean canRegisterForConfigurationNotifications()
      Tests if this user can register for Configuration 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.
    • reliableConfigurationNotifications

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

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

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

      void registerForNewConfigurations() throws OperationFailedException, PermissionDeniedException
      Registers for notifications of new configurations. ConfigurationReceiver.newConfigurations() is invoked when a new Configuration is created.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedConfigurations

      void registerForChangedConfigurations() throws OperationFailedException, PermissionDeniedException
      Registers for notification of updated configurations. ConfigurationReceiver.changedConfigurations() is invoked when a configuration is changed.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedConfiguration

      void registerForChangedConfiguration(Id configurationId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Registers for notifications of an update to a configuration. ConfigurationReceiver.changedConfigurations() is invoked when the specified Configuration is changed.
      Parameters:
      configurationId - the Id of the Configuration to monitor
      Throws:
      NotFoundException - a Configuration was not found identified by the given Id
      NullArgumentException - configurationId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedConfigurations

      void registerForDeletedConfigurations() throws OperationFailedException, PermissionDeniedException
      Registers for notification of deleted configurations. ConfigurationReceiver.deletedConfigurations() is invoked when a Configuration is deleted.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedConfiguration

      void registerForDeletedConfiguration(Id configurationId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Registers for notifications of a deleted configuration. ConfiguratinReceiver.deletedConfigurations() is invoked when the specified configuration is deleted.
      Parameters:
      configurationId - the Id of the Configuration to monitor
      Throws:
      NotFoundException - a Configuration was not found identified by the given Id
      NullArgumentException - configurationId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedConfigurationHierarchy

      void registerForChangedConfigurationHierarchy() throws OperationFailedException, PermissionDeniedException
      Registers for notification of an updated configuration hierarchy structure. ConfigurationReceiver.changedChildOfConfigurations() is invoked when a node experiences a change in its children.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedConfigurationHierarchyForAncestors

      void registerForChangedConfigurationHierarchyForAncestors(Id configurationId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of an updated configuration hierarchy structure. ConfigurationReceiver.changedChildOfConfigurations() is invoked when the specified node or any of its ancestors experiences a change in its children.
      Parameters:
      configurationId - the Id of the Configuration node to monitor
      Throws:
      NullArgumentException - configurationId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedConfigurationHierarchyForDescendants

      void registerForChangedConfigurationHierarchyForDescendants(Id configurationId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of an updated configuration hierarchy structure. ConfigurationReceiver.changedChildOfConfigurations() is invoked when the specified node or any of its descendants experiences a change in its children.
      Parameters:
      configurationId - the Id of the Configuration node to monitor
      Throws:
      NullArgumentException - configurationId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.