Sessions in the Solace JCSMP API

When a context is established, one or more sessions can be created within that context. A session creates a single, client connection to an event broker for sending and receiving messages.

A session provides the following primary services:

  • client connection
  • update and retrieve session properties
  • retrieve session statistics
  • add and remove subscriptions
  • create destinations and endpoints
  • publish and receive Direct messages
  • publish Guaranteed messages
  • make requests/replies or create requestors
  • create Guaranteed message flows to receive Guaranteed messages
  • create Browsers
  • create cache sessions

When configuring a session, the following must be provided:

  • Session properties to define the operating characteristics of the client connection to the event broker.
  • A message callback for Direct messages that are received.
  • An event handling callback for events that occur for the session (optional for JCSMP).

In the Solace JCSMP API, the interface used for creating sessions is com.solacesystems.jcsmp.JCSMPSession.

The figure below shows some of the fundamental processing components that are dependent on a session.

Session and its Aggregates