Interface EffortNotificationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface EffortNotificationSession extends OsidSession

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

  • Method Details

    • getFoundryId

      Id getFoundryId()
      Gets the Foundry Id associated with this session.
      Returns:
      the Foundry Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getFoundry

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

      boolean canRegisterForEffortNotifications()
      Tests if this user can register for Effort 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.
    • useFederatedFoundryView

      void useFederatedFoundryView()
      Federates the view for methods in this session. A federated view will include efforts in foundries which are children of this foundry in the foundry hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedFoundryView

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

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

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

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

      void registerForNewEfforts() throws OperationFailedException, PermissionDeniedException
      Register for notifications of new efforts. EffortReceiver.newEfforts() is invoked when a new Effort appears in this foundry.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForNewEffortsForResource

      void registerForNewEffortsForResource(Id resourceId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of new efforts for the given resource Id . EffortReceiver.newEfforts() is invoked when a new Effort is created.
      Parameters:
      resourceId - the Id of the resource to monitor
      Throws:
      NullArgumentException - resourceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForNewEffortsForCommission

      void registerForNewEffortsForCommission(Id commissionId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of new efforts for the given commission Id . EffortReceiver.newEfforts() is invoked when a new Effort is created.
      Parameters:
      commissionId - the Id of the commission to monitor
      Throws:
      NullArgumentException - commissionId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForNewEffortsForWork

      void registerForNewEffortsForWork(Id workId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of new efforts for the given work Id . EffortReceiver.newEfforts() is invoked when a new Effort is created.
      Parameters:
      workId - the Id of the work to monitor
      Throws:
      NullArgumentException - workId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedEfforts

      void registerForChangedEfforts() throws OperationFailedException, PermissionDeniedException
      Registers for notification of updated efforts. EffortReceiver.changedEfforts() is invoked when an effort in this foundry is changed.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedEffortsForResource

      void registerForChangedEffortsForResource(Id resourceId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of updated efforts for the given resource Id . EffortReceiver.changedEfforts() is invoked when an effort in this foundry is changed.
      Parameters:
      resourceId - the Id of the resource to monitor
      Throws:
      NullArgumentException - resourceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedEffortsForCommission

      void registerForChangedEffortsForCommission(Id commissionId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of updated efforts for the given commission Id . EffortReceiver.changedEfforts() is invoked when an effort in this foundry is changed.
      Parameters:
      commissionId - the Id of the commission to monitor
      Throws:
      NullArgumentException - commissionId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedEffortsForWork

      void registerForChangedEffortsForWork(Id workId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of updated efforts for the given work Id . EffortReceiver.changedEfforst() is invoked when an effort in this foundry is changed.
      Parameters:
      workId - the Id of the work to monitor
      Throws:
      NullArgumentException - workId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedEffort

      void registerForChangedEffort(Id effortId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of an updated effort. EffortReceiver.changedEfforts() is invoked when the specified effort in this foundry is changed.
      Parameters:
      effortId - the Id of the Effort to monitor
      Throws:
      NullArgumentException - effortId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedEfforts

      void registerForDeletedEfforts() throws OperationFailedException, PermissionDeniedException
      Registers for notification of deleted efforts. EffortReceiver.deletedEfforts() is invoked when an effort is deleted or removed from this foundry.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedEffortsForResource

      void registerForDeletedEffortsForResource(Id resourceId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of deleted efforts for the given resource Id . EffortReceiver.deletedEfforts() is invoked when an effort in this foundry is removed or deleted.
      Parameters:
      resourceId - the Id of the resource to monitor
      Throws:
      NullArgumentException - resourceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedEffortsForCommission

      void registerForDeletedEffortsForCommission(Id commissionId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of deleted efforts for the given commission Id . EffortReceiver.deletedEfforts() is invoked when an effort in this foundry is removed or deleted.
      Parameters:
      commissionId - the Id of the commission to monitor
      Throws:
      NullArgumentException - commissionId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedEffortsForWork

      void registerForDeletedEffortsForWork(Id workId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of deleted efforts for the given work Id . EffortReceiver.deletedEfforts() is invoked when an effort in this foundry is removed or deleted.
      Parameters:
      workId - the Id of the work to monitor
      Throws:
      NullArgumentException - workId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedEffort

      void registerForDeletedEffort(Id effortId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of a deleted effort. EffortReceiver.deletedEfforts() is invoked when the specified effort is deleted or removed from this foundry.
      Parameters:
      effortId - the Id of the Effort to monitor
      Throws:
      NullArgumentException - effortId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.