206207208209210211212213214215216
public synchronized void destroy() { active = false; for (TopicKey key : successfulSubscriptions) { Topic topic = topicsContext.getTopic(key); topic.publishEvent(new SessionUnsubscriptionEvent(topic, key, this)); } try { disconnect(); } catch (Exception e) {
273274275276277278279280281282283
} if (errorMessage != null) { failedSubscriptions.put(topicKey, errorMessage); } else { pushTopic.publishEvent(new SessionSubscriptionEvent(pushTopic, topicKey, this)); successfulSubscriptions.add(topicKey); } } }