com.verisign.epp.framework

## Interface EPPPollDataSource

- All Known Implementing Classes:
    PollDataSource

      public interface EPPPollDataSource

  Represents an EPPPollDataSource interface that is implemented by any class that needs to manipulate their own data source.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `delete(java.lang.Object aRecp, java.lang.String aMsgId, java.lang.Object aContextData)` Deletes a message from a recipients poll queue my message identifier.
    `EPPPollDataRecord` | `get(java.lang.Object aRecp, java.lang.Object aContextData)` Gets the next poll data record for the specified recipient.
    `void` | `put(java.lang.Object aRecp, java.lang.String aKind, java.lang.Object aData, java.lang.Object aContextData)` Puts a message in the poll queue associated with `aRecp`.

- - ### Method Detail

    - #### get

          EPPPollDataRecord get(java.lang.Object aRecp,
                                java.lang.Object aContextData)
                         throws EPPPollQueueException

      Gets the next poll data record for the specified recipient. The concrete class used to specify the recipient is specific to the concrete `EPPPollData`.
      Parameters:
        `aRecp` - Recipient of the poll message. The concrete class is defined by the concrete `EPPPollDataSource`.
        `aContextData` - Server specific data that is passed through to the data source (i.e. database connection).
      Returns:
        Next poll data record. The record is not removed from the recipients queue
      Throws:
        `EPPPollQueueException` - Error getting message from queue

    - #### put

          void put(java.lang.Object aRecp,
                   java.lang.String aKind,
                   java.lang.Object aData,
                   java.lang.Object aContextData)
            throws EPPPollQueueException

      Puts a message in the poll queue associated with `aRecp`.
      Parameters:
        `aRecp` - Recipient of the poll message. The concrete class is defined by a concrete `EPPPollDataSource`.
        `aKind` - Defines the kind of the poll message. The kinds of messages supported is based on the concrete `EPPPollDataSource`.
        `aData` - Poll message data. The concrete class is specific to the concrete `EPPPollDataSource`
        `aContextData` - Server specific data that is passed through to the data source (i.e. database connection).
      Throws:
        `EPPPollQueueException` - Error putting message in queue

    - #### delete

          int delete(java.lang.Object aRecp,
                     java.lang.String aMsgId,
                     java.lang.Object aContextData)
              throws EPPPollQueueException

      Deletes a message from a recipients poll queue my message identifier.
      Parameters:
        `aRecp` - Recipient queue. The concrete class is defined by the concrete `EPPPollDataSource`.
        `aMsgId` - identifier to delete
        `aContextData` - Server specific data that is passed through to the data source (i.e. database connection).
      Returns:
        Number of messages left in queue
      Throws:
        `EPPPollQueueException` - Error deleting the message