KubeMQ
Client SDKsJavaReference

Events

Real-time pub/sub API for Events and Events Store in the KubeMQ Java SDK reference, covering publishing and subscribing.

Use PubSubClient for fire-and-forget events. Messages are expressed with EventMessage builders; subscriptions use EventsSubscription to wire channel, group, and callbacks.

publishEvent

void publishEvent(EventMessage message) throws KubeMQException

Publishes an event to the channel embedded in EventMessage. This is the preferred method name.

Parameters:

NameTypeRequiredDescription
messageEventMessageYesBuilt via EventMessage.builder()

Returns: void — events are fire-and-forget; no broker acknowledgement is returned.

Throws: KubeMQException — transport, validation, or auth failures.

Note: sendEventsMessage is a deprecated alias for publishEvent (deprecated since 2.2.0, forRemoval=true at v3.0). Prefer publishEvent.

subscribeToEvents

void subscribeToEvents(EventsSubscription subscription) throws KubeMQException

Registers a consumer on a channel with optional consumer group for competing consumers.

Parameters:

NameTypeRequiredDescription
subscriptionEventsSubscriptionYesChannel, group, delivery callbacks

Throws: KubeMQException — subscription cannot be established.

Note: Keep callback bodies non-blocking; move heavy processing to worker threads.

EventMessage builder

MethodDescription
.channel(String)Target channel
.body(byte[])Binary payload
.metadata(String)UTF-8 metadata
.tags(Map<String,String>)Key/value tags

Quick Usage

Events.java
try (PubSubClient pub = PubSubClient.builder()
        .address("localhost:50000")
        .clientId("events-demo")
        .build()) {
    EventMessage msg = EventMessage.builder()
        .channel("events.orders")
        .body("created".getBytes(StandardCharsets.UTF_8))
        .build();
    pub.publishEvent(msg);
}

See Also

Was this page helpful?

On this page