Exemple #1
0
 private void EnsureSub(MarketEventType e)
 {
     if (!_subscribers.ContainsKey(e))
     {
         _subscribers[e] = new HashSet <IActorRef>();
     }
 }
Exemple #2
0
        public static string ToTopic(string tickerSymbol, MarketEventType marketEventType)
        {
            string ToStr(MarketEventType e)
            {
                switch (e)
                {
                case MarketEventType.PriceChange:
                    return("price");

                case MarketEventType.VolumeChange:
                    return("volume");

                default:
                    throw new ArgumentOutOfRangeException(nameof(e));
                }
            }

            return($"{tickerSymbol}-{ToStr(marketEventType)}");
        }
 public MarketEventModel[] GetMarketEvents(MarketEventType eventType)
 {
     return(_marketEvents.Where(m => m.Metadata.EventType == eventType)
            .ToArray());
 }
Exemple #4
0
 public async Task <MarketUnsubscribeAck> Unsubscribe(string tickerSymbol, MarketEventType @event, IActorRef subscriber)
 {
     return(await Unsubscribe(tickerSymbol, new[] { @event }, subscriber));
 }