ClientFixSession

StockSharp.Server.Fix

接続された FIX クライアント セッションを、独自のライター、ダイアレクト、メッセージキューをアウトゴする。

継承元: FixSession

実装: IMessageListenerSession, ILogReceiver, ILogSource, IDisposable

コンストラクター

ClientFixSession
public ClientFixSession(IFixDialect fixDialect, string version, string language, Stream clientStream, TcpClient client, TimeSpan quotesInterval, FixSession serverSession, string authorizationToken, ISessionTransactionIdStorage transactionIdStorage, bool checkSumDisabled, bool isDemo, int maxPendingMessages)
clientFixSession = ClientFixSession(fixDialect, version, language, clientStream, client, quotesInterval, serverSession, authorizationToken, transactionIdStorage, checkSumDisabled, isDemo, maxPendingMessages)

ClientFixSession の新規インスタンスを初期化します。

fixDialect
FIX はメッセージの解析と書き込みのための文字盤です。
version
FIXプロトコルバージョンの文字列。
language
クライアント言語の好み。
clientStream
通信のためのネットワークストリーム。
client
TCP クライアント接続
quotesInterval
引用符の更新を集計するためのインターバル。
serverSession
親サーバー側セッションの設定
authorizationToken
認証トークンはログイン後、返されます。
transactionIdStorage
社内のトランザクションIDにFIXリクエストIDをマッピングするためのストレージ。
checkSumDisabled
FIXチェックサム検証が無効になっているかどうか。
isDemo
デモセッションであっても。
maxPendingMessages
バックプレッチャが切断を強制する前に、ジョブアイテムをキューアウトゴする最大数。 ゼロは、アンバウンドを意味します。

プロパティ

AuthorizationToken
public string AuthorizationToken { get; }
value = clientFixSession.AuthorizationToken

成功ログイン後、このセッションに割り当てられた承認トークン。

BytesReceived
public long BytesReceived { get; set; }
value = clientFixSession.BytesReceived
clientFixSession.BytesReceived = value

受け取られたバイト数。

BytesSent
public long BytesSent { get; set; }
value = clientFixSession.BytesSent
clientFixSession.BytesSent = value

送信されたバイト数。

ErrorCount
public int ErrorCount { get; set; }
value = clientFixSession.ErrorCount
clientFixSession.ErrorCount = value

エラー数。

FixDialect
public IFixDialect FixDialect { get; }
value = clientFixSession.FixDialect

セッションでメッセージのシリアライズに使われるFIXのダイヤル。

IsConnected
public override bool IsConnected { get; }
value = clientFixSession.IsConnected

接続状況を取得します。

IsDemo
public bool IsDemo { get; }
value = clientFixSession.IsDemo

このセッションがデモモードで動作するかどうか。

Language
public string Language { get; }
value = clientFixSession.Language

クライアント言語の優先度(e.g. "en", "ru")。

OutgoingQueueCount
public int OutgoingQueueCount { get; }
value = clientFixSession.OutgoingQueueCount

発信メッセージキューの現在のサイズ(チャネルがカウントを割くない場合-1)。

QuotesInterval
public TimeSpan QuotesInterval { get; }
value = clientFixSession.QuotesInterval

送信前に増分引用の更新を集計するためのインターバル。

RemoteEndPoint
public EndPoint RemoteEndPoint { get; }
value = clientFixSession.RemoteEndPoint

接続されたクライアントのリモートエンドポイントアドレス。

Serializer
public IFixServerSerializer Serializer { get; private set; }
value = clientFixSession.Serializer
clientFixSession.Serializer = value

このセッションのFIXシリアライズ

ServerSession
public FixSession ServerSession { get; }
value = clientFixSession.ServerSession

親サーバー側セッションの設定

TotalErrorCount
public int TotalErrorCount { get; set; }
value = clientFixSession.TotalErrorCount
clientFixSession.TotalErrorCount = value

エラーカウントの合計。

TransactionIdStorage
public ISessionTransactionIdStorage TransactionIdStorage { get; }
value = clientFixSession.TransactionIdStorage
UpdatedTime
public DateTime UpdatedTime { get; }
value = clientFixSession.UpdatedTime

受信したメッセージの UTC タイムスタンプ (ハートビートまたはデータ).

Version
public string Version { get; }
value = clientFixSession.Version

ログオン中にクライアントが報告したFIXプロトコルバージョン。

Writer
public IFixWriter Writer { get; }
value = clientFixSession.Writer

メッセージをシリアライズするためのFIXライター。

メソッド

DisposeManaged
protected override void DisposeManaged()
clientFixSession.DisposeManaged()

リソースのリリース

EnqueueWork
public bool EnqueueWork(ServerSubscription subscription, string requestId, Func<ClientFixSession, string, CancellationToken, ValueTask<bool>> handler)
result = clientFixSession.EnqueueWork(subscription, requestId, handler)

処理のためのシリアライズ作業項目をエンキューします。キューがいっぱいか完了(クライアントのバックプレッシャー)で、呼び出し側は切断を強制できます。

IncreaseBytesSent
public override void IncreaseBytesSent(int count)
clientFixSession.IncreaseBytesSent(count)

代表取締役社長 佐藤 浩一

count
値。
IncreaseErrorCount
public override void IncreaseErrorCount()
clientFixSession.IncreaseErrorCount()

代表取締役社長 佐藤 浩一

Init
public Task Init(FixServerSettings serverSettings, Action<ClientFixSession> logout, CancellationToken cancellationToken)
result = clientFixSession.Init(serverSettings, logout, cancellationToken)

セッションの発信メッセージ処理ループを開始します。

serverSettings
サーバー設定(最大誤差閾値に使用されます)。
logout
セッションが強制的に切断されなければならないときに呼び戻す。
cancellationToken
キャンセルトークン。

戻り値: セッションの生涯を走るタスク。

InitSerializer
public void InitSerializer(IFixReader reader)
clientFixSession.InitSerializer(reader)

指定したリーダーでシリアル化を初期化します。

reader
受信メッセージのFIXリーダー。
Ping
public void Ping()
clientFixSession.Ping()

最後のアクティビティタイムスタンプを現在のUTC時間に更新します。

ResetErrorCount
public override void ResetErrorCount()
clientFixSession.ResetErrorCount()

代表取締役社長 佐藤 浩一