/// <summary> /// Initializes a new instance of the <see cref="MessageAdapterWrapper"/>. /// </summary> /// <param name="innerAdapter">Underlying adapter.</param> /// <param name="extendedInfoStorage">Extended info <see cref="Message.ExtensionInfo"/> storage.</param> /// <param name="storageName">Storage name.</param> /// <param name="fields">Extended fields (names and types).</param> public ExtendedInfoStorageMessageAdapter(IMessageAdapter innerAdapter, IExtendedInfoStorage extendedInfoStorage, string storageName, Tuple <string, Type>[] fields) : base(innerAdapter) { _extendedInfoStorage = extendedInfoStorage; _storageName = storageName; _fields = fields; }
/// <summary> /// Initializes a new instance of the <see cref="MessageAdapterWrapper"/>. /// </summary> /// <param name="innerAdapter">Underlying adapter.</param> /// <param name="extendedInfoStorage">Extended info <see cref="Message.ExtensionInfo"/> storage.</param> public ExtendedInfoStorageMessageAdapter(IMessageAdapter innerAdapter, IExtendedInfoStorage extendedInfoStorage) : base(innerAdapter) { if (InnerAdapter.StorageName.IsEmpty()) { throw new ArgumentException(nameof(innerAdapter)); } _extendedInfoStorage = extendedInfoStorage ?? throw new ArgumentNullException(nameof(extendedInfoStorage)); _storageName = InnerAdapter.StorageName; _fields = InnerAdapter.SecurityExtendedFields.ToArray(); }
/// <summary> /// Initializes a new instance of the <see cref="MessageAdapterWrapper"/>. /// </summary> /// <param name="innerAdapter">Underlying adapter.</param> /// <param name="extendedInfoStorage">Extended info <see cref="Message.ExtensionInfo"/> storage.</param> /// <param name="storageName">Storage name.</param> /// <param name="fields">Extended fields (names and types).</param> public ExtendedInfoStorageMessageAdapter(IMessageAdapter innerAdapter, IExtendedInfoStorage extendedInfoStorage, string storageName, IEnumerable <Tuple <string, Type> > fields) : base(innerAdapter) { if (storageName.IsEmpty()) { throw new ArgumentNullException(nameof(storageName)); } _extendedInfoStorage = extendedInfoStorage ?? throw new ArgumentNullException(nameof(extendedInfoStorage)); _storageName = storageName; _fields = fields ?? throw new ArgumentNullException(nameof(fields)); }
/// <summary> /// Initialize <see cref="RemoteStorage"/>. /// </summary> /// <param name="storageRegistry">Market-data storage.</param> /// <param name="securityStorage">Securities meta info storage.</param> /// <param name="extendedInfoStorage">Extended info <see cref="Message.ExtensionInfo"/> storage.</param> /// <param name="exchangeInfoProvider">The exchange boards provider.</param> protected RemoteStorage(IStorageRegistry storageRegistry, ISecurityStorage securityStorage, IExtendedInfoStorage extendedInfoStorage, IExchangeInfoProvider exchangeInfoProvider) { StorageRegistry = storageRegistry ?? throw new ArgumentNullException(nameof(storageRegistry)); SecurityStorage = securityStorage ?? throw new ArgumentNullException(nameof(securityStorage)); ExtendedInfoStorage = extendedInfoStorage ?? throw new ArgumentNullException(nameof(extendedInfoStorage)); ExchangeInfoProvider = exchangeInfoProvider ?? throw new ArgumentNullException(nameof(exchangeInfoProvider)); AddDataType(typeof(ExecutionMessage)); AddDataType(typeof(Level1ChangeMessage)); AddDataType(typeof(QuoteChangeMessage)); AddDataType(typeof(NewsMessage)); foreach (var candleType in StockSharp.Messages.Extensions.AllCandleTypes) { AddDataType(candleType); } AddDataType(typeof(PositionChangeMessage)); }
/// <summary> /// Initialize <see cref="RemoteStorage"/>. /// </summary> /// <param name="storageRegistry">Market-data storage.</param> /// <param name="securityStorage">Securities meta info storage.</param> /// <param name="extendedInfoStorage">Extended info <see cref="Message.ExtensionInfo"/> storage.</param> /// <param name="exchangeInfoProvider">The exchange boards provider.</param> protected RemoteStorage(IStorageRegistry storageRegistry, ISecurityStorage securityStorage, IExtendedInfoStorage extendedInfoStorage, IExchangeInfoProvider exchangeInfoProvider) { StorageRegistry = storageRegistry ?? throw new ArgumentNullException(nameof(storageRegistry)); SecurityStorage = securityStorage ?? throw new ArgumentNullException(nameof(securityStorage)); ExtendedInfoStorage = extendedInfoStorage ?? throw new ArgumentNullException(nameof(extendedInfoStorage)); ExchangeInfoProvider = exchangeInfoProvider ?? throw new ArgumentNullException(nameof(exchangeInfoProvider)); AddDataType(typeof(ExecutionMessage)); AddDataType(typeof(Level1ChangeMessage)); AddDataType(typeof(QuoteChangeMessage)); AddDataType(typeof(NewsMessage)); AddDataType(typeof(TimeFrameCandleMessage)); AddDataType(typeof(RangeCandleMessage)); AddDataType(typeof(RenkoCandleMessage)); AddDataType(typeof(PnFCandleMessage)); AddDataType(typeof(TickCandleMessage)); AddDataType(typeof(VolumeCandleMessage)); AddDataType(typeof(PositionChangeMessage)); }