Interface ServerSession.Extension
-
- All Known Implementing Classes:
AcknowledgedMessagesSessionExtension,ActivityExtension.SessionExtension,BinarySessionExtension,ServerSession.Extension.Adapter
- Enclosing interface:
- ServerSession
public static interface ServerSession.ExtensionExtension 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.Extensionprocessing.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.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classServerSession.Extension.AdapterDeprecated.
-
Method Summary
All Methods Instance Methods Default Methods Modifier and Type Method Description default voidincoming(ServerSession session, ServerMessage.Mutable message, Promise<Boolean> promise)Callback method invoked every time a message is incoming.default voidoutgoing(ServerSession session, ServerMessage.Mutable message, Promise<ServerMessage.Mutable> promise)Callback method invoked every time a message is outgoing.default booleanrcv(ServerSession session, ServerMessage.Mutable message)Blocking version ofincoming(ServerSession, ServerMessage.Mutable, Promise)for non-meta messages.default booleanrcvMeta(ServerSession session, ServerMessage.Mutable message)Blocking version ofincoming(ServerSession, ServerMessage.Mutable, Promise)for meta messages.default ServerMessagesend(ServerSession session, ServerMessage message)Blocking version ofoutgoing(ServerSession, ServerMessage.Mutable, Promise)for non-meta messages.default booleansendMeta(ServerSession session, ServerMessage.Mutable message)Blocking version ofoutgoing(ServerSession, ServerMessage.Mutable, Promise)for meta messages.
-
-
-
Method Detail
-
incoming
default void incoming(ServerSession session, ServerMessage.Mutable message, Promise<Boolean> promise)
Callback method invoked every time a message is incoming.
- Parameters:
session- the session that sent the messagemessage- the incoming messagepromise- the promise to notify whether message processing should continue
-
rcv
default boolean rcv(ServerSession session, ServerMessage.Mutable message)
Blocking version of
incoming(ServerSession, ServerMessage.Mutable, Promise)for non-meta messages.- Parameters:
session- the session that sent the messagemessage- the incoming message- Returns:
- whether message processing should continue
-
rcvMeta
default boolean rcvMeta(ServerSession session, ServerMessage.Mutable message)
Blocking version of
incoming(ServerSession, ServerMessage.Mutable, Promise)for meta messages.- Parameters:
session- the session that sent the messagemessage- the incoming message- Returns:
- whether message processing should continue
-
outgoing
default void outgoing(ServerSession session, ServerMessage.Mutable message, Promise<ServerMessage.Mutable> promise)
Callback method invoked every time a message is outgoing.
- Parameters:
session- the session receiving the messagemessage- the outgoing messagepromise- the promise to notify with the message to send or null to not send the message
-
send
default ServerMessage send(ServerSession session, ServerMessage message)
Blocking version of
outgoing(ServerSession, ServerMessage.Mutable, Promise)for non-meta messages.- Parameters:
session- the session receiving the messagemessage- the outgoing message- Returns:
- the message to send or null to not send the message
-
sendMeta
default boolean sendMeta(ServerSession session, ServerMessage.Mutable message)
Blocking version of
outgoing(ServerSession, ServerMessage.Mutable, Promise)for meta messages.- Parameters:
session- the session receiving the messagemessage- the outgoing message- Returns:
- whether message processing should continue
-
-