Este conteúdo não está disponível no idioma selecionado.
1.3. PullPoint Client Scenario
Overview
In the pull-point client scenario, the pull-point client does not receive messages directly from the broker. Instead, the pull-point client allows messages to accumulate in a remote
PullPoint
object (which acts as a message drop-box) and retrieves the messages from time to time by invoking the getMessages
operation on the PullPoint
. Figure 1.2, “A PullPoint Client Scenario” provides an overview of this scenario.
Figure 1.2. A PullPoint Client Scenario
Clients in this scenario
There are two clients involved in this scenario:
- Publisher client—generates notification messages and publishes the messages on a specific topic, by sending them to the notification broker.
- PullPoint client—a client that uses a polling strategy to get notification messages. Instead of receiving notification messages directly from the broker, this client creates a remote
PullPoint
instance. Messages that accumulate in thePullPoint
can be retrieved at any time by invoking thegetMessages
operation on thePullPoint
.
Scenario steps
In this scenario, a pull-point client polls for notification messages as follows:
- The pull-point client creates a remote
PullPoint
instance by invoking thecreate
operation on theCreatePullPoint
interface in the broker. The return value from this operation contains a WS-Addressing reference to the remote pull-point. - The pull-point client creates a subscription by invoking the
subscribe
operation on the broker, passing the following operation arguments:- Topic name—specifies the topic that the client wants to subscribe to.
- Callback reference—a reference to the remote
PullPoint
instance that will receive the notifications on behalf of the client.
- A publisher client sends a notification message on a specific topic, by invoking the
notify
operation on the broker. - At any time, the pull-point client can retrieve messages that have accumulated in the
PullPoint
instance by invoking thegetMessages
operation on thePullPoint
.