コード例 #1
0
        public bool ConsumeRemoveInstanceSubscription(RemoveInstanceSubscription subscription)
        {
            int msgId;

            if (remoteInstanceSubscriptions.TryRemove(subscription.InstanceSubscriptionKey, out msgId))
            {
                storage.RemoveItems(SubscriptionsKey + localEndpoint, new [] { msgId });

                RaiseSubscriptionChanged();
            }
            return(true);
        }
コード例 #2
0
        private bool ConsumeRemoveInstanceSubscription(RemoveInstanceSubscription subscription)
        {
            string msgId;

            if (remoteInstanceSubscriptions.TryRemove(subscription.InstanceSubscriptionKey, out msgId))
            {
                using (var queue = CreateSubscriptionQueue(subscriptionQueue, QueueAccessMode.Receive))
                {
                    queue.ConsumeMessage(msgId);
                }
                RaiseSubscriptionChanged();
            }
            return(true);
        }
コード例 #3
0
        public bool ConsumeRemoveInstanceSubscription(RemoveInstanceSubscription subscription)
        {
            int msgId;

            if (remoteInstanceSubscriptions.TryRemove(subscription.InstanceSubscriptionKey, out msgId))
            {
                pht.Batch(actions =>
                {
                    actions.RemoveItem(new RemoveItemRequest
                    {
                        Id  = msgId,
                        Key = SubscriptionsKey
                    });

                    actions.Commit();
                });
                RaiseSubscriptionChanged();
            }
            return(true);
        }