/// <summary> /// /// </summary> /// <param name="client"></param> /// <param name="callback"></param> /// <param name="interval"></param> /// <param name="symbols"></param> public static ICandlestickClient Unsubscribe(this ICandlestickClient client, Action <CandlestickEventArgs> callback, CandlestickInterval interval, params string[] symbols) { Throw.IfNull(client, nameof(client)); Throw.IfNull(symbols, nameof(symbols)); if (callback == null && !symbols.Any()) { throw new ArgumentException($"{nameof(Unsubscribe)}: At least one symbol is required.", nameof(symbols)); } foreach (var symbol in symbols) { client.Unsubscribe(symbol, interval, callback); } return(client); }
/// <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 CandlestickClientManager(ICandlestickClient client, IJsonStreamController controller, ILogger <CandlestickClientManager> logger = null) : base(client, controller, logger) { }
/// <summary> /// /// </summary> /// <param name="client"></param> /// <param name="symbol"></param> /// <param name="interval"></param> public static ICandlestickClient Unsubscribe(this ICandlestickClient client, string symbol, CandlestickInterval interval) => client.Unsubscribe(symbol, interval, null);
/// <summary> /// /// </summary> /// <param name="client"></param> /// <param name="interval"></param> /// <param name="symbols"></param> /// <returns></returns> public static ICandlestickClient Unsubscribe(this ICandlestickClient client, CandlestickInterval interval, params string[] symbols) => Unsubscribe(client, null, interval, symbols);
public CandlestickClientTests() { _client = new CandlestickClient(); }