FixServer
FIX-Server.
Erbt von: BaseProtocolServer<ClientFixSession, FixServerSubscription, FixServerSettings>
Konstruktoren
public FixServer(IAuthorization authorization, ITransactionIdStorage transactionIdStorage, string licenseFeatureId, Type componentType)
fixServer = FixServer(authorization, transactionIdStorage, licenseFeatureId, componentType)
Initialisiert eine neue Instanz von FixServer.
- authorization
- Die Kundenauthentifizierung.
- transactionIdStorage
- Speicherung von Transaktions- und Anforderungsidentifikatoren.
- licenseFeatureId
- LicenseFeatureId
- componentType
- ComponentTimestamp
public FixServer(IAuthorization authorization, ITransactionIdStorage transactionIdStorage, string licenseFeatureId, DateTime componentTimestamp, IMessageConverter converter)
fixServer = FixServer(authorization, transactionIdStorage, licenseFeatureId, componentTimestamp, converter)
Initialisiert eine neue Instanz von FixServer.
- authorization
- Die Kundenauthentifizierung.
- transactionIdStorage
- Speicherung von Transaktions- und Anforderungsidentifikatoren.
- licenseFeatureId
- LicenseFeatureId
- componentTimestamp
- ComponentTimestamp
- converter
- Nachrichtenkonverter.
Eigenschaften
public IAuthorization Authorization { get; }
value = fixServer.Authorization
Die Kundenauthentifizierung.
public DateTime ComponentTimestamp { get; }
value = fixServer.ComponentTimestamp
Komponentenzeitstempel.
public IMessageConverter Converter { get; }
value = fixServer.Converter
Nachrichtenkonverter für FIX ↔ StockSharp Nachrichtenkonvertierung.
public string LicenseFeatureId { get; }
value = fixServer.LicenseFeatureId
Lizenzfunktions-ID wird als Logon-Antwort gesendet.
public bool SendOutHeartbeats { get; set; }
value = fixServer.SendOutHeartbeats
fixServer.SendOutHeartbeats = value
Senden Sie Herzschlag über ausgehende Nachrichten Kanal.
public ITransactionIdStorage TransactionIdStorage { get; }
value = fixServer.TransactionIdStorage
Methoden
protected virtual OrderCondition CreateCondition()
result = fixServer.CreateCondition()
Um die Orderbedingung zu erstellen.
Rückgabe: Die Auftragsbedingung.
protected override FixServerSubscription CreateSubscription(ClientFixSession session, string requestId, ServerSubscription subscription, MessageTypes type)
result = fixServer.CreateSubscription(session, requestId, subscription, type)
private long CreateTransactionId(ClientFixSession session, string requestId)
result = fixServer.CreateTransactionId(session, requestId)
Generieren Sie einen neuen Request-Identifier.
- session
- Sitzung.
- requestId
- Anfragekennung.
Rückgabe: Transaktionskennung.
protected override string GetSessionKey(ClientFixSession session)
result = fixServer.GetSessionKey(session)
protected override bool IsStubSubscription(FixServerSubscription subscription)
result = fixServer.IsStubSubscription(subscription)
public override void Load(SettingsStorage storage)
fixServer.Load(storage)
Lasteinstellungen.
- storage
- Einstellungen Lagerung.
protected override void OnClearListenerState()
fixServer.OnClearListenerState()
Klarer protokollspezifischer Listener-Zustand (Stop Listener, etc.).
protected virtual IAsyncEnumerable<Message> OnProcess(FixSession session, string msgType, IFixReader reader, CancellationToken cancellationToken)
result = fixServer.OnProcess(session, msgType, reader, cancellationToken)
Die Methode wird aufgerufen, wenn die empfangene Nachricht verarbeitet wird.
protected override void OnStartListeners(CancellationToken cancellationToken)
fixServer.OnStartListeners(cancellationToken)
Starten Sie protokollspezifische Listener (TCP, etc.). Fügen Sie Aufgaben zu _backgroundTasks hinzu.
protected virtual void PostInitCondition(char ordType, OrderCondition condition)
fixServer.PostInitCondition(ordType, condition)
Die endgültige Initialisierung der Auftragsbedingung.
- ordType
- Auftragsart.
- condition
- Die Auftragsbedingung.
protected override void ProcessInMessage(Message message, CancellationToken cancellationToken)
fixServer.ProcessInMessage(message, cancellationToken)
Verarbeiten Sie eine eingehende Nachricht und Route zu abonnierten Clients.
protected override void ProcessLogout(ClientFixSession session)
fixServer.ProcessLogout(session)
protected virtual ValueTask<bool> ReadOrderConditionAsync(IFixServerSerializer serializer, FixTags tag, Func<OrderCondition> getCondition, CancellationToken cancellationToken)
result = fixServer.ReadOrderConditionAsync(serializer, tag, getCondition, cancellationToken)
Um die Bestellbedingung OrderCondition zu lesen.
- serializer
- IFixServerSerializer
- tag
- Markierung.
- getCondition
- Die Funktion, die die Auftragsbedingung zurückgibt.
- cancellationToken
- CancellationToken
Rückgabe: Ob die Daten erfolgreich verarbeitet wurden.
public override void Save(SettingsStorage storage)
fixServer.Save(storage)
Einstellungen speichern.
- storage
- Einstellungen Lagerung.
protected override void ScheduleSessionWork(ClientFixSession session, ServerSubscription subscription, string requestId, Func<ClientFixSession, string, CancellationToken, ValueTask<bool>> handler)
fixServer.ScheduleSessionWork(session, subscription, requestId, handler)
private static string TryGetRequestId(ClientFixSession session, long transactionId)
result = FixServer.TryGetRequestId(session, transactionId)
Holen Sie sich den Request Identifier.
- session
- Die Sitzung.
- transactionId
- Transaktionskennung.
Rückgabe: Anfragekennung.
internal static bool TryResolveTransactionId(ISessionTransactionIdStorage storage, string requestId, long transactionId)
result = FixServer.TryResolveTransactionId(storage, requestId, transactionId)
Lösen Sie eine Client Request ID für eine Server Transaktions-ID.
- storage
- Die Session Transaction ID Storage.
- requestId
- Die Request Identifier.
- transactionId
- Die gelöste Transaktions-ID.
Rückgabe: wenn die Transaktions-ID aufgelöst wurde; andernfalls,
protected virtual ValueTask WriterFixOrderConditionAsync(IFixServerSerializer serializer, OrderCondition condition, CancellationToken cancellationToken)
result = fixServer.WriterFixOrderConditionAsync(serializer, condition, cancellationToken)
Um Daten nach der Bestellbedingung (async-Version) aufzuzeichnen.
- serializer
- IFixServerSerializer
- condition
- Bestellbedingung (e.g., Stop- und Algo-Orders-Parameter).
- cancellationToken
- Löschungszeichen.