35using namespace OnixS::CME::iLink3::Messaging;
72 virtual const std::string &
id()
const = 0;
129 virtual void close(
bool doBackup =
false) = 0;
#define ONIXS_ILINK3_EXPORTED
A network iLink3 message.
The time point without the time-zone information.
virtual void close(bool doBackup=false)=0
Closes the storage.
virtual const std::string & id() const =0
virtual void outSeqNum(SeqNumber msgSeqNum)=0
Sets the sequence number of the next outgoing message.
virtual bool negotiated() const =0
virtual void previousUuid(UInt64 value)=0
Sets the UUID from the previously Established session.
virtual void storeInboundMessage(const NetworkMessage &message, SeqNumber msgSeqNum, Timestamp messageReceivingUtcTimestamp=Timestamp())=0
Logs the given inbound message.
virtual void previousSeqNum(SeqNumber msgSeqNum)=0
Sets the sequence number of the last business message published by CME with the PreviousUUID.
virtual void flush()=0
Flushes all internal buffers.
virtual UInt64 previousUuid() const =0
virtual void negotiated(bool negotiated)=0
Sets the "negotiated" status.
virtual UInt64 uuid() const =0
virtual void warmup(size_t messageSize, Timestamp ts=Timestamp())=0
Warmup the storage.
virtual void storeOutboundMessage(const NetworkMessage &message, SeqNumber msgSeqNum, Timestamp messageSendingUtcTimestamp=Timestamp())=0
Logs the given outgoing message.
virtual ~SessionStorage()=default
Destructor.
virtual SeqNumber inSeqNum() const =0
virtual void uuid(UInt64 value)=0
Sets Universally Unique Identifier (UUID).
virtual void sessionCreationTime(Timestamp)=0
Sets the session creation time.
virtual Timestamp sessionCreationTime() const =0
virtual SeqNumber previousSeqNum() const =0
virtual SeqNumber outSeqNum() const =0
virtual void inSeqNum(SeqNumber msgSeqNum)=0
Sets the expected sequence number of the next inbound message.
Messaging::UInt32 SeqNumber
static Enum parse(const std::string &)
@ Undefined
Undefined Session Storage.
@ FileBased
File-based Session Storage.
@ AsyncFileBased
Asynchronous File-Based Session Storage.
@ Pluggable
Pluggable Session Storage.
@ MemoryBased
Memory-based Session Storage.
static const char * toString(SessionStorageType::Enum)