Interface MyProvisionNotificationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface MyProvisionNotificationSession extends OsidSession

This session defines methods to receive notifications on adds/changes to Provision objects in this Distributor for resources related to the authenticated agent.This also includes existing provisions that may appear or disappear due to changes in the Distributor 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.

  • Method Details

    • getDistributorId

      Id getDistributorId()
      Gets the Distributor Id associated with this session.
      Returns:
      the Distributor Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getDistributor

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

      boolean canRegisterForProvisionNotifications()
      Tests if this user can register for Provision 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.
    • registerForNewProvisions

      void registerForNewProvisions() throws OperationFailedException, PermissionDeniedException
      Register for notifications of new provisions for resources related to the authenticated agent. ProvisionReceiver.newProvision() is invoked when a new Provision appears in this distributor.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForNewProvisionsForPool

      void registerForNewProvisionsForPool(Id poolId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of new provisions for the given pool Id for resources related to the authenticated agent. ProvisionReceiver.newProvision() is invoked when a new Provision is created.
      Parameters:
      poolId - the Id of the pool to monitor
      Throws:
      NullArgumentException - poolId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForNewProvisionsForQueue

      void registerForNewProvisionsForQueue(Id queueId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of new provisions for the given queue Id for resources related to the authenticated agent. ProvisionReceiver.newProvision() is invoked when a new Provision is created.
      Parameters:
      queueId - the Id of the queue to monitor
      Throws:
      NullArgumentException - queueId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForNewProvisionsForBroker

      void registerForNewProvisionsForBroker(Id brokerId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of new provisions for the given broker Id for resources related to the authenticated agent. ProvisionReceiver.newProvision() is invoked when a new Provision is created.
      Parameters:
      brokerId - the Id of the broker to monitor
      Throws:
      NullArgumentException - brokerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedProvisions

      void registerForChangedProvisions() throws OperationFailedException, PermissionDeniedException
      Registers for notification of updated provisions for resources related to the authenticated agent. ProvisionReceiver.changedProvision() is invoked when a provision in this distributor is changed.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedProvisionsForPool

      void registerForChangedProvisionsForPool(Id poolId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of updated provisions for the given pool Id for resources related to the authenticated agent. ProvisionReceiver.changedProvision() is invoked when a provision in this distributor is changed.
      Parameters:
      poolId - the Id of the pool to monitor
      Throws:
      NullArgumentException - poolId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedProvisionsForQueue

      void registerForChangedProvisionsForQueue(Id queueId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of updated provisions for the given queue Id for resources related to the authenticated agent. ProvisionReceiver.changedProvision() is invoked when a provision in this distributor is changed.
      Parameters:
      queueId - the Id of the queue to monitor
      Throws:
      NullArgumentException - queueId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedProvisionsForBroker

      void registerForChangedProvisionsForBroker(Id brokerId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of updated provisions for the given broker Id for resources related to the authenticated agent. ProvisionReceiver.changedProvision() is invoked when a provision in this distributor is changed.
      Parameters:
      brokerId - the Id of the broker to monitor
      Throws:
      NullArgumentException - brokerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedProvisions

      void registerForDeletedProvisions() throws OperationFailedException, PermissionDeniedException
      Registers for notification of deleted provisions for resources related to the authenticated agent. ProvisionReceiver.deletedProvision() is invoked when a provision is deleted or removed from this distributor.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedProvisionsForPool

      void registerForDeletedProvisionsForPool(Id poolId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of deleted provisions for the given pool Id for resources related to the authenticated agent. ProvisionReceiver.deletedProvision() is invoked when a provision in this distributor is removed or deleted.
      Parameters:
      poolId - the Id of the pool to monitor
      Throws:
      NullArgumentException - poolId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedProvisionsForQueue

      void registerForDeletedProvisionsForQueue(Id queueId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of deleted provisions for the given queue Id for resources related to the authenticated agent. ProvisionReceiver.deletedProvision() is invoked when a provision in this distributor is removed or deleted.
      Parameters:
      queueId - the Id of the queue to monitor
      Throws:
      NullArgumentException - queueId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedProvisionsForBroker

      void registerForDeletedProvisionsForBroker(Id brokerId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of deleted provisions for the given broker Id for resources related to the authenticated agent. ProvisionReceiver.deletedProvision() is invoked when a provision in this distributor is removed or deleted.
      Parameters:
      brokerId - the Id of the vroker to monitor
      Throws:
      NullArgumentException - queueId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.