globalSubscriptions.add(subject);
fireSubscribeListeners(new SubscriptionEvent(false, null, plan.getTotalReceivers(), true, subject));
return new Subscription() {
@Override
public void remove() {
if (removeFromDeliveryPlan(subject, receiver).getTotalReceivers() == 0) {
globalSubscriptions.remove(subject);
subscriptions.remove(subject);