Interface BidNotificationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface BidNotificationSession extends OsidSession

This session defines methods to receive notifications on adds/changes to Bids in this AuctionHouse . This also includes existing bids that may appear or disappear due to changes in the AuctionHouse 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 BidLookupSession .

  • Method Details

    • getAuctionHouseId

      Id getAuctionHouseId()
      Gets the AuctionHouse Id associated with this session.
      Returns:
      the AuctionHouse Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getAuctionHouse

      Gets the AuctionHouse associated with this session.
      Returns:
      the auction house
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canRegisterForBidNotifications

      boolean canRegisterForBidNotifications()
      Tests if this user can register for Bid 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.
    • useFederatedAuctionHouseView

      void useFederatedAuctionHouseView()
      Federates the view for methods in this session. A federated view will include bids in auction houses which are children of this auction house in the auction house hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedAuctionHouseView

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

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

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

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

      void registerForNewBids() throws OperationFailedException, PermissionDeniedException
      Register for notifications of new bids. BidReceiver.newBids() is invoked when a new Bid appears in this auction house.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForNewBidsForAuction

      void registerForNewBidsForAuction(Id auctionId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of new bids for the given auction Id . BidReceiver.newBids() is invoked when a new Bid is created.
      Parameters:
      auctionId - the Id of the auction to monitor
      Throws:
      NullArgumentException - auctionId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForNewBidsForBidder

      void registerForNewBidsForBidder(Id resourceId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of new bids for the given resource Id . BidReceiver.newBids() is invoked when a new Bid 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.
    • registerForChangedBids

      void registerForChangedBids() throws OperationFailedException, PermissionDeniedException
      Registers for notification of updated bids. BidReceiver.changedBids() is invoked when a bid in this auction house is changed.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedBidsForAuction

      void registerForChangedBidsForAuction(Id auctionId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of updated bids for the given auction Id . BidReceiver.changedBids() is invoked when a Bid in this auction house is changed.
      Parameters:
      auctionId - the Id of the auction to monitor
      Throws:
      NullArgumentException - auctionId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedBidsForBidder

      void registerForChangedBidsForBidder(Id resourceId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of updated bids for the given resource Id . BidReceiver.changedBids() is invoked when a Bid in this auction house 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.
    • registerForChangedBid

      void registerForChangedBid(Id bidId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of an updated bid. BidReceiver.changedBids() is invoked when the specified bid in this auction house is changed.
      Parameters:
      bidId - the Id of the Bid to monitor
      Throws:
      NullArgumentException - bidId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedBids

      void registerForDeletedBids() throws OperationFailedException, PermissionDeniedException
      Registers for notification of deleted bids. BidReceiver.deletedBids() is invoked when a bid is deleted or removed from this auction house.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedBidsForAuction

      void registerForDeletedBidsForAuction(Id auctionId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of deleted bids for the given auction Id . BidReceiver.deletedBids() is invoked when a Bid is deleted or removed from this auction house.
      Parameters:
      auctionId - the Id of the auction to monitor
      Throws:
      NullArgumentException - auctionId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedBidsForBidder

      void registerForDeletedBidsForBidder(Id resourceId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of deleted bids for the given resource Id . BidReceiver.deletedBids() is invoked when a Bid is deleted or removed from this auction house.
      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.
    • registerForDeletedBid

      void registerForDeletedBid(Id bidId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of a deleted bid. BidReceiver.deletedBids() is invoked when the specified bid is deleted or removed from this auction house.
      Parameters:
      bidId - the Id of the Bid to monitor
      Throws:
      NullArgumentException - bidId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.