Interface BinaryEntryPointConnection
- All Superinterfaces:
uk.co.real_logic.artio.fixp.FixPConnection
public interface BinaryEntryPointConnection
extends uk.co.real_logic.artio.fixp.FixPConnection
Represents a Session Connection of the Binary Entrypoint protocol.
This is a FIXP session protocol with SBE encoded binary messages. It is very similar to CME's iLink3 protocol.
-
Nested Class Summary
Nested classes/interfaces inherited from interface uk.co.real_logic.artio.fixp.FixPConnection
uk.co.real_logic.artio.fixp.FixPConnection.State -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final longCan be used to create an offline context for a session where you don't know the session version id of the next logon.Fields inherited from interface uk.co.real_logic.artio.fixp.FixPConnection
NOT_AWAITING_RETRANSMIT -
Method Summary
Modifier and TypeMethodDescriptionb3.entrypoint.fixp.sbe.CancelOnDisconnectTypeGets the cancel on disconnect configuration for this session.longGets the cancel on disconnect timeout window in milliseconds.voidInitiate the finish sending process within BinaryEntryPoint.booleanGets whether a replay is currently happening or not.key()longGets the session id.longGets the session version id.voidterminate(b3.entrypoint.fixp.sbe.TerminationCode terminationCode) Terminate the connection.uk.co.real_logic.artio.Reply<uk.co.real_logic.artio.messages.ThrottleConfigurationStatus>throttleMessagesAt(int throttleWindowInMs, int throttleLimitOfMessages) Override Artio's message throttle configuration for a given session.longtrySendNotApplied(long fromSeqNo, long count) Send a notApplied message to the client.Methods inherited from interface uk.co.real_logic.artio.fixp.FixPConnection
abort, canSendMessage, commit, connectionId, counterpartyKeepAliveIntervalInMs, isConnected, nextRecvSeqNo, nextRecvSeqNo, nextSentSeqNo, nextSentSeqNo, ourKeepAliveIntervalInMs, requestDisconnect, state, tryClaim, tryClaim, trySendSequence
-
Field Details
-
NEXT_SESSION_VERSION_ID
static final long NEXT_SESSION_VERSION_IDCan be used to create an offline context for a session where you don't know the session version id of the next logon.- See Also:
-
-
Method Details
-
terminate
void terminate(b3.entrypoint.fixp.sbe.TerminationCode terminationCode) Terminate the connection. This method sends a terminate message. Note that the terminate message isn't guaranteed to be sent at the point that the message returns but the connection will retry on it's library's duty-cycle if it hasn't been sent. The session won't be fully terminated until the connection has received a reply from its counter-party or timed out.- Parameters:
terminationCode- the terminate code to use when sending the terminate message.
-
trySendNotApplied
long trySendNotApplied(long fromSeqNo, long count) Send a notApplied message to the client.- Parameters:
fromSeqNo- the first applied sequence number.count- How many messages have not been applied.- Returns:
- position.
-
sessionId
long sessionId()Gets the session id. This corresponds to the session id within the Negotiate or Establish message used in the logon process.- Returns:
- the session id.
-
sessionVerId
long sessionVerId()Gets the session version id. This corresponds to the session version id within the Negotiate or Establish message used in the logon process.- Returns:
- the session id.
-
finishSending
void finishSending()Initiate the finish sending process within BinaryEntryPoint. This methods sends a FinishedSending message to its counter-party and awaits the receipt of the finished sending message from the counter-party. This messages agree the end of the sequence of messages of the current session version id. See the Binary EntryPoint specification for more details on the finished sending protocol. Once this method has been invoked then you cannot send any messages via theFixPConnection.tryClaim(MessageEncoderFlyweight)method. For this method to be successful you need to have an established session or one that has received a finished sending message from its counterparty. -
key
BinaryEntryPointKey key()- Specified by:
keyin interfaceuk.co.real_logic.artio.fixp.FixPConnection
-
cancelOnDisconnectType
b3.entrypoint.fixp.sbe.CancelOnDisconnectType cancelOnDisconnectType()Gets the cancel on disconnect configuration for this session. This is the same field value that has been sent in the Establish message.- Returns:
- the cancel on disconnect configuration for this session.
- See Also:
-
codTimeoutWindow()FixPCancelOnDisconnectTimeoutHandler
-
codTimeoutWindow
long codTimeoutWindow()Gets the cancel on disconnect timeout window in milliseconds. This is the field value taken from the establish message, it cannot be over 60 seconds.- Returns:
- the cancel on disconnect timeout window in milliseconds.
- See Also:
-
cancelOnDisconnectType()FixPCancelOnDisconnectTimeoutHandler
-
throttleMessagesAt
uk.co.real_logic.artio.Reply<uk.co.real_logic.artio.messages.ThrottleConfigurationStatus> throttleMessagesAt(int throttleWindowInMs, int throttleLimitOfMessages) Override Artio's message throttle configuration for a given session.- Parameters:
throttleWindowInMs- the time window to apply the throttle over.throttleLimitOfMessages- the maximum number of messages that can be received within the time window.- Returns:
- a reply object that represents the state of the operation.
- Throws:
IllegalArgumentException- if either parameter is < 1.- See Also:
-
EngineConfiguration.enableMessageThrottle(int, int)
-
isReplaying
boolean isReplaying()Gets whether a replay is currently happening or not. Similar semantics toSession.isReplaying().- Returns:
- true if a replay is currently happening.
-