public final class LibraryConfiguration extends CommonConfiguration
FixLibrary.connect()
calls.FixLibrary
Modifier and Type | Field and Description |
---|---|
static GatewayErrorHandler |
DEFAULT_GATEWAY_ERROR_HANDLER |
static LibraryConnectHandler |
DEFAULT_LIBRARY_CONNECT_HANDLER |
static SessionExistsHandler |
DEFAULT_SESSION_EXISTS_HANDLER |
static SessionProxyFactory |
DEFAULT_SESSION_PROXY_FACTORY |
BACKOFF_SPINS, BACKOFF_YIELDS, DEBUG_FILE, DEBUG_FILE_PROPERTY, DEBUG_LOGGING_SEPARATOR, DEBUG_PRINT_MESSAGE_TYPES, DEBUG_PRINT_MESSAGE_TYPES_PROPERTY, DEBUG_PRINT_MESSAGES, DEBUG_PRINT_MESSAGES_PROPERTY, DEBUG_PRINT_THREAD, DEBUG_PRINT_THREAD_PROPERTY, DEBUG_TAGS, DEFAULT_DEBUG_LOGGING_SEPARATOR, DEFAULT_DIRECTORY, DEFAULT_HEARTBEAT_INTERVAL_IN_S, DEFAULT_HISTOGRAM_LOGGING_FILE, DEFAULT_HISTOGRAM_POLL_PERIOD_IN_MS, DEFAULT_INBOUND_LIBRARY_STREAM, DEFAULT_INBOUND_MAX_CLAIM_ATTEMPTS, DEFAULT_MAX_FIXP_KEEPALIVE_TIMEOUT_IN_MS, DEFAULT_MONITORING_BUFFER_LENGTH, DEFAULT_MONITORING_FILE, DEFAULT_NAME_PREFIX, DEFAULT_OUTBOUND_LIBRARY_STREAM, DEFAULT_OUTBOUND_MAX_CLAIM_ATTEMPTS, DEFAULT_PRINT_AERON_STREAM_IDENTIFIERS, DEFAULT_REASONABLE_TRANSMISSION_TIME_IN_MS, DEFAULT_REASONABLE_TRANSMISSION_TIME_IN_S, DEFAULT_REPLY_TIMEOUT_IN_MS, DEFAULT_RESEND_REQUEST_CONTROLLER, DEFAULT_SENDING_TIME_WINDOW, DEFAULT_SESSION_BUFFER_SIZE, FORCE_WRITES, FORCE_WRITES_MESSAGES_PROPERTY, HISTOGRAM_LOGGING_FILE_PROPERTY, HISTOGRAM_POLL_PERIOD_IN_MS_PROPERTY, INBOUND_MAX_CLAIM_ATTEMPTS_PROPERTY, LOGGING_SEPARATOR_PROPERTY, MONITORING_BUFFERS_LENGTH_PROPERTY, MONITORING_FILE_PROPERTY, NO_FIXP_MAX_RETRANSMISSION_RANGE, OUTBOUND_MAX_CLAIM_ATTEMPTS_PROPERTY, RUNNING_ON_WINDOWS, threadFactory, TIME_MESSAGES, TIME_MESSAGES_PROPERTY
Constructor and Description |
---|
LibraryConfiguration() |
Modifier and Type | Method and Description |
---|---|
LibraryConfiguration |
backpressureMessagesDuringReplay(boolean backpressureMessagesDuringReplay)
Configures whether
Session.trySend() methods such as
Session.trySend(Encoder) backpressure attempts to write FIX messages
whilst a replay is in progress. |
LibraryConfiguration |
epochNanoClock(org.agrona.concurrent.EpochNanoClock epochNanoClock)
Sets the clock used for producing requestTimestamp fields on iLink3 messages.
|
LibraryConfiguration |
fixPAcceptedSessionMaxRetransmissionRange(int fixPAcceptedSessionMaxRetransmissionRange)
Sets the maximum count allowed in a FIXP retransmit request.
|
LibraryConfiguration |
fixPConnectionAcquiredHandler(FixPConnectionAcquiredHandler fixPConnectionAcquiredHandler)
When a new FIXP session connects to the gateway you register a callback handler to find
out about the event.
|
LibraryConfiguration |
fixPConnectionExistsHandler(FixPConnectionExistsHandler fixPConnectionExistsHandler) |
GatewayErrorHandler |
gatewayErrorHandler() |
LibraryConfiguration |
gatewayErrorHandler(GatewayErrorHandler gatewayErrorHandler) |
java.util.List<java.lang.String> |
libraryAeronChannels() |
LibraryConfiguration |
libraryAeronChannels(java.util.List<java.lang.String> libraryAeronChannels)
Sets the list of aeron channels used to connect to the Engine
|
LibraryConnectHandler |
libraryConnectHandler() |
LibraryConfiguration |
libraryConnectHandler(LibraryConnectHandler libraryConnectHandler) |
int |
libraryId() |
org.agrona.concurrent.IdleStrategy |
libraryIdleStrategy() |
LibraryConfiguration |
libraryIdleStrategy(org.agrona.concurrent.IdleStrategy libraryIdleStrategy)
Sets the idle strategy for the FIX library instance.
|
LibraryConfiguration |
libraryName(java.lang.String libraryName) |
LibraryConfiguration |
monitoringBuffersLength(java.lang.Integer monitoringBuffersLength)
Sets the length of the buffer used for monitoring counters.
|
LibraryConfiguration |
monitoringFile(java.lang.String monitoringFile)
Sets the location for the monitoring file.
|
LibraryConfiguration |
noEstablishFixPTimeoutInMs(long noEstablishFixPTimeoutInMs)
Sets the timeout in milliseconds before a FIXP TCP connection is closed if no establish message is sent.
|
LibraryConfiguration |
replyTimeoutInMs(long replyTimeoutInMs)
Sets the reply timeout in milliseconds.
|
LibraryConfiguration |
resendRequestController(ResendRequestController resendRequestController)
Configures how a resend request is responded to.
|
LibraryScheduler |
scheduler() |
LibraryConfiguration |
scheduler(LibraryScheduler scheduler) |
SessionAcquireHandler |
sessionAcquireHandler() |
LibraryConfiguration |
sessionAcquireHandler(SessionAcquireHandler sessionAcquireHandler)
When a new FIX session connects to the gateway you register a callback handler to find
out about the event.
|
LibraryConfiguration |
sessionExistsHandler(SessionExistsHandler sessionExistsHandler) |
LibraryConfiguration |
sessionIdStrategy(SessionIdStrategy sessionIdStrategy)
Sets the session id strategy.
|
SessionProxyFactory |
sessionProxyFactory() |
LibraryConfiguration |
sessionProxyFactory(SessionProxyFactory sessionProxyFactory)
Sets the factory for creating Session Proxies.
|
aeronContext, agentNamePrefix, agentNamePrefix, backoffIdleStrategy, backpressureMessagesDuringReplay, conclude, connectAttemptTimeoutInMs, customErrorConsumer, defaultHeartbeatIntervalInS, defaultHeartbeatIntervalInS, epochNanoClock, errorHandlerFactory, errorHandlerFactory, fixPAcceptedSessionMaxRetransmissionRange, histogramHandler, histogramHandler, histogramLoggingFile, histogramLoggingFile, histogramPollPeriodInMs, histogramPollPeriodInMs, inboundLibraryStream, inboundLibraryStream, inboundMaxClaimAttempts, inboundMaxClaimAttempts, maxFixPKeepaliveTimeoutInMs, maxFixPKeepaliveTimeoutInMs, messageValidationStrategy, messageValidationStrategy, monitoringAgentFactory, monitoringAgentFactory, monitoringBuffersLength, monitoringFile, monitoringThreadIdleStrategy, monitoringThreadIdleStrategy, noEstablishFixPTimeoutInMs, optimalTmpDirName, outboundLibraryStream, outboundLibraryStream, outboundMaxClaimAttempts, outboundMaxClaimAttempts, printAeronStreamIdentifiers, printAeronStreamIdentifiers, printErrorMessages, reasonableTransmissionTimeInMs, reasonableTransmissionTimeInMs, replyTimeoutInMs, resendRequestController, sendingTimeWindowInMs, sendingTimeWindowInMs, sessionBufferSize, sessionBufferSize, sessionCustomisationStrategy, sessionCustomisationStrategy, sessionEpochFractionFormat, sessionEpochFractionFormat, sessionIdStrategy, threadFactory, threadFactory, validateCompIdsOnEveryMessage, validateCompIdsOnEveryMessage, validateTimeout, validateTimeStrictly, validateTimeStrictly
public static final GatewayErrorHandler DEFAULT_GATEWAY_ERROR_HANDLER
public static final SessionExistsHandler DEFAULT_SESSION_EXISTS_HANDLER
public static final LibraryConnectHandler DEFAULT_LIBRARY_CONNECT_HANDLER
public static final SessionProxyFactory DEFAULT_SESSION_PROXY_FACTORY
public LibraryConfiguration sessionAcquireHandler(SessionAcquireHandler sessionAcquireHandler)
sessionAcquireHandler
- the new session handlerfor the FIXP equivalent
public LibraryConfiguration fixPConnectionAcquiredHandler(FixPConnectionAcquiredHandler fixPConnectionAcquiredHandler)
fixPConnectionAcquiredHandler
- the new session handlerfor the FIX equivalent
public LibraryConfiguration libraryIdleStrategy(org.agrona.concurrent.IdleStrategy libraryIdleStrategy)
libraryIdleStrategy
- the idle strategy for the FIX library instance.public LibraryConfiguration sessionExistsHandler(SessionExistsHandler sessionExistsHandler)
public LibraryConfiguration fixPConnectionExistsHandler(FixPConnectionExistsHandler fixPConnectionExistsHandler)
public LibraryConfiguration gatewayErrorHandler(GatewayErrorHandler gatewayErrorHandler)
public LibraryConfiguration libraryConnectHandler(LibraryConnectHandler libraryConnectHandler)
public LibraryConfiguration scheduler(LibraryScheduler scheduler)
public SessionAcquireHandler sessionAcquireHandler()
public int libraryId()
public org.agrona.concurrent.IdleStrategy libraryIdleStrategy()
public GatewayErrorHandler gatewayErrorHandler()
public LibraryConnectHandler libraryConnectHandler()
public LibraryScheduler scheduler()
public SessionProxyFactory sessionProxyFactory()
public LibraryConfiguration sessionIdStrategy(SessionIdStrategy sessionIdStrategy)
sessionIdStrategy
in class CommonConfiguration
sessionIdStrategy
- the session id strategy.SessionIdStrategy
public LibraryConfiguration monitoringBuffersLength(java.lang.Integer monitoringBuffersLength)
monitoringBuffersLength
in class CommonConfiguration
monitoringBuffersLength
- the length of the buffer used for monitoring counters.CommonConfiguration.MONITORING_BUFFERS_LENGTH_PROPERTY
public LibraryConfiguration monitoringFile(java.lang.String monitoringFile)
monitoringFile
in class CommonConfiguration
monitoringFile
- the location for the monitoring file.CommonConfiguration.MONITORING_FILE_PROPERTY
public LibraryConfiguration libraryAeronChannels(java.util.List<java.lang.String> libraryAeronChannels)
libraryAeronChannels
- the list of aeron channels used to connect to the Enginepublic LibraryConfiguration sessionProxyFactory(SessionProxyFactory sessionProxyFactory)
sessionProxyFactory
- the factory for creating Session Proxies.SessionProxy
public LibraryConfiguration replyTimeoutInMs(long replyTimeoutInMs)
This is the timeout for control protocol messages between the FIX Gateway and FIX Library instances.
replyTimeoutInMs
in class CommonConfiguration
replyTimeoutInMs
- the reply timeout in milliseconds.public LibraryConfiguration noEstablishFixPTimeoutInMs(long noEstablishFixPTimeoutInMs)
EngineConfiguration.noLogonDisconnectTimeoutInMs(int)
for FIX.noEstablishFixPTimeoutInMs
in class CommonConfiguration
noEstablishFixPTimeoutInMs
- the time before a FIXP connection is closed if no establish message is sent.public LibraryConfiguration fixPAcceptedSessionMaxRetransmissionRange(int fixPAcceptedSessionMaxRetransmissionRange)
fixPAcceptedSessionMaxRetransmissionRange
in class CommonConfiguration
fixPAcceptedSessionMaxRetransmissionRange
- the maximum count allowed in a FIXP retransmit request.public LibraryConfiguration epochNanoClock(org.agrona.concurrent.EpochNanoClock epochNanoClock)
epochNanoClock
in class CommonConfiguration
epochNanoClock
- the clock used for producing requestTimestamp fields on iLink3 messages.public LibraryConfiguration backpressureMessagesDuringReplay(boolean backpressureMessagesDuringReplay)
Session.trySend()
methods such as
Session.trySend(Encoder)
backpressure attempts to write FIX messages
whilst a replay is in progress. Defaults to true
.
Artio can disconnect slow consumer FIX sessions in
certain
situations. This is a particularly high risk event if an Artio user attempts to write messages to a FIX
session, whilst simultaneously a replay is going on. Artio's replay mechanism takes account of the backpressure
rates in order to avoid triggering a slow-consumer disconnect whilst a replay is in progress. Setting this
option to true (the default) ensures that a slow-consumer disconnect won't happen during a replay.
An alternative perspective of back-pressure in an Artio system is that if a slow consumer cannot read messages
sent in response to a resend request whilst FIX messages are being written into the queue then it should trigger
a slow consumer disconnect as expected. Setting this configuration option to false results in this behaviour.backpressureMessagesDuringReplay
in class CommonConfiguration
backpressureMessagesDuringReplay
- true if you want to apply back-pressure to libraries during replay.public LibraryConfiguration resendRequestController(ResendRequestController resendRequestController)
ResendRequestController
for details of how to implement it.resendRequestController
in class CommonConfiguration
resendRequestController
- the controller to use.public java.util.List<java.lang.String> libraryAeronChannels()
public LibraryConfiguration libraryName(java.lang.String libraryName)
Copyright © 2015-2022 Real Logic Limited. All Rights Reserved.