public interface EventCallback extends MessageCallback
Event messages.
To receive events, a concrete instance of this callback must be created and registered with a DxlClient
instance via the DxlClient.addEventCallback(java.lang.String, com.opendxl.client.callback.EventCallback, boolean) method.
The following is a simple example of using an event callback:
final EventCallback myEventCallback =
event -> {
try {
System.out.println("Received event: "
+ new String(event.getPayload(), Message.CHARSET_UTF8));
} catch (UnsupportedEncodingException ex) {
ex.printStackTrace();
}
};
client.addEventCallback("/testeventtopic", myEventCallback);
NOTE: By default when registering an event callback the client will automatically subscribe
(DxlClient.subscribe(java.lang.String)) to the topic.
The following demonstrates a client that is sending an event message that would be received by the callback above.
// Create the event message
Event event = new Event("/testeventtopic");
// Populate the event payload
event.setPayload(Integer.toString(count).getBytes(Message.CHARSET_UTF8));
// Send the event
client.sendEvent(event);
| Modifier and Type | Method and Description |
|---|---|
void |
onEvent(Event event)
Invoked when an
Event has been received. |