示例#1
0
        protected override void OnRemovingFromSubscriber(MessageListEntry <LatestPriceRequestSubscription, SubscriptionRequests> entry, LatestPriceRequestSubscription message)
        {
            lock (Lock)
            {
                var subs = entry.Subscriber;

                var nr      = new Request(message.Pair, message.Network);
                var request = subs.Requests.FirstOrDefault(x => x.Equals(nr));
                if (request == null)
                {
                    return;
                }

                request.Dispose();
                subs.Requests.Remove(request);
                Aggregator.SyncProviders();
            }
        }
示例#2
0
        protected override void OnAddingToSubscriber(MessageListEntry <LatestPriceRequestSubscription, SubscriptionRequests> entry, LatestPriceRequestSubscription message)
        {
            lock (Lock)
            {
                var subs = entry.Subscriber;
                var nr   = new Request(message.Pair, message.Network);

                var request = subs.Requests.FirstOrDefault(x => x.Equals(nr));
                if (request != null)
                {
                    return;
                }

                subs.Requests.Add(request = nr);
                request.Processor         = new DiscoveryRequestProcessor(request, () =>
                {
                    request.Messenger = new RequestMessenger(request);
                    Aggregator.SyncProviders();
                });
            }
        }
示例#3
0
 protected override void OnDisposingSubscription(MessageListEntry <LatestPriceRequestSubscription, SubscriptionRequests> entry)
 {
     //
 }
示例#4
0
 protected override void OnRemovingSubscriber(MessageListEntry <LatestPriceRequestSubscription, SubscriptionRequests> entry)
 {
 }
示例#5
0
        protected override void OnDisposingSubscription(MessageListEntry <PortfolioSubscribeMessage, PortfolioAggregator> entry)
        {
            var aggregator = entry.Subscriber;

            aggregator.Stop();
        }
示例#6
0
 protected override void OnRemovingSubscriber(MessageListEntry <PortfolioSubscribeMessage, PortfolioAggregator> entry)
 {
     //
 }
示例#7
0
        protected override void OnAddingToSubscriber(MessageListEntry <PortfolioSubscribeMessage, PortfolioAggregator> entry, PortfolioSubscribeMessage message)
        {
            var aggregator = entry.Subscriber;

            aggregator.SendChangedMessage();
        }