public void Subscribe(Subscription to, params int[] securityIds) { foreach (var id in securityIds) { var subscription = subscriptions.ContainsKey(id) ? subscriptions[id] : Subscription.None; subscriptions[id] = subscription | to; if (subscriptions[id] == Subscription.None) { subscriptions.Remove(id); } } SendCommand(CommandSetSubscription.Subscribe(securityIds, to)); }
public void Unsubscribe(Subscription to, params int[] securityIds) { foreach (var id in securityIds) { if (subscriptions.ContainsKey(id)) { subscriptions[id] &= to; if (subscriptions[id] == Subscription.None) { subscriptions.Remove(id); } } } SendCommand(CommandSetSubscription.Unsubscribe(securityIds, to)); }