Esempio n. 1
0
 /// <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));
        }
Esempio n. 4
0
        /// <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));
        }
Esempio n. 5
0
        /// <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));
        }