Interface StepConstrainerEnablerNotificationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface StepConstrainerEnablerNotificationSession extends OsidSession

This session defines methods to receive notifications on adds/changes to StepConstrainerEnabler objects in this Office . This also includes existing StepConstrainerEnablers that may appear or disappear due to changes in the Office 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 StepConstrainerEnablerLookupSession .

  • Method Details

    • getOfficeId

      Id getOfficeId()
      Gets the Office Id associated with this session.
      Returns:
      the Office Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getOffice

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

      boolean canRegisterForStepConstrainerEnablerNotifications()
      Tests if this user can register for StepConstrainerEnabler 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.
    • useFederatedOfficeView

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

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

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

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

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

      void registerForNewStepConstrainerEnablers() throws OperationFailedException, PermissionDeniedException
      Register for notifications of new step constrainer enablers. StepConstrainerEnablerReceiver.newStepConstrainerEnablers() is invoked when a new StepConstrainerEnabler appears in this office.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedStepConstrainerEnablers

      void registerForChangedStepConstrainerEnablers() throws OperationFailedException, PermissionDeniedException
      Registers for notification of updated office enabelrs. StepConstrainerEnablerReceiver.changedStepConstrainerEnablers() is invoked when a step constrainer enabler in this office is changed.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedStepConstrainerEnabler

      void registerForChangedStepConstrainerEnabler(Id stepConstrainerEnablerId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of an updated step constrainer enabler. ProvisionableReceiver.changedStepConstrainerEnablers() is invoked when the specified step constrainer enabler in this office is changed.
      Parameters:
      stepConstrainerEnablerId - the Id of the StepConstrainerEnabler to monitor
      Throws:
      NullArgumentException - stepConstrainerEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedStepConstrainerEnablers

      void registerForDeletedStepConstrainerEnablers() throws OperationFailedException, PermissionDeniedException
      Registers for notification of deleted step constrainer enablers. StepConstrainerEnablerReceiver.deletedStepConstrainerEnablers() is invoked when a step constrainer enabler is deleted or removed from this office.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedStepConstrainerEnabler

      void registerForDeletedStepConstrainerEnabler(Id stepConstrainerEnablerId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of a deleted step constrainer enabler. StepConstrainerEnablerReceiver.deletedStepConstrainerEnablers() is invoked when the specified step constrainer enabler is deleted or removed from this office.
      Parameters:
      stepConstrainerEnablerId - the Id of the StepConstrainerEnabler to monitor
      Throws:
      NullArgumentException - stepConstrainerEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.