public Task Unsubscribe(Type eventType, ContextBag context)
        {
            var topicsToUnsubscribe = GetTypeHierarchy(eventType);

            var consumer         = messagePump.GetEventsConsumerHolder().GetConsumer();
            var subscriptionList = consumer.Subscription;

            subscriptionList = subscriptionList.Where(t => !topicsToUnsubscribe.Contains(t)).ToList();

            consumer.AddSubscriptions(subscriptionList);

            return(Task.FromResult(0));
        }