Class Config
Engine configuration class.
Engine used Configuration.GetGlobalConfiguration method to configure itself,
user can change this properties in runtime only for initiator sessions, not for acceptors.
Inheritance
Implements
Inherited Members
Namespace: FixAntenna.FixEngine.Configuration
Assembly: FixAntenna.Configuration.dll
Syntax
public class Config : ICloneable
Constructors
Config(IDictionary<String, String>)
Create a Configuration based on Map properties.
Declaration
public Config(IDictionary<string, string> map)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.IDictionary<System.String, System.String> | map | properties |
Config(String)
Create a Configuration. Load properties from prop file
Declaration
public Config(string propFileName)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propFileName | the properties file. |
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentException | if file not exists. |
Fields
Accuracy
Measurement accuracy in milliseconds, default value is 1 ms.
Declaration
[Config.DefaultValue("1")]
public const string Accuracy = "measurementAccuracyInMs"
Field Value
| Type | Description |
|---|---|
| System.String |
AdvancedResendRequestProcessing
This parameter specifies whether to issue subsequently duplicates (PossDupFlag(43) = 'Y') of last Resend Request for continuing gaps resting on LastMsgSeqNumProcessed(369) field values of incoming messages. The counterparty then must respond only to the original request or a subsequent duplicate Resend Request if it missed the original. The duplicate(s), otherwise, can be discarded, as it does not have a unique message sequence number of its own.
Declaration
[Config.DefaultValue("false")]
public const string AdvancedResendRequestProcessing = "advancedResendRequestProcessing"
Field Value
| Type | Description |
|---|---|
| System.String |
AllowedCountOfSimilarRr
This option indicate how many similar ResendRequests (for same range of sequences) engine may sends before detecting possible infinite resend loop. This should prevent infinite loop for requesting many times same corrupted messages or if user logic cann't correctly handle some message and every time throws exception.
The parameter must be integer and not negative. Otherwise, the standard value for this parameter will be used. Default value: 3
Declaration
[Config.DefaultValue("3")]
public const string AllowedCountOfSimilarRr = "allowedCountOfSimilarRR"
Field Value
| Type | Description |
|---|---|
| System.String |
AllowedFieldsValidation
Toggle on/off validation of allowed message fields. If "validation=false" then this parameter always reads as false.
Declaration
[Config.DefaultValue("true")]
public const string AllowedFieldsValidation = "allowedFieldsValidation"
Field Value
| Type | Description |
|---|---|
| System.String |
AllowedSecondsFractionsForFix40
Use timestamp with precision defined by timestampsPrecisionInTags option for FIX 4.0 if enabled.
Declaration
[Config.DefaultValue("false")]
public const string AllowedSecondsFractionsForFix40 = "allowedSecondsFractionsForFIX40"
Field Value
| Type | Description |
|---|---|
| System.String |
AutoreconnectAttempts
Specifies number of autoreconnect attempts before give up:
negative number = no reconnects (NoAutoreconnect),
0 - infinite number of reconnects (InfinityAutoreconnect),
positive number = number of reconnect attempts
Please use 0 wisely - it means reconnect infinitely
Declaration
[Config.DefaultValue("-1")]
public const string AutoreconnectAttempts = "autoreconnectAttempts"
Field Value
| Type | Description |
|---|---|
| System.String |
AutoreconnectDelayInMs
Specifies delay between autoreconnect attempts in milliseconds, default value is 1000ms.
Declaration
[Config.DefaultValue("1000")]
public const string AutoreconnectDelayInMs = "autoreconnectDelayInMs"
Field Value
| Type | Description |
|---|---|
| System.String |
AutostartAcceptorCommandPackage
Name of the custom package for admin commands processing This property is using for the extending the count of admin-commands. By default package is null, but if custom commands is present this property should be initialized, for example (autostart.acceptor.commands.package=com.admin.commands).
Declaration
public const string AutostartAcceptorCommandPackage = "autostart.acceptor.commands.package"
Field Value
| Type | Description |
|---|---|
| System.String |
BackupIncomingLogFile
Backup incoming log filename template. {0} will be replaced with actual sessionID, {1} with SenderCompID, {2} with actual TargetCompID, {3} with timestamp and {4} with actual session qualifier.
Declaration
[Config.DefaultValue("{0}-{3}.in")]
public const string BackupIncomingLogFile = "backupIncomingLogFile"
Field Value
| Type | Description |
|---|---|
| System.String |
BackupOutgoingLogFile
Backup outgoing log filename template. {0} will be replaced with actual sessionID, {1} with SenderCompID, {2} with actual TargetCompID, {3} with timestamp and {4} with actual session qualifier.
Declaration
[Config.DefaultValue("{0}-{3}.out")]
public const string BackupOutgoingLogFile = "backupOutgoingLogFile"
Field Value
| Type | Description |
|---|---|
| System.String |
BackupTimestampsPrecision
The desired pecision of timestamps in names of storage backup files. Valid values: Milli | Micro | Nano.
Declaration
[Config.DefaultValue("Milli")]
public const string BackupTimestampsPrecision = "backupTimestampsPrecision"
Field Value
| Type | Description |
|---|---|
| System.String |
CheckSendingTimeAccuracy
Toggle on/off the check of SendingTime (52) accuracy for received messages.
Declaration
[Config.DefaultValue("true")]
public const string CheckSendingTimeAccuracy = "checkSendingTimeAccuracy"
Field Value
| Type | Description |
|---|---|
| System.String |
CmeSecureKeysFile
Defines name of keys file. It should be located in classpath, root directory of running java application or home directory.
Declaration
public const string CmeSecureKeysFile = "cmeSecureKeysFile"
Field Value
| Type | Description |
|---|---|
| System.String |
CmeSecureLogonStrategy
Declaration
public const string CmeSecureLogonStrategy = "FixAntenna.FixEngine.Session.Impl.CmeSecureLogonStrategy"
Field Value
| Type | Description |
|---|---|
| System.String |
ConditionalValidation
enable/disable conditional validator, default value is false.
Declaration
[Config.DefaultValue("true")]
public const string ConditionalValidation = "conditionalValidation"
Field Value
| Type | Description |
|---|---|
| System.String |
ConnectAddress
Engine's local IP address to send from. It can be used on a multi-homed host for a FIX Engine that will only send IP datagrams from one of its addresses. If this parameter is commented, the engine will send IP datagrams from any/all local addresses.
Declaration
public const string ConnectAddress = "connectAddress"
Field Value
| Type | Description |
|---|---|
| System.String |
CpuAffinity
This parameter specifies cpu id for the threads of session that send and receive the data from/in socket.
Declaration
[Config.DefaultValue("-1")]
public const string CpuAffinity = "cpuAffinity"
Field Value
| Type | Description |
|---|---|
| System.String |
CyclicSwitchBackupConnection
Enable switch to primary connection, default value true
Declaration
[Config.DefaultValue("true")]
public const string CyclicSwitchBackupConnection = "cyclicSwitchBackupConnection"
Field Value
| Type | Description |
|---|---|
| System.String |
DefaultEngineProperties
Declaration
public const string DefaultEngineProperties = "fixengine.properties"
Field Value
| Type | Description |
|---|---|
| System.String |
Delay
Sending time delay for incoming messages in milliseconds.
Declaration
[Config.DefaultValue("120000")]
public const string Delay = "reasonableDelayInMs"
Field Value
| Type | Description |
|---|---|
| System.String |
DesKeyPrefix
Declaration
public const string DesKeyPrefix = "desKey"
Field Value
| Type | Description |
|---|---|
| System.String |
DisconnectOnLogonHbtMismatch
Check and disconnect session if Logon answer contains other HeartBtInt(108) value than defined in session configuration.
Default value: true
Declaration
[Config.DefaultValue("true")]
public const string DisconnectOnLogonHbtMismatch = "disconnectOnLogonHeartbeatMismatch"
Field Value
| Type | Description |
|---|---|
| System.String |
DuplicateFieldsValidation
Toggle on/off validation of duplicated message fields. If "validation=false" then this parameter always reads as false.
Declaration
[Config.DefaultValue("true")]
public const string DuplicateFieldsValidation = "duplicateFieldsValidation"
Field Value
| Type | Description |
|---|---|
| System.String |
EnableAutoSwitchToBackupConnection
Enable auto switching to backup connection, the default value is true.
Declaration
[Config.DefaultValue("true")]
public const string EnableAutoSwitchToBackupConnection = "enableAutoSwitchToBackupConnection"
Field Value
| Type | Description |
|---|---|
| System.String |
EnableLoggingOfIncomingMessages
Declaration
public const string EnableLoggingOfIncomingMessages = "enableLoggingOfIncomingMessages"
Field Value
| Type | Description |
|---|---|
| System.String |
EnableMessageRejecting
Enable/disable message rejecting, default value is false
Declaration
[Config.DefaultValue("false")]
public const string EnableMessageRejecting = "enableMessageRejecting"
Field Value
| Type | Description |
|---|---|
| System.String |
EnableMessageStatistic
Enable/disable message statistic, default value is true
Declaration
[Config.DefaultValue("true")]
public const string EnableMessageStatistic = "enableMessageStatistic"
Field Value
| Type | Description |
|---|---|
| System.String |
EnableNagle
Disable/enable Nagle's algorithm for TCP sockets. This option has the opposite meaning to TCP_NO_DELAY socket option. With enabled Nagle's algorithm will be better throughput (TcpNoDelay=false) but with disabled option you will get better result for latency on single message (TcpNoDelay=true)
Declaration
[Config.DefaultValue("true")]
public const string EnableNagle = "enableNagle"
Field Value
| Type | Description |
|---|---|
| System.String |
EncryptionCfgFile
This parameter specifies encryption config file name. Valid values: existent valid config file name (relative or absolute path) Default value not defined
Declaration
[Config.DefaultValue("${fa.home}/encryption/encryption.cfg")]
public const string EncryptionCfgFile = "encryptionConfig"
Field Value
| Type | Description |
|---|---|
| System.String |
EncryptionMode
This parameter specifies the default value of encryptionMode. Valid values: None | Des | PgpDesMd5
Declaration
[Config.DefaultValue("None")]
public const string EncryptionMode = "encryptionMode"
Field Value
| Type | Description |
|---|---|
| System.String |
EnhancedCmeResendLogic
Turn on CME Enhanced Resend Request logic for filling gaps
Declaration
[Config.DefaultValue("false")]
public const string EnhancedCmeResendLogic = "enhancedCmeResendLogic"
Field Value
| Type | Description |
|---|---|
| System.String |
FaHome
Sets path to fa home.
Declaration
[Config.DefaultValue(".")]
public const string FaHome = "fa.home"
Field Value
| Type | Description |
|---|---|
| System.String |
FieldOrderValidation
Toggle on/off validation of fields order in message. With this option engine will check that tags from the header, body and trailer were not mixed up. If "validation=false" then this parameter always reads as false.
Declaration
[Config.DefaultValue("true")]
public const string FieldOrderValidation = "fieldOrderValidation"
Field Value
| Type | Description |
|---|---|
| System.String |
FieldTypeValidation
Toggle on/off validation of field values according to defined data types.
Declaration
[Config.DefaultValue("true")]
public const string FieldTypeValidation = "fieldTypeValidation"
Field Value
| Type | Description |
|---|---|
| System.String |
ForcedLogoffTimeout
Sets the disconnect timeout in seconds for a Logout ack only when waiting for. The Logout ack from the counterparty is caused by the incoming sequence number less then expected. The parameter must be integer and not negative. Otherwise the default value for this parameter will be used.
Declaration
[Config.DefaultValue("2")]
public const string ForcedLogoffTimeout = "forcedLogoffTimeout"
Field Value
| Type | Description |
|---|---|
| System.String |
ForceSeqNumReset
This parameter allow to automatically resolve sequence gap problem (for example, when there is every day sequence reset). Supported values: Always, OneTime, Never. If this parameter is set to:
- Always - session will send logon with 34= 1 and 141=Y every times (during connection and reconnection)
- OneTime - session will send logon with 34= 1 and 141=Y only one time (during connection)
- Never - this means that user can sets the 34= 1 and 141=Y from session parameters by hand
Declaration
[Config.DefaultValue("Never")]
public const string ForceSeqNumReset = "forceSeqNumReset"
Field Value
| Type | Description |
|---|---|
| System.String |
GroupValidation
Enable/disable group validator, default value is false.
Declaration
[Config.DefaultValue("true")]
public const string GroupValidation = "groupValidation"
Field Value
| Type | Description |
|---|---|
| System.String |
HandleSeqnumAtLogon
This parameter specifies whether to process 789-NextExpectedMsgSeqNum tag. If true, outgoing sequence number must be updated by 789-NextExpectedMsgSeqNum tag value.
Declaration
[Config.DefaultValue("false")]
public const string HandleSeqnumAtLogon = "handleSeqNumAtLogon"
Field Value
| Type | Description |
|---|---|
| System.String |
HbtReasonableTransmissionTime
This parameter specifies "some reasonable transmission time" of FIX specification, measured in milliseconds. Valid values: positive integer Default value: 200
Declaration
[Config.DefaultValue("200")]
public const string HbtReasonableTransmissionTime = "heartbeatReasonableTransmissionTime"
Field Value
| Type | Description |
|---|---|
| System.String |
IgnorePossDupForGapFill
Enable this option if it need to handle SequenceReset-GapFill message without PossDupFlag(43). Also this option allow to ignore absence of OrigSendingTime(122) in such message. Valid values: true | false Default value: true
Declaration
[Config.DefaultValue("true")]
public const string IgnorePossDupForGapFill = "ignorePossDupForGapFill"
Field Value
| Type | Description |
|---|---|
| System.String |
IgnoreResetSeqNumFlagOnReset
This parameter specifies whether to send ResetSeqNumFlag (141=Y) after sequence rest or not. Valid values: true | false
Declaration
[Config.DefaultValue("false")]
public const string IgnoreResetSeqNumFlagOnReset = "ignoreResetSeqNumFlagOnReset"
Field Value
| Type | Description |
|---|---|
| System.String |
IgnoreSeqNumTooLowAtLogon
This parameter allow to resolve wrong incoming sequence at Logon. When it true - session continue with received seqNum.
Valid values: true/false Default value: false
Declaration
[Config.DefaultValue("false")]
public const string IgnoreSeqNumTooLowAtLogon = "ignoreSeqNumTooLowAtLogon"
Field Value
| Type | Description |
|---|---|
| System.String |
IncludeLastProcessed
Include last processed sequence 369 tag in every message for FIX versions>4.2
Declaration
[Config.DefaultValue("false")]
public const string IncludeLastProcessed = "includeLastProcessed"
Field Value
| Type | Description |
|---|---|
| System.String |
IncomingLogFile
Incoming log filename template. {0} will be replaced with actual sessionID, {1} with actual SenderCompID, {2} with actual TargetCompID and {4} with actual session qualifier.
Declaration
[Config.DefaultValue("{0}.in")]
public const string IncomingLogFile = "incomingLogFile"
Field Value
| Type | Description |
|---|---|
| System.String |
IncomingStorageIndexed
True will enables incoming storage index. Enabled index - messages in incoming storage will be available via API
Declaration
public const string IncomingStorageIndexed = "incomingStorageIndexed"
Field Value
| Type | Description |
|---|---|
| System.String |
InfinityAutoreconnect
Declaration
public const string InfinityAutoreconnect = "0"
Field Value
| Type | Description |
|---|---|
| System.String |
InMemoryQueue
Sets queue mode. Set to "false" for persistent queue (slower but no messages will be lost), "true" for in memory queue (faster but less safe, some messages may be lost). This property makes sense only if FilesystemStorageFactory is set.
Declaration
[Config.DefaultValue("false")]
public const string InMemoryQueue = "inMemoryQueue"
Field Value
| Type | Description |
|---|---|
| System.String |
IntraDaySeqnumReset
This parameter specifies whether to reset sequence number after session is closed. Valid values: true | false
Declaration
[Config.DefaultValue("false")]
public const string IntraDaySeqnumReset = "intraDaySeqNumReset"
Field Value
| Type | Description |
|---|---|
| System.String |
LogFilesTimeZone
Time zone for prefix in out/in logs
Declaration
public const string LogFilesTimeZone = "logFilesTimeZone"
Field Value
| Type | Description |
|---|---|
| System.String |
LoginWaitTimeout
Sets the timeout interval after which a connected acceptor session will be timed out and disposed if Logon is not received for this session. default value is 5000
Declaration
[Config.DefaultValue("5000")]
public const string LoginWaitTimeout = "loginWaitTimeout"
Field Value
| Type | Description |
|---|---|
| System.String |
LogonCustomizationStrategy
Defines strategy that will be applied for logon messages right before sending.
Valid values: subclasses of FixAntenna.FixEngine.Session.Impl.LogonCustomizationStrategy/>
Implemented strategies: CmeSecureLogonStrategy - It tells engine to use CME secure logon scheme. This strategy requires defined CmeSecureKeysFile.
Declaration
[Config.DefaultValue("none")]
public const string LogonCustomizationStrategy = "logonCustomizationStrategy"
Field Value
| Type | Description |
|---|---|
| System.String |
LogonCustomizationStrategyUndefined
Declaration
public const string LogonCustomizationStrategyUndefined = "none"
Field Value
| Type | Description |
|---|---|
| System.String |
LogonMessageSessionQualifierTag
Specifies tag number for session qualifier in logon message.
Declaration
[Config.DefaultValue("9012")]
public const string LogonMessageSessionQualifierTag = "logonMessageSessionQualifierTag"
Field Value
| Type | Description |
|---|---|
| System.String |
LogoutWaitTimeout
Sets disconnect timeout in seconds for logoff, default value is equal to session's HeartbeatInterval
Declaration
public const string LogoutWaitTimeout = "logoutWaitTimeout"
Field Value
| Type | Description |
|---|---|
| System.String |
MarkIncomingMessageTime
Transport will set the additional time mark in nanoseconds for incoming messages right after read data from socket if this option is set to true. AbstractFIXTransport.getLastReadMessageTimeNano() method could return this value.
default value is false
Declaration
[Config.DefaultValue("false")]
public const string MarkIncomingMessageTime = "markIncomingMessageTime"
Field Value
| Type | Description |
|---|---|
| System.String |
MaskedTags
Masked tags. List all tags here engine should hide value with asterisks in logs.
Declaration
[Config.DefaultValue("554, 925")]
public const string MaskedTags = "maskedTags"
Field Value
| Type | Description |
|---|---|
| System.String |
MaxDelayToSendAfterLogon
The pause before sending application messages from outgoing queue in milliseconds after receiving Logon. This pause is need to handle possible incoming ResendRequest. In other case a bunch of messages with invalid sequence can be sent. The value must be integer and not less than 0.
Declaration
[Config.DefaultValue("50")]
public const string MaxDelayToSendAfterLogon = "maxDelayToSendAfterLogon"
Field Value
| Type | Description |
|---|---|
| System.String |
MaxMessageSize
Maximum message size supported by this FIX engine instance. The parameter must be integer and not negative. Otherwise, the default value for this parameter will be used. Should be set to a greater than expected maximum message by approximately 1-5%.
- positive number - maximum allowed size of incoming message
- 0 - any size message allowed (not recommended, could lead to OutOfMemoryError if counterparty will send invalid stream).
Declaration
[Config.DefaultValue("1Mb")]
public const string MaxMessageSize = "maxMessageSize"
Field Value
| Type | Description |
|---|---|
| System.String |
MaxMessagesToSendInBatch
The maximum number of messages in buffer before we write message to transport. NOTE: Value for this property should be always > 0. default value is 10
Declaration
[Config.DefaultValue("10")]
public const string MaxMessagesToSendInBatch = "maxMessagesToSendInBatch"
Field Value
| Type | Description |
|---|---|
| System.String |
MaxRequestResendInBlock
The max requested messages in block. This parameter defines how many messages will be request in one block. The value must be integer and not less than 0.
Declaration
[Config.DefaultValue("0")]
public const string MaxRequestResendInBlock = "maxRequestResendInBlock"
Field Value
| Type | Description |
|---|---|
| System.String |
MaxStorageGrowSize
Sets the maximum storage grow size in bytes. Parameter must be integer and not negative.
Declaration
[Config.DefaultValue("1Mb")]
public const string MaxStorageGrowSize = "maxStorageGrowSize"
Field Value
| Type | Description |
|---|---|
| System.String |
MaxStorageSliceSize
Specifies the maximum size of the storage file after which the engine creates a new storage file with a different name. Parameter must be integer and not negative. This property makes sense only if SlicedFileStorageFactory is set.
Declaration
[Config.DefaultValue("100Mb")]
public const string MaxStorageSliceSize = "maxStorageSliceSize"
Field Value
| Type | Description |
|---|---|
| System.String |
MaxTimeoutValue
Identifies a maximum HBI in seconds.
Declaration
public static int MaxTimeoutValue
Field Value
| Type | Description |
|---|---|
| System.Int32 |
MemoryMappedQueue
Sets persistent queue mode for MMFStorageFactory. Set to "false" for persistent queue (slower but no messages will be lost), "true" for memory mapped queue (faster but less safe, some messages may be lost)
Declaration
[Config.DefaultValue("true")]
public const string MemoryMappedQueue = "memoryMappedQueue"
Field Value
| Type | Description |
|---|---|
| System.String |
MmfIndexGrowSize
Sets the index grow size in bytes for memory mapped implementation. Used only for storage with memory mapped index file. Parameter must be integer and not negative. This property makes sense only if MMFStorageFactory is set and at least one of incomingStorageIndexed or outgoingStorageIndexed is true.
Declaration
[Config.DefaultValue("20Mb")]
public const string MmfIndexGrowSize = "mmfIndexGrowSize"
Field Value
| Type | Description |
|---|---|
| System.String |
MmfStorageGrowSize
Sets the storage grow size in bytes for memory mapped implementation. Parameter must be integer and not negative. This property makes sense only if MMFStorageFactory is set.
Declaration
[Config.DefaultValue("100Mb")]
public const string MmfStorageGrowSize = "mmfStorageGrowSize"
Field Value
| Type | Description |
|---|---|
| System.String |
NoAutoreconnect
Declaration
public const string NoAutoreconnect = "-1"
Field Value
| Type | Description |
|---|---|
| System.String |
OrigSendingTimeChecking
This parameter specifies whether to check the OrigSendingTime(122) field value for incoming possible duplicated messages (PossDupFlag(43) = 'Y'). Valid values: true | false Default value: true
Declaration
[Config.DefaultValue("true")]
public const string OrigSendingTimeChecking = "origSendingTimeChecking"
Field Value
| Type | Description |
|---|---|
| System.String |
OutgoingLogFile
Outgoing log filename template. {0} will be replaced with actual sessionID, {1} with actual SenderCompID, {2} with actual TargetCompID and {4} with actual session qualifier.
Declaration
[Config.DefaultValue("{0}.out")]
public const string OutgoingLogFile = "outgoingLogFile"
Field Value
| Type | Description |
|---|---|
| System.String |
OutgoingQueueFile
Out queue file template. {0} will be replaced with actual sessionID, {1} with actual SenderCompID, {2} with actual TargetCompID and {4} with actual session qualifier.
Declaration
[Config.DefaultValue("{0}.outq")]
public const string OutgoingQueueFile = "outgoingQueueFile"
Field Value
| Type | Description |
|---|---|
| System.String |
OutgoingStorageIndexed
Outgoing storage index. This property makes sense only if FilesystemStorageFactory or MMFStorageFactory is set. Set to "true" to enable outgoing storage index that is to be used in decision making in resend request handler. Enabled index - support resend request, disabled - never resend messages and always send gap fill.
Declaration
[Config.DefaultValue("true")]
public const string OutgoingStorageIndexed = "outgoingStorageIndexed"
Field Value
| Type | Description |
|---|---|
| System.String |
PerformResetSeqNumTime
This parameter specifies whether to reset sequence number at time defined in resetSequenceTime.
Declaration
[Config.DefaultValue("false")]
public const string PerformResetSeqNumTime = "performResetSeqNumTime"
Field Value
| Type | Description |
|---|---|
| System.String |
Port
Acceptor: Default listening port(s) for unsecured connections. Initiator: Target port for connection.
Declaration
[Config.DefaultValue("")]
public const string Port = "port"
Field Value
| Type | Description |
|---|---|
| System.String |
PossDupSmartDelivery
This parameter enables delivery of only those PossDup messages that wasn't received previously. Discarding already processed possDups.
Declaration
[Config.DefaultValue("false")]
public const string PossDupSmartDelivery = "possDupSmartDelivery"
Field Value
| Type | Description |
|---|---|
| System.String |
PreferredSendingMode
This parameter specifies the way the session will send most of its messages:
Async - session will send all message asynchronously and it will be optimized for this
Sync - session will be optimized to send messages from user thread, but it still can make asynchronous
operation and it allows to add messages to internal queue
SyncNoqueue - session sends message only from user thread and doesn't use internal queue. It's impossible to
send messages to disconnected session.
Valid values: Async/Sync/SyncNoqueue Default value: sync
Declaration
[Config.DefaultValue("sync")]
public const string PreferredSendingMode = "preferredSendingMode"
Field Value
| Type | Description |
|---|---|
| System.String |
PubKey
Declaration
public const string PubKey = "pgpKey"
Field Value
| Type | Description |
|---|---|
| System.String |
PubKeyFile
Declaration
public const string PubKeyFile = "pubKeyFile"
Field Value
| Type | Description |
|---|---|
| System.String |
QueueThresholdSize
Maximum number of messages in a queue before we pause a pumper thread to let the queued message be sent out.
- Set rather high for max performance.
- Set 1 or pretty low for realtime experience.
- 0 - disable queue control, do not pause the pumper thread.
Declaration
[Config.DefaultValue("0")]
public const string QueueThresholdSize = "queueThresholdSize"
Field Value
| Type | Description |
|---|---|
| System.String |
QuietLogonMode
Enable this option if it need to quiet handle Logout as a first session message. FIX Specification requires that first message should be Logon. In other case it needs to send with answer Logout message warning "First message is not logon". Also sоmetimes first incoming Logout has a wrong sequence (for example if you send Logon with 141=Y). This option allow to skip sending ResendRequest and warning to counterparty. Valid values: true | false Default value: false
Declaration
[Config.DefaultValue("false")]
public const string QuietLogonMode = "quietLogonMode"
Field Value
| Type | Description |
|---|---|
| System.String |
RawTags
Raw tags. List all tags here engine should treat as raw. Raw tag may contain SOH symbol inside it and it should be preceided by rawTagLength field.
Declaration
[Config.DefaultValue("96, 91, 213, 349, 351, 353, 355, 357, 359, 361, 363, 365, 446, 619, 622")]
public const string RawTags = "rawTags"
Field Value
| Type | Description |
|---|---|
| System.String |
ReadingThreadShutdownTimeout
Sets the timeout interval in seconds for waiting reading thread finishing during session shutdown. Reading thread may be interrupted after this interval if it was blocked.
The parameter must be integer and not negative. Otherwise, the standard value for this parameter will be used. Default value: session heartbeat interval
Declaration
[Config.DefaultValue("-1")]
public const string ReadingThreadShutdownTimeout = "readingThreadShutdownTimeout"
Field Value
| Type | Description |
|---|---|
| System.String |
RecvCpuAffinity
This parameter specifies cpu id for a thread of session that receives the data from socket.
Declaration
[Config.DefaultValue("-1")]
public const string RecvCpuAffinity = "recvCpuAffinity"
Field Value
| Type | Description |
|---|---|
| System.String |
RequiredFieldsValidation
Toggle on/off validation of required message fields. If "validation=false" then this parameter always reads as false.
Declaration
[Config.DefaultValue("true")]
public const string RequiredFieldsValidation = "requiredFieldsValidation"
Field Value
| Type | Description |
|---|---|
| System.String |
RequireSsl
Requires establishing of secured transport for individual session, or for all sessions, when used on top level configuration.
Declaration
[Config.DefaultValue("false")]
public const string RequireSsl = "requireSSL"
Field Value
| Type | Description |
|---|---|
| System.String |
ResendRequestNumberOfMessagesLimit
Limits the maximum number of messages during the resend request. If more messages are requested, the reject will be sent in response. The parameter must be integer and not negative. Otherwise the default value for this parameter will be used.
Declaration
[Config.DefaultValue("0")]
public const string ResendRequestNumberOfMessagesLimit = "resendRequestNumberOfMessagesLimit"
Field Value
| Type | Description |
|---|---|
| System.String |
ResetOnSwitchToBackup
Reset sequences on switch to backup.
Declaration
[Config.DefaultValue("false")]
public const string ResetOnSwitchToBackup = "resetOnSwitchToBackup"
Field Value
| Type | Description |
|---|---|
| System.String |
ResetOnSwitchToPrimary
Reset sequences on switch back to primary connection
Declaration
[Config.DefaultValue("false")]
public const string ResetOnSwitchToPrimary = "resetOnSwitchToPrimary"
Field Value
| Type | Description |
|---|---|
| System.String |
ResetQueueOnLowSequenceNum
When disabled prevents outgoing queue reset if client connecting with lower than expected sequence number. Once session is reestablished queued messages will be sent out. Please note that queued messages won't be sent out till session if fully established regardless of that parameter.
Default value: true
Declaration
[Config.DefaultValue("true")]
public const string ResetQueueOnLowSequenceNum = "resetQueueOnLowSequence"
Field Value
| Type | Description |
|---|---|
| System.String |
ResetSequenceTime
This parameter specifies GMT time when the FIX Engine initiates the reset of sequence numbers. Valid time format: HH:MM:SS
Declaration
[Config.DefaultValue("00:00:00")]
public const string ResetSequenceTime = "resetSequenceTime"
Field Value
| Type | Description |
|---|---|
| System.String |
ResetSequenceTimeZone
Time zone id for resetSequenceTime property.
Declaration
[Config.DefaultValue("UTC")]
public const string ResetSequenceTimeZone = "resetSequenceTimeZone"
Field Value
| Type | Description |
|---|---|
| System.String |
ResetThreshold
This parameter specifies a gap in sequences during connecting, which may be treated as missed sequence reset event by the counterpart. It works if current session has reset sequences and expects message (Logon) with 34=1 but counterparty is still sending messages with much higher sequences (they didn't do reset on their side). This option helps to control bidirectional agreed sequence reset events and prevents to request old messages. This option is working only for acceptor session. Default value is 0, it means the check is not going to be performed.
Declaration
[Config.DefaultValue("0")]
public const string ResetThreshold = "resetThreshold"
Field Value
| Type | Description |
|---|---|
| System.String |
SecKeyFile
Declaration
public const string SecKeyFile = "secKeyFile"
Field Value
| Type | Description |
|---|---|
| System.String |
SendCpuAffinity
This parameter specifies cpu id for a thread of session that sends the data in socket.
Declaration
[Config.DefaultValue("-1")]
public const string SendCpuAffinity = "sendCpuAffinity"
Field Value
| Type | Description |
|---|---|
| System.String |
SenderTargetIdConsistencyCheck
If option is disabled it should be possible to receive messages with none session specific Comp IDs if option is enabled than all the messages with compIds not aligned to session parameters will be rejected
Default value is true, it means that consistency check is enabled
Declaration
[Config.DefaultValue("true")]
public const string SenderTargetIdConsistencyCheck = "senderTargetIdConsistencyCheck"
Field Value
| Type | Description |
|---|---|
| System.String |
SendRejectIfApplicationIsNotAvailable
Sends a reject if user application is not available. If the value is false and client application is not available, acts like a "black hole" - accepts and ignores all valid messages.
Declaration
[Config.DefaultValue("true")]
public const string SendRejectIfApplicationIsNotAvailable = "sendRejectIfApplicationIsNotAvailable"
Field Value
| Type | Description |
|---|---|
| System.String |
SeqNumLength
Minimal length of the SeqNum fields. Possible value is integer in range 1..10. If the actual SeqNum length less than defined, leading zeros will be added to the SeqNum fields.
Declaration
[Config.DefaultValue("1")]
public const string SeqNumLength = "seqNumLength"
Field Value
| Type | Description |
|---|---|
| System.String |
SequenceResendManagerMessageBufferSize
Limits the maximum number of messages buffered during the resend request. The parameter must be integer and positive. Otherwise the default value for this parameter will be used.
Declaration
[Config.DefaultValue("32")]
public const string SequenceResendManagerMessageBufferSize = "sequenceResendManagerMessageBufferSize"
Field Value
| Type | Description |
|---|---|
| System.String |
ServerAcceptorStrategy
This parameter specifies the default Acceptor Strategy.
Valid values: subclasses of FixAntenna.FixEngine.Acceptor.SessionAcceptorStrategyHandler
Possible values:
FixAntenna.FixEngine.Acceptor.SessionAcceptorStrategyHandler
FixAntenna.FixEngine.Acceptor.DenyNonRegisteredAcceptorStrategyHandler
FixAntenna.FixEngine.Acceptor.DenyNonRegisteredAcceptorStrategyHandler
Declaration
[Config.DefaultValue("FixAntenna.FixEngine.Acceptor.AllowNonRegisteredAcceptorStrategyHandler")]
public const string ServerAcceptorStrategy = "serverAcceptorStrategy"
Field Value
| Type | Description |
|---|---|
| System.String |
SessionInfoFile
Info filename template. {0} will be replaced with actual sessionID, {1} with actual SenderCompID, {2} with actual TargetCompID and {4} with actual session qualifier.
Declaration
[Config.DefaultValue("{0}.properties")]
public const string SessionInfoFile = "sessionInfoFile"
Field Value
| Type | Description |
|---|---|
| System.String |
SessionSequenceManager
Allows user to replace session sequence manager with user own implementation
Declaration
[Config.DefaultValue("FixAntenna.FixEngine.Session.StandardSessionSequenceManager")]
public const string SessionSequenceManager = "sessionSequenceManager"
Field Value
| Type | Description |
|---|---|
| System.String |
SkipDuplicatedResendRequest
This parameter specifies whether respond only to the original request or a subsequent duplicate Resend Request if it missed the original. If this option is disabled, Fix Antenna will respond to any Resend Request.
Declaration
[Config.DefaultValue("false")]
public const string SkipDuplicatedResendRequest = "skipDuplicatedResendRequests"
Field Value
| Type | Description |
|---|---|
| System.String |
SlowConsumerDetectionEnabled
This parameter enables slow consumer detection in pumpers
Declaration
[Config.DefaultValue("false")]
public const string SlowConsumerDetectionEnabled = "slowConsumerDetectionEnabled"
Field Value
| Type | Description |
|---|---|
| System.String |
SlowConsumerWriteDelayThreshold
This parameter used for decision making in slow consumer detection in pumpers. It defined a maximum timeframe for sending a message. If session transport can't send a message during this timeframe it will notify about a slow consumer.
Declaration
[Config.DefaultValue("10")]
public const string SlowConsumerWriteDelayThreshold = "slowConsumerWriteDelayThreshold"
Field Value
| Type | Description |
|---|---|
| System.String |
SslCaCertificate
Name of CA certificate. Could be file name, or distinguished name (CN=...) of certificate in case when certificate store is used.
Declaration
[Config.DefaultValue("")]
public const string SslCaCertificate = "sslCaCertificate"
Field Value
| Type | Description |
|---|---|
| System.String |
SslCertificate
Name of Certificate. Could be file name, or distinguished name (CN=...) of certificate in case when certificate store is used.
Declaration
[Config.DefaultValue("")]
public const string SslCertificate = "sslCertificate"
Field Value
| Type | Description |
|---|---|
| System.String |
SslCertificatePassword
Password for SSL certificate.
Declaration
[Config.DefaultValue("")]
public const string SslCertificatePassword = "sslCertificatePassword"
Field Value
| Type | Description |
|---|---|
| System.String |
SslCheckCertificateRevocation
If true and also sslValidatePeerCertificate=true, remote certificate will be checked for revocation.
Declaration
[Config.DefaultValue("true")]
public const string SslCheckCertificateRevocation = "sslCheckCertificateRevocation"
Field Value
| Type | Description |
|---|---|
| System.String |
SslPort
Acceptor: listening port(s) for SSL/TLS connections. Initiator: ignored.
Declaration
[Config.DefaultValue("")]
public const string SslPort = "sslPort"
Field Value
| Type | Description |
|---|---|
| System.String |
SslProtocol
Selected SslProtocol as defined in System.Security.Authentication.SslProtocols Default value is "None" as recommended by Microsoft - in this case best suitable protocol be used.
Declaration
[Config.DefaultValue("None")]
public const string SslProtocol = "sslProtocol"
Field Value
| Type | Description |
|---|---|
| System.String |
SslServerName
Used on initiator only. Should match with CN=[serverName] in the acceptor certificate.
Declaration
[Config.DefaultValue("")]
public const string SslServerName = "sslServerName"
Field Value
| Type | Description |
|---|---|
| System.String |
SslValidatePeerCertificate
If true, remote certificate must be validated for successful connection. If false, also disables sslCheckCertificateRevocation.
Declaration
[Config.DefaultValue("true")]
public const string SslValidatePeerCertificate = "sslValidatePeerCertificate"
Field Value
| Type | Description |
|---|---|
| System.String |
StorageBackupDir
This parameter specifies back-up directory for message logs of closed sessions when storageCleanupMode=backup. Valid values: existent directory name (relative or absolute path) Default value not defined See FA_HOME description in the Configuration section of the FIX Antenna .NET Core User and Developer Manual.
Declaration
[Config.DefaultValue("${fa.home}/logs/backup")]
public const string StorageBackupDir = "storageBackupDir"
Field Value
| Type | Description |
|---|---|
| System.String |
StorageCleanupMode
This parameter specifies cleaning mode for message storage of closed sessions. Valid values: None | Backup | Delete.
Declaration
[Config.DefaultValue("None")]
public const string StorageCleanupMode = "storageCleanupMode"
Field Value
| Type | Description |
|---|---|
| System.String |
StorageDirectory
Storage directory could be either absolute path (like /tmp/logs or c:\fixengine\logs) or relative path e.g. logs (this one is relative to the application start directory).
Declaration
[Config.DefaultValue("${fa.home}/logs")]
public const string StorageDirectory = "storageDirectory"
Field Value
| Type | Description |
|---|---|
| System.String |
StorageFactory
Allows user to replace storage factory with user own implementation
Declaration
[Config.DefaultValue("FixAntenna.FixEngine.Storage.FilesystemStorageFactory")]
public const string StorageFactory = "storageFactory"
Field Value
| Type | Description |
|---|---|
| System.String |
StorageGrowSize
Enable/disable storage grow. Default value: false.
Declaration
[Config.DefaultValue("false")]
public const string StorageGrowSize = "storageGrowSize"
Field Value
| Type | Description |
|---|---|
| System.String |
SuppressSessionQualifierTagInLogonMessage
Suppress session qualifier tag in logon message.
Declaration
[Config.DefaultValue("false")]
public const string SuppressSessionQualifierTagInLogonMessage = "suppressSessionQualifierTagInLogonMessage"
Field Value
| Type | Description |
|---|---|
| System.String |
SwitchOffSendingMultipleResendRequests
This parameter switches on mode which prevent sending multiple RR for the same gap
Declaration
[Config.DefaultValue("false")]
public const string SwitchOffSendingMultipleResendRequests = "switchOffSendingMultipleResendRequests"
Field Value
| Type | Description |
|---|---|
| System.String |
TcpReceiveBufferSize
This parameter specifies System.Net.Sockets.Socket.ReceiveBufferSize property.
Default value is 0, it means the parameter is not specified.
Declaration
[Config.DefaultValue("0")]
public const string TcpReceiveBufferSize = "tcpReceiveBufferSize"
Field Value
| Type | Description |
|---|---|
| System.String |
TcpSendBufferSize
This parameter specifies System.Net.Sockets.Socket.SendBufferSize property.
Default value is 0, it means the parameter is not specified.
Declaration
[Config.DefaultValue("0")]
public const string TcpSendBufferSize = "tcpSendBufferSize"
Field Value
| Type | Description |
|---|---|
| System.String |
TestRequestsNumberUponDisconnection
This parameter specifies number of Test Request messages, which will be sent before connection loss is reported when no messages are received from the counterparty. Default value: 1
Declaration
[Config.DefaultValue("1")]
public const string TestRequestsNumberUponDisconnection = "testRequestsNumberUponDisconnection"
Field Value
| Type | Description |
|---|---|
| System.String |
ThrottleCheckingEnabled
Enables throttling checks per message type If this option is enabled, engine counts how many times session receives messages with some message type during throttleCheckingPeriod. If this counter will be greater than the value in throttleChecking.MsgType.threshold, the session will be closed with reason THROTTLING
Default value: false
Declaration
[Config.DefaultValue("false")]
public const string ThrottleCheckingEnabled = "throttleCheckingEnabled"
Field Value
| Type | Description |
|---|---|
| System.String |
ThrottleCheckingPeriod
Defines period common for all throttling per message type checks.
Default value: 1000 milliseconds
Declaration
[Config.DefaultValue("1000")]
public const string ThrottleCheckingPeriod = "throttleCheckingPeriod"
Field Value
| Type | Description |
|---|---|
| System.String |
TimestampsInLogs
Ability to write timestamps in the in/out log files. Default value true.
Declaration
[Config.DefaultValue("true")]
public const string TimestampsInLogs = "timestampsInLogs"
Field Value
| Type | Description |
|---|---|
| System.String |
TimestampsPrecisionInLogs
The desired pecision of timestamps in the in/out log files. Valid values: Milli | Micro | Nano.
Declaration
[Config.DefaultValue("Milli")]
public const string TimestampsPrecisionInLogs = "timestampsPrecisionInLogs"
Field Value
| Type | Description |
|---|---|
| System.String |
TimestampsPrecisionInTags
The desired precision of timestamps in appropriate tags of the FIX message. Valid values: Second | Milli | Micro | Nano.
Declaration
[Config.DefaultValue("Milli")]
public const string TimestampsPrecisionInTags = "timestampsPrecisionInTags"
Field Value
| Type | Description |
|---|---|
| System.String |
UndefinedAffinity
Declaration
public const string UndefinedAffinity = "-1"
Field Value
| Type | Description |
|---|---|
| System.String |
ValidateCheckSum
Validate or not message CheckSum(10) Is relevant only if validateGarbledMessage=true default value is true
Declaration
[Config.DefaultValue("true")]
public const string ValidateCheckSum = "validateCheckSum"
Field Value
| Type | Description |
|---|---|
| System.String |
ValidateGarbledMessage
Toggle on/off validation garbled message for incoming flow. Validates the existence and order of the following fields: BeginString(8), BodyLength(9), MsgType(35), CheckSum(10). Also validates value of BodyLength(9). default value is true
Declaration
[Config.DefaultValue("true")]
public const string ValidateGarbledMessage = "validateGarbledMessage"
Field Value
| Type | Description |
|---|---|
| System.String |
Validation
Toggle on/off validation of incoming messages according to base of custom dictionaries Following parameters with the Validation suffix works only if this property set to true.
Declaration
[Config.DefaultValue("false")]
public const string Validation = "validation"
Field Value
| Type | Description |
|---|---|
| System.String |
WaitForMsgQueuingDelay
This parameter specifies the maximum delay interval on message sending if the internal session queue is full. If the internal session's queue is full then FIX Antenna pause the sending thread till the message pumper thread send some messages and free some space in the queue. If after the delay interval queue still full, then message will be pushed to the queue anyway.
Valid values: positive integer Default value: 1000
Declaration
[Config.DefaultValue("1000")]
public const string WaitForMsgQueuingDelay = "waitForMsgQueuingDelay"
Field Value
| Type | Description |
|---|---|
| System.String |
WelformedValidator
Toggle on/off validation of fields with tag 8, 9, 35 and 10 values. If "validation=false" then this parameter always reads as false.
Declaration
[Config.DefaultValue("true")]
public const string WelformedValidator = "wellformenessValidation"
Field Value
| Type | Description |
|---|---|
| System.String |
WriteSocketAddressToLog
Print socket address to debug log for incoming and outgoing log.
If this option is enabled, Antenna will print messages to debug log in format:
[127.0.0.1]>>8=FIX.4.2 | 9=250...
Declaration
[Config.DefaultValue("false")]
public const string WriteSocketAddressToLog = "writeSocketAddressToLog"
Field Value
| Type | Description |
|---|---|
| System.String |
WritingThreadShutdownTimeout
Sets the timeout interval in seconds for waiting writing thread finishing during session shutdown. Writing thread may be interrupted after this interval if it was blocked.
The parameter must be integer and not negative. Otherwise, the standard value for this parameter will be used. Default value: session heartbeat interval
Declaration
[Config.DefaultValue("-1")]
public const string WritingThreadShutdownTimeout = "writingThreadShutdownTimeout"
Field Value
| Type | Description |
|---|---|
| System.String |
Methods
AddAllProperties(IDictionary<String, String>)
Declaration
public virtual void AddAllProperties(IDictionary<string, string> newProps)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.IDictionary<System.String, System.String> | newProps |
Clone()
Declaration
public object Clone()
Returns
| Type | Description |
|---|---|
| System.Object |
Equals(Object)
Declaration
public override bool Equals(object o)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Object | o |
Returns
| Type | Description |
|---|---|
| System.Boolean |
Overrides
Exists(String)
Declaration
public virtual bool Exists(string propertyName)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propertyName |
Returns
| Type | Description |
|---|---|
| System.Boolean |
GetGlobalConfiguration()
Get global configuration. Method returned default configuration loaded on startup.
Declaration
public static Config GetGlobalConfiguration()
Returns
| Type | Description |
|---|---|
| Config | instance of global configuration. |
GetHashCode()
Declaration
public override int GetHashCode()
Returns
| Type | Description |
|---|---|
| System.Int32 |
Overrides
GetProperties()
Get all properties.
Declaration
public virtual Dictionary<string, string> GetProperties()
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.Dictionary<System.String, System.String> | returned value is cloned. |
GetPropertiesMap()
Declaration
public virtual IDictionary<string, string> GetPropertiesMap()
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IDictionary<System.String, System.String> |
GetProperty(String)
Getter for property.
Declaration
public virtual string GetProperty(string propertyName)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propertyName | the name of property |
Returns
| Type | Description |
|---|---|
| System.String | value for property or null if property not exists |
GetProperty(String, Config.IValidator, Boolean)
Getter for property.
Declaration
public virtual string GetProperty(string propertyName, Config.IValidator validator, bool nullable)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propertyName | the name of property |
| Config.IValidator | validator | validate value from user config. For invalid value will be return default value. |
| System.Boolean | nullable | true - for case when property not exist can return null(nullable=true) or throws exception(nullable=false) |
Returns
| Type | Description |
|---|---|
| System.String | value for property. If property not exists can return null or throws exception(depends on |
GetProperty(String, Config.IValidator, Boolean, Boolean, String)
Getter for property.
Declaration
public virtual string GetProperty(string propertyName, Config.IValidator validator, bool nullable, bool warnInLog, string customMessage = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propertyName | the name of property |
| Config.IValidator | validator | validate value from user config. For invalid value will be return default value. |
| System.Boolean | nullable | true - for case when property not exist can return null(nullable=true) or throws exception(nullable=false) |
| System.Boolean | warnInLog | write warning to log if value from config is not fit to validator |
| System.String | customMessage | customized warning message |
Returns
| Type | Description |
|---|---|
| System.String | value for property. If property not exists can return null or throws exception(depends on |
GetProperty(String, Boolean)
Getter for property.
Declaration
public virtual string GetProperty(string propertyName, bool nullable)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propertyName | the name of property |
| System.Boolean | nullable | true - for case when property not exist can return null(nullable=true) or throws exception(nullable=false) |
Returns
| Type | Description |
|---|---|
| System.String | value for property or throws runtime exception if property not exists |
GetProperty(String, String)
Getter for property.
Declaration
public virtual string GetProperty(string propertyName, string defaultValue)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propertyName | the name of property |
| System.String | defaultValue | the default value for property |
Returns
| Type | Description |
|---|---|
| System.String | value for property or defaultValue if property not exists |
GetPropertyAsBoolean(String)
Get property value as boolean.
Declaration
public virtual bool GetPropertyAsBoolean(string propertyName)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propertyName | the name of property |
Returns
| Type | Description |
|---|---|
| System.Boolean | value for property or false if property not exists |
GetPropertyAsBoolean(String, Boolean, Boolean, String)
Get property value as boolean.
Declaration
public virtual bool GetPropertyAsBoolean(string propertyName, bool defaultValue, bool warnToLog = false, string customMessage = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propertyName | the name of property |
| System.Boolean | defaultValue | the default value for property |
| System.Boolean | warnToLog | write warning to log if value from user config is not in range |
| System.String | customMessage | customized message for warning |
Returns
| Type | Description |
|---|---|
| System.Boolean | value for property or defaultValue if property not exists |
GetPropertyAsBytesLength(String)
Get property value as bytes length. Example:
1=1
1b=1
1Kb=1024
1Mb=1048576
1Gb=1073741824
Declaration
public virtual long GetPropertyAsBytesLength(string propertyName)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propertyName | the name of property |
Returns
| Type | Description |
|---|---|
| System.Int64 | value for property or -1 if property not exists |
GetPropertyAsBytesLength(String, Int32)
Get property value as bytes length. Example:
1=1
1b=1
1Kb=1024
1Mb=1048576
1Gb=1073741824
Declaration
public virtual long GetPropertyAsBytesLength(string propertyName, int defaultValue)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propertyName | the name of property |
| System.Int32 | defaultValue | the default value for property |
Returns
| Type | Description |
|---|---|
| System.Int64 | value for property or defaultValue if property not exists |
GetPropertyAsInt(String)
Get property value as int.
Declaration
public virtual int GetPropertyAsInt(string propertyName)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propertyName | the name of property |
Returns
| Type | Description |
|---|---|
| System.Int32 | value for property or -1 if property not exists |
GetPropertyAsInt(String, Int32)
Get property value as int.
Declaration
public virtual int GetPropertyAsInt(string propertyName, int defaultValue)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propertyName | the name of property |
| System.Int32 | defaultValue | the default value for property |
Returns
| Type | Description |
|---|---|
| System.Int32 | value for property or defaultValue if property not exists |
GetPropertyAsInt(String, Int32, Int32)
Get property value as int. If value is not in range than return default value or throws exception(if default value is not in range too)
Declaration
public virtual int GetPropertyAsInt(string propertyName, int min, int max)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propertyName | the name of property |
| System.Int32 | min | the minimal value. Value >= min |
| System.Int32 | max | the maximal value. max >= Value |
Returns
| Type | Description |
|---|---|
| System.Int32 | value for property or defaultValue if property not exists or in rage |
GetPropertyAsInt(String, Int32, Int32, Boolean, String)
Get property value as int. If value is not in range than return default value or throws exception(if default value is not in range too)
Declaration
public virtual int GetPropertyAsInt(string propertyName, int min, int max, bool warnToLog, string customMessage = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propertyName | the name of property |
| System.Int32 | min | the minimal value. Value >= min |
| System.Int32 | max | the maximal value. max >= Value |
| System.Boolean | warnToLog | write warning to log if value from user config is not in range |
| System.String | customMessage | customized message for warning |
Returns
| Type | Description |
|---|---|
| System.Int32 | value for property or defaultValue if property not exists or in rage |
GetPropertyAsLong(String)
Get property value as long.
Declaration
public virtual long GetPropertyAsLong(string propertyName)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propertyName | the name of property |
Returns
| Type | Description |
|---|---|
| System.Int64 | value for property or -1 if property not exists |
GetPropertyAsLong(String, Int64)
Get property value as long.
Declaration
public virtual long GetPropertyAsLong(string propertyName, long defaultValue)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propertyName | the name of property |
| System.Int64 | defaultValue | the default value for property |
Returns
| Type | Description |
|---|---|
| System.Int64 | value for property or defaultValue if property not exists |
PrintConfiguration()
Prints configuration to log.
Declaration
public virtual void PrintConfiguration()
SetAllProperties(IDictionary<String, String>)
Declaration
public virtual void SetAllProperties(IDictionary<string, string> newProps)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.IDictionary<System.String, System.String> | newProps |
SetProperty(String, Int32)
Setter for properties.
Declaration
public virtual void SetProperty(string propertyName, int propertyValue)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propertyName | the name of property |
| System.Int32 | propertyValue | the value for property |
SetProperty(String, String)
Setter for properties.
Declaration
public virtual void SetProperty(string propertyName, string propertyValue)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | propertyName | the name of property |
| System.String | propertyValue | the value for property |