IBasketRoutingManager

StockSharp.Algo.Basket

バスケットアダプターでメッセージルーティングを管理するためのインターフェイス。すべてのルーティング、接続、およびサブスクリプションロジックをカプセル化します。

プロパティ

ConnectDisconnectEventOnFirstAdapter
public bool ConnectDisconnectEventOnFirstAdapter { get; set; }
value = iBasketRoutingManager.ConnectDisconnectEventOnFirstAdapter
iBasketRoutingManager.ConnectDisconnectEventOnFirstAdapter = value

接続/接続解除イベントを最初のアダプターで始動するか、設定します。

ConnectedCount
public int ConnectedCount { get; }
value = iBasketRoutingManager.ConnectedCount

接続されたアダプターのカウントを取得します。

HasPendingAdapters
public bool HasPendingAdapters { get; }
value = iBasketRoutingManager.HasPendingAdapters

アダプターが接続しているかどうかを取得します。

TransactionIdGenerator
public IdGenerator TransactionIdGenerator { get; set; }
value = iBasketRoutingManager.TransactionIdGenerator
iBasketRoutingManager.TransactionIdGenerator = value

内部の子サブスクリプションルーティングに使用されるトランザクションIDジェネレータ。 親アダプターのジェネレータと同期して保存する必要があります。

メソッド

AddOrderAdapter
public void AddOrderAdapter(long transactionId, IMessageAdapter adapter)
iBasketRoutingManager.AddOrderAdapter(transactionId, adapter)

注文トランザクションをアダプターマッピングに追加します。

ApplyParentLookupId
public bool ApplyParentLookupId(ISubscriptionIdMessage msg)
result = iBasketRoutingManager.ApplyParentLookupId(msg)

サブスクリプションメッセージに親のルックアップIDリマッピングを適用します。

戻り値: 有効な親が見つからない場合、メッセージが削除される必要があります。

BeginConnect
public void BeginConnect()
iBasketRoutingManager.BeginConnect()

接続プロセスを始めて下さい。

BeginDisconnect
public void BeginDisconnect()
iBasketRoutingManager.BeginDisconnect()

切断プロセスを始めて下さい。

GetAdaptersToDisconnect
public IDictionary<IMessageAdapter, IMessageAdapter> GetAdaptersToDisconnect(Func<IMessageAdapter, IMessageAdapter> adapterLookup)
result = iBasketRoutingManager.GetAdaptersToDisconnect(adapterLookup)

接続解除が必要なアダプターを入手してください。

adapterLookup
アダプターを基底から抜く機能。

戻り値: アダプターを根ざすためにラッパーの辞書。

GetPortfolioAdapter
public IMessageAdapter GetPortfolioAdapter(string portfolioName, Func<IMessageAdapter, IMessageAdapter> adapterLookup)
result = iBasketRoutingManager.GetPortfolioAdapter(portfolioName, adapterLookup)

ポートフォリオベースのルーティング用のアダプターを入手してください。

GetSubscribers
public long[] GetSubscribers(DataType dataType)
result = iBasketRoutingManager.GetSubscribers(dataType)

サブスクライブ ID をデータ型に取得します。

InitializeAdapter
public void InitializeAdapter(IMessageAdapter adapter)
iBasketRoutingManager.InitializeAdapter(adapter)

接続用のアダプタを初期化します。

LoadPortfolioAdapters
public void LoadPortfolioAdapters(IEnumerable<ValueTuple<string, IMessageAdapter>> mappings)
iBasketRoutingManager.LoadPortfolioAdapters(mappings)

ポートフォリオのアダプターマッピングをクリアしてロードします。

LoadSecurityAdapters
public void LoadSecurityAdapters(IEnumerable<ValueTuple<ValueTuple<SecurityId, DataType>, IMessageAdapter>> mappings)
iBasketRoutingManager.LoadSecurityAdapters(mappings)

金融機器のアダプターマッピングをクリアしてロードします。

OnAdapterRemoved
public void OnAdapterRemoved(IMessageAdapter adapter)
iBasketRoutingManager.OnAdapterRemoved(adapter)

アダプターが内部アダプターリストから外されると呼び出されます。

OnAdaptersCleared
public void OnAdaptersCleared()
iBasketRoutingManager.OnAdaptersCleared()

アダプターが内部アダプターリストからクリアされると呼び出されます。

OnPortfolioAdapterProviderChanged
public void OnPortfolioAdapterProviderChanged(string portfolioName, Guid adapterId, bool isAdd, Func<Guid, IMessageAdapter> findAdapter)
iBasketRoutingManager.OnPortfolioAdapterProviderChanged(portfolioName, adapterId, isAdd, findAdapter)

ハンドルポートフォリオアダプタープロバイダ変更。

OnSecurityAdapterProviderChanged
public void OnSecurityAdapterProviderChanged(ValueTuple<SecurityId, DataType> key, Guid adapterId, bool isAdd, Func<Guid, IMessageAdapter> findAdapter)
iBasketRoutingManager.OnSecurityAdapterProviderChanged(key, adapterId, isAdd, findAdapter)

金融商品取引業者の交換を処理します。

ProcessBackMessage
public void ProcessBackMessage(IMessageAdapter adapter, ISubscriptionMessage subscrMsg, Func<IMessageAdapter, IMessageAdapter> adapterLookup)
iBasketRoutingManager.ProcessBackMessage(adapter, subscrMsg, adapterLookup)

サブスクリプショントラッキングでバックメッセージを処理します。

ProcessConnect
public ValueTuple<IEnumerable<Message>, Message[], Message[]> ProcessConnect(IMessageAdapter adapter, IMessageAdapter wrapper, IEnumerable<MessageTypes> supportedMessages, Exception error)
result = iBasketRoutingManager.ProcessConnect(adapter, wrapper, supportedMessages, error)

プロセスの成功または失敗した関係。

adapter
接続するアダプタ。
wrapper
アダプターのラッパー。
supportedMessages
対応するメッセージタイプ。
error
接続エラーの場合。

戻り値: メッセージを送信し、メッセージを送信してループバックに送る余分なメッセージ。

ProcessDisconnect
public IEnumerable<Message> ProcessDisconnect(IMessageAdapter adapter, IMessageAdapter wrapper, IEnumerable<MessageTypes> supportedMessages, Exception error)
result = iBasketRoutingManager.ProcessDisconnect(adapter, wrapper, supportedMessages, error)

プロセス切断。

adapter
接続解除されたアダプタ。
wrapper
アダプターのラッパー。
supportedMessages
対応するメッセージタイプ。
error
どんな場合も、接続エラーを解除します。

戻り値: 送信する余分メッセージ。

ProcessInMessageAsync
public ValueTask<RoutingInResult> ProcessInMessageAsync(Message message, Func<IMessageAdapter, IMessageAdapter> adapterLookup, CancellationToken cancellationToken)
result = iBasketRoutingManager.ProcessInMessageAsync(message, adapterLookup, cancellationToken)

着信メッセージの処理とルーティングの決定の決定

ProcessOutMessageAsync
public ValueTask<RoutingOutResult> ProcessOutMessageAsync(IMessageAdapter innerAdapter, Message message, Func<IMessageAdapter, IMessageAdapter> adapterLookup, CancellationToken cancellationToken)
result = iBasketRoutingManager.ProcessOutMessageAsync(innerAdapter, message, adapterLookup, cancellationToken)

外部のアダプターから発信メッセージを処理する。

Reset
public void Reset(bool clearPending)
iBasketRoutingManager.Reset(clearPending)

すべてのルーティング状態をリセットします。

clearPending
送信メッセージのクリアかどうか。
TryGetOrderAdapter
public bool TryGetOrderAdapter(long transactionId, IMessageAdapter adapter)
result = iBasketRoutingManager.TryGetOrderAdapter(transactionId, adapter)

トランザクションIDで注文するアダプターを手に入れよう。