Class MatsSocketServer.MatsSocketEnvelopeWithMetaDto

java.lang.Object
io.mats3.matssocket.MatsSocketServer.MatsSocketEnvelopeDto
io.mats3.matssocket.MatsSocketServer.MatsSocketEnvelopeWithMetaDto
All Implemented Interfaces:
Cloneable
Enclosing interface:
MatsSocketServer

public static class MatsSocketServer.MatsSocketEnvelopeWithMetaDto extends MatsSocketServer.MatsSocketEnvelopeDto implements Cloneable
Extension of MatsSocketServer.MatsSocketEnvelopeDto which carries some metadata about the processing of the Envelope. When MatsSocketEnvelopes are exposed from this API, it is via instances of this class. The class if fully serializable via field serialization, and can directly be sent over Mats.

Note: When instance of this class is exposed through this API, there will only be a single instance created for any MatsSocketServer.MessageEventListener and also the MatsSocketServer.ActiveMatsSocketSession.getLastEnvelopes(). This means that you MUST NOT modify any fields on this single instance. However, this class implements Cloneable (shallow clone), not throwing on MatsSocketServer.MatsSocketEnvelopeDto.clone(). If you in a MatsSocketServer.MessageEventListener want to modify the message, you should clone it and modify and use the clone.