ClientFixSession

StockSharp.Server.Fix

Stellt eine verbundene FIX-Clientsitzung mit eigenem Schreiber, Dialekt und ausgehender Nachrichtenwarteschlange dar.

Erbt von: FixSession

Implementiert: IMessageListenerSession, ILogReceiver, ILogSource, IDisposable

Konstruktoren

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)

Initialisiert eine neue Instanz von ClientFixSession.

fixDialect
FIX Dialekt für Nachrichten Parsing und Schreiben.
version
FIX-Protokoll-Versionszeichenfolge.
language
Präferenz der Kundensprache.
clientStream
Netzwerk-Stream für die Kommunikation.
client
TCP-Clientverbindung.
quotesInterval
Intervall für die Aggregation von Angebotsaktualisierungen.
serverSession
Parent serverseitige Sitzungskonfiguration.
authorizationToken
Autorisierungstoken nach erfolgreicher Anmeldung zurückgegeben.
transactionIdStorage
Speichern für die Zuordnung von FIX-Anfrage-IDs zu internen Transaktions-IDs.
checkSumDisabled
Ob die FIX-Prüfsummenvalidierung deaktiviert ist.
isDemo
Ob es sich um eine Demo-Sitzung handelt.
maxPendingMessages
Maximale Anzahl an angestellten Arbeitsgegenständen, bevor der Gegendruck eine Trennung erzwingt.

Eigenschaften

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

Autorisierungstoken, die dieser Sitzung nach erfolgreicher Anmeldung zugewiesen wurden.

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

Die Anzahl der empfangenen Bytes.

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

Die Anzahl der gesendeten Bytes.

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

Die Anzahl der Fehler.

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

FIX-Dialekt, der von dieser Sitzung für die Nachrichtenserialisierung verwendet wird.

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

Verbindungsstatus erhalten.

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

Ob diese Sitzung im Demo-Modus funktioniert.

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

Client Language Preference (e.g. "en", "ru").

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

Aktuelle Größe der ausgehenden Nachrichtenwarteschlange (-1, wenn der Kanal keine Zählung ausstellt).

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

Intervall zum Aggregieren von inkrementellen Angebotsaktualisierungen vor dem Senden.

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

Remote-Endpunktadresse des verbundenen Clients.

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

Der FIX-Serializer für diese Sitzung.

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

Parent serverseitige Sitzungskonfiguration.

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

Gesamtzahl der Fehler.

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

UTC-Zeitstempel der zuletzt empfangenen Nachricht (Herzschlag oder Daten).

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

FIX-Protokollversion, die vom Client während der Anmeldung gemeldet wurde.

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

FIX Writer zum Serialisieren von ausgehenden Nachrichten.

Methoden

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

Ressourcen freigeben.

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

Warteschlange für die Bearbeitung eines Serialisierungs-Arbeitselements. Gibt zurück, wenn die Warteschlange vollständig oder abgeschlossen ist (Client-Backdruck), damit der Anrufer eine Trennung erzwingen kann.

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

Erhöhen Sie BytesSent.

count
Wert.
IncreaseErrorCount
public override void IncreaseErrorCount()
clientFixSession.IncreaseErrorCount()

Erhöhen Sie ErrorCount.

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

Starten Sie die ausgehende Nachrichtenverarbeitungsschleife für diese Sitzung.

serverSettings
Servereinstellungen (für maximale Fehlerschwellenwerte verwendet).
logout
Callback zum Aufrufen, wenn die Sitzung gewaltsam getrennt werden muss.
cancellationToken
Löschungszeichen.

Rückgabe: Aufgabe, die für die gesamte Lebensdauer der Sitzung ausgeführt wird.

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

Initialisieren Sie den Serializer mit dem angegebenen Reader.

reader
Der FIX-Reader für eingehende Nachrichten.
Ping
public void Ping()
clientFixSession.Ping()

Aktualisieren Sie den letzten Aktivitätszeitstempel auf die aktuelle UTC-Zeit.

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

Reset ErrorCount.