#define ONIXS_B3_BOE_API_DECL(typeKind, typeName)
#define ONIXS_B3_BOE_EXPORTED
#define ONIXS_B3_BOE_NOTHROW
The time point without the time-zone information.
virtual void onExecutionReportNew(const Messaging::ExecutionReportNew200 &, Session *)
Invoked when ExecutionReportNew200 message has received.
virtual void onNotApplied(const Messaging::NotApplied8 &, Session *)
virtual void onNegotiateReject(const Messaging::NegotiateReject3 &, Session *)
Invoked when NegotiateReject3 message has received.
virtual void onMessageSending(char *, size_t, Session *)
Called when the SBE message is about to be sent to the wire.
virtual void onSequence(const Messaging::Sequence9 &, Session *)
Invoked when Sequence9 message has received.
virtual void onQuoteRequest(const Messaging::QuoteRequest401 &, Session *)
Invoked when QuoteRequest401 message has received.
virtual void onExecutionReportTrade(const Messaging::ExecutionReportTrade203 &, Session *)
Invoked when ExecutionReportTrade203 message has received.
virtual void onRetransmission(const Messaging::Retransmission13 &, Session *)
Invoked when Retransmission13 message has received.
virtual void onEstablishAck(const Messaging::EstablishAck5 &, Session *)
Invoked when EstablishAck5 message has received.
virtual void onAllocationReport(const Messaging::AllocationReport602 &, Session *)
Invoked when AllocationReport602 message has received.
virtual void onEstablishReject(const Messaging::EstablishReject6 &, Session *)
Invoked when EstablishReject6 message has received.
virtual ~SessionListener()=0
virtual void onReceivedBytes(const char *, size_t, const ReceivedDataTimestamp &, Session *)
Called as soon as bytes are received from the wire.
virtual void onRetransmitReject(const Messaging::RetransmitReject14 &, Session *)
Invoked when RetransmitReject14 message has received.
virtual void onStateChange(SessionStateId::Enum, SessionStateId::Enum, Session *)
Called when the session changes its state.
virtual void onError(SessionErrorReason::Enum, const std::string &, Session *, Messaging::SbeMessage)
Called when an error condition is detected.
virtual void onQuote(const Messaging::Quote403 &, Session *)
Invoked when Quote403 message has received.
virtual void onQuoteRequestReject(const Messaging::QuoteRequestReject405 &, Session *)
Invoked when QuoteRequestReject405 message has received.
virtual void onWarning(SessionWarningReason::Enum, const std::string &, Session *, Messaging::SbeMessage)
Called when a warning condition is detected.
virtual void onQuoteStatusReport(const Messaging::QuoteStatusReport402 &, Session *)
Invoked when QuoteStatusReport402 message has received.
virtual void onTerminate(const Messaging::Terminate7 &, Session *)
Invoked when Terminate7 message has received.
virtual void onQuoteCancel(const Messaging::QuoteCancel404 &, Session *)
Invoked when QuoteCancel404 message has received.
virtual void onPositionMaintenanceReport(const Messaging::PositionMaintenanceReport503 &, Session *)
Invoked when PositionMaintenanceReport503 message has received.
virtual void onExecutionReportForward(const Messaging::ExecutionReportForward205 &, Session *)
Invoked when ExecutionReportForward205 message has received.
virtual void onSecurityDefinitionResponse(const Messaging::SecurityDefinitionResponse301 &, Session *)
Invoked when SecurityDefinitionResponse301 message has received.
virtual void onExecutionReportModify(const Messaging::ExecutionReportModify201 &, Session *)
Invoked when ExecutionReportModify201 message has received.
virtual void onExecutionReportCancel(const Messaging::ExecutionReportCancel202 &, Session *)
Invoked when ExecutionReportCancel202 message has received.
virtual void onOrderMassActionReport(const Messaging::OrderMassActionReport702 &, Session *)
Invoked when OrderMassActionReport702 message has received.
virtual void onBusinessMessageReject(const Messaging::BusinessMessageReject206 &, Session *)
Invoked when BusinessMessageReject206 message has received.
virtual void onNegotiateResponse(const Messaging::NegotiateResponse2 &, Session *)
Invoked when NegotiateResponse2 message has received.
virtual void onExecutionReportReject(const Messaging::ExecutionReportReject204 &, Session *)
Invoked when ExecutionReportReject204 message has received.
AllocationReport message is as response of AllocationInstruction message.
BusinessMessageReject message can reject an application-level message which fulfills session level ru...
The EstablishmentAck message is sent when an Establish message is accepted by B3. EstablishmentAck me...
EstablishmentReject message is sent when an Establish message is rejected by B3 informing the reason ...
ExecutionReport - Cancel message is sent in response to Order Cancel Request as well as to report uns...
Execution Report – Forward message is sent with order fills were traded and processed on Matching Eng...
Execution Report - Modify message is sent in response to OrderCancelReplaceRequest or SimpleModifyOrd...
Execution Report - New message is sent in response to a NewOrderSingle or SimpleNewOrder messages,...
Execution Report - Reject message notifies the reason a client request was not accepted by Matching E...
Execution Report – Trade/Trade Bust message is sent with order fills that were traded and processed o...
NegotiateReject message is sent when B3 rejects a Negotiate message sent by the client.
The NegotiationResponse message is sent when a Negotiate message from the client is accepted by B3.
NotApplied message is sent when B3 detects messages that already been sent (concept of idempotence) o...
OrderMassActionReport message is used to acknowledge an OrderMassActionRequest message.
PositionMaintenanceReport message is sent owner of a position (holder) in response to a PositionMaint...
Quote message is used as the response to a QuoteRequest message, tradeable, and restricted tradeable ...
The QuoteCancel message is used to cancel a previous QuoteRequest message.
The Quote Request message is used within the context of this Forward transaction in which two parties...
The QuoteRequestReject message is used when a QuoteRequest is not accept by B3 due to missing or inco...
The QuoteStatusReport message is to inform the current status of forward acceptance.
Retransmission message is sent when a RetransmitRequest message from the client is accepted by B3.
RetransmitReject message is sent when a RetransmitRequest message is rejected by B3....
The SecurityDefinitioresponse message is sent in response to an attempt to create a new security defi...
Sequence message specifies the sequence number of the next business message both: Recoverable (B3 to ...
Terminate message is sent to indicate that the sender is going to disconnect the TCP socket connectio...
Represents a timestamp of the received data.
@ Software
Timestamp provided by the OS kernel / user-level network stack.
@ Hardware
Timestamp provided by the network card.
@ None
No timestamp available.
std::string toString() const
Messaging::Timestamp time_
The timestamp.
static const char * toString(Enum type) noexcept
@ PluggableSessionStorageException
An exception is thrown from the user-provided Session Storage.
@ CannotRestoreSessionState
Session state cannot be restored.
@ CannotEstablishConnection
Connection cannot be established.
@ DecodingError
Received an invalid incoming message.
@ IncomingMessageGapQueueOverflow
The maximum size of the incoming message gap queue is exceeded.
@ UnexpectedSessionVerId
A message with unexpected sessionVerId is received.
@ KeepAliveIntervalLapsed
When two times the KeepAliveInterval has expired and no keep alive message is received then the sessi...
@ ExchangeInitiatedTerminateMessage
The Exchange sent the initial Terminate message.
@ UnexpectedMessageType
First message received is not the NegotiationResponse or EstablishmentAck message.
@ LinkErrorIsDetected
Telecommunication link error is detected.
@ TerminateInReplyOnEstablish
The Terminate message is received in reply to the Establish message.
@ CannotRestoreConnection
Connection cannot be restored.
@ GeneralError
A general session-related error.
@ NegotiationReject
The Negotiation Reject message is received in reply to the Negotiation message.
@ MsgSeqNumTooLow
The incoming message has a sequence number less than expected and the PossRetransFlag is not set,...
@ InternalError
Internal error.
@ LinkErrorIsDetectedDuringSessionEstablishment
After sending the initial Negotiate or Establish message the telecommunication link error is detected...
@ EstablishmentReject
The Establishment Reject message is received in reply to the Establish message.
@ ExceptionDuringProcessingOfIncomingMessage
Exception during processing of an incoming message.
static const char * toString(Enum type) noexcept
@ UnexpectedNextSeqNo
Received an unexpected NextSeqNo value.
@ PluggableSessionStorageException
An exception is thrown from the user-provided Session Storage.
@ CannotRestoreSessionState
Session state cannot be restored.
@ RetransmitReject
The Retransmit Reject message is received in reply to the Retransmit Request message.
@ UnexpectedSessionId
Received a message with an unexpected sessionId.
@ LicenseExpiration
Raised when the license will expire in less than SessionSettings::licenseAlertingDaysBeforeExpiration
@ RestoreSessionStateWarning
Session state cannot be restored.
@ SequenceGapIsDetected
Incoming message sequence gap is detected.
@ CannotSetSocketOption
Error setting socket option.
@ MsgSeqNumOutOfRange
The incoming message has a sequence number is out of the expected range and the PossRetransFlag is se...
@ ExceptionInEventHandler
Exception was thrown from user's event handler.
@ LinkErrorIsDetected
Telecommunication link error is detected.
@ AsyncFileBasedStorageQueueOverflow
Raised when the AsyncFileBasedStorage queue exceeded SessionSettings::asyncFileBasedStorageQueueMaxSi...
@ GeneralWarning
General session-related warning.
@ UnexpectedSbeSchemaVersion
Unexpected SBE Schema version is received from B3.
@ ReceiveTimeoutIsDetected
Raised when the KeepAliveInterval has expired and no keep alive message is received.
@ LinkErrorIsDetectedDuringSessionEstablishment
After sending the initial Negotiate or Establish message the telecommunication link error is detected...
@ CannotBackup
Cannot backup the file.
@ UnsupportedMessageType
Received an unsupported message type.