/** * Handles pending subscription/unsubscription events */ private synchronized void processPendingSubscriptions() { for (PendingSubscription pending : pendingSubscriptionEvents) { TariffSubscription sub = tariffSubscriptionRepo.getSubscription(pending.customer, pending.tariff); if (pending.count > 0) sub.subscribe(pending.count); else if (pending.count < 0) sub.deferredUnsubscribe(-pending.count); } pendingSubscriptionEvents.clear(); }