Interface ServerSession.Extension

All Known Implementing Classes:
AcknowledgedMessagesSessionExtension, ActivityExtension.SessionExtension, BinarySessionExtension, ServerSession.Extension.Adapter
Enclosing interface:
ServerSession

public static interface ServerSession.Extension

Extension API for ServerSession.

Implementations of this interface allow to modify incoming and outgoing messages for a particular session, before any other processing performed by the implementation but after BayeuxServer.Extension processing.

Multiple extensions can be registered; the extension receive methods are invoked in registration order, while the extension send methods are invoked in registration reverse order.

See Also:
ServerSession.addExtension(Extension), BayeuxServer.Extension
  • Method Details

    • rcv

      boolean rcv​(ServerSession session, ServerMessage.Mutable message)

      Callback method invoked every time a normal message is incoming.

      Parameters:
      session - the session that sent the message
      message - the incoming message
      Returns:
      true if message processing should continue, false if it should stop
    • rcvMeta

      boolean rcvMeta​(ServerSession session, ServerMessage.Mutable message)

      Callback method invoked every time a meta message is incoming.

      Parameters:
      session - the session that is sent the message
      message - the incoming meta message
      Returns:
      true if message processing should continue, false if it should stop
    • send

      ServerMessage send​(ServerSession session, ServerMessage message)

      Callback method invoked every time a normal message is outgoing.

      Parameters:
      session - the session receiving the message
      message - the outgoing message
      Returns:
      The message to send or null to not send the message
    • sendMeta

      boolean sendMeta​(ServerSession session, ServerMessage.Mutable message)

      Callback method invoked every time a meta message is outgoing.

      Parameters:
      session - the session receiving the message
      message - the outgoing meta message
      Returns:
      true if message processing should continue, false if it should stop