Example #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="client"></param>
        /// <param name="callback"></param>
        /// <param name="limit"></param>
        /// <param name="symbols"></param>
        public static IDepthClient Subscribe(this IDepthClient client, Action <DepthUpdateEventArgs> callback, int limit, params string[] symbols)
        {
            Throw.IfNull(client, nameof(client));
            Throw.IfNull(symbols, nameof(symbols));

            if (callback == null && !symbols.Any())
            {
                throw new ArgumentException($"{nameof(Subscribe)}: At least one symbol is required.", nameof(symbols));
            }

            foreach (var symbol in symbols)
            {
                client.Subscribe(symbol, limit, callback);
            }

            return(client);
        }
Example #2
0
 /// <summary>
 /// The DI constructor.
 /// </summary>
 /// <param name="client">The JSON client (required).</param>
 /// <param name="controller">The JSON stream controller (required).</param>
 /// <param name="logger">The logger (optional).</param>
 public DepthClientManager(IDepthClient client, IJsonStreamController controller, ILogger <DepthClientManager> logger = null)
     : base(client, controller, logger)
 {
 }
 public DepthClientTests()
 {
     _client = new DepthClient();
 }
Example #4
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="client"></param>
 /// <param name="symbol"></param>
 /// <param name="limit"></param>
 public static IDepthClient Unsubscribe(this IDepthClient client, string symbol, int limit)
 => client.Unsubscribe(symbol, limit, null);
Example #5
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="client"></param>
 /// <param name="symbol"></param>
 public static IDepthClient Unsubscribe(this IDepthClient client, string symbol)
 => client.Unsubscribe(symbol, default, null);
Example #6
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="client"></param>
 /// <param name="limit"></param>
 /// <param name="symbols"></param>
 public static IDepthClient Subscribe(this IDepthClient client, int limit, params string[] symbols)
 => Subscribe(client, null, limit, symbols);
Example #7
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="client"></param>
 /// <param name="symbol"></param>
 /// <param name="callback"></param>
 /// <returns></returns>
 public static IDepthClient Subscribe(this IDepthClient client, string symbol, Action <DepthUpdateEventArgs> callback)
 => client.Subscribe(symbol, default, callback);
Example #8
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="client"></param>
 /// <param name="symbols"></param>
 /// <returns></returns>
 public static IDepthClient Unsubscribe(this IDepthClient client, params string[] symbols)
 => Unsubscribe(client, null, default, symbols);
 /// <summary>
 /// The DI constructor.
 /// </summary>
 /// <param name="client">The JSON client (required).</param>
 /// <param name="controller">The web socket stream controller (required).</param>
 /// <param name="logger">The logger (optional).</param>
 public DepthWebSocketClientManager(IDepthClient client, IWebSocketStreamController controller, ILogger <DepthWebSocketClientManager> logger = null)
     : base(client, controller, logger)
 {
 }