@Override @SuppressWarnings({ "rawtypes", "unchecked" }) public void processStanza(Stanza packet) { EventElement event = packet.getExtension("event", PubSubNamespace.event.getXmlns()); ItemsExtension itemsElem = (ItemsExtension) event.getEvent(); ItemPublishEvent eventItems = new ItemPublishEvent(itemsElem.getNode(), itemsElem.getItems(), getSubscriptionIds(packet), DelayInformationManager.getDelayTimestamp(packet)); // TODO: Use AsyncButOrdered (with Node as Key?) listener.handlePublishedItems(eventItems); } }
@Override public String toString() { return getClass().getName() + " [subscriptions: " + getSubscriptions() + "], [Delayed: " + (isDelayed() ? originalDate.toString() : "false") + ']'; }
/** * Fired by Smack on PubSub update. * * {@inheritDoc} */ @Override public void handlePublishedItems(ItemPublishEvent event) { String nodeId = event.getNodeId(); if (logger.isDebugEnabled()) logger.debug("PubSub update for node: " + nodeId); Subscription subscription; synchronized (subscriptionsMap) { subscription = subscriptionsMap.get(nodeId); } if (subscription != null) { for(Object item : event.getItems()) { if(!(item instanceof PayloadItem)) continue; PayloadItem payloadItem = (PayloadItem) item; subscription.notifyListeners(payloadItem); } } }
@Override public String toString() { return getClass().getName() + " [subscriptions: " + getSubscriptions() + "], [Delayed: " + (isDelayed() ? originalDate.toString() : "false") + ']'; }
public void processPacket(Packet packet) { EventElement event = (EventElement)packet.getExtension("event", PubSubNamespace.EVENT.getXmlns()); ItemsExtension itemsElem = (ItemsExtension)event.getEvent(); DelayInformation delay = (DelayInformation)packet.getExtension("delay", "urn:xmpp:delay"); // If there was no delay based on XEP-0203, then try XEP-0091 for backward compatibility if (delay == null) { delay = (DelayInformation)packet.getExtension("x", "jabber:x:delay"); } ItemPublishEvent eventItems = new ItemPublishEvent(itemsElem.getNode(), (List<Item>)itemsElem.getItems(), getSubscriptionIds(packet), (delay == null ? null : delay.getStamp())); listener.handlePublishedItems(eventItems); } }
@Override public String toString() { return getClass().getName() + " [subscriptions: " + getSubscriptions() + "], [Delayed: " + (isDelayed() ? originalDate.toString() : "false") + ']'; }
public void processPacket(Packet packet) { EventElement event = (EventElement)packet.getExtension("event", PubSubNamespace.EVENT.getXmlns()); ItemsExtension itemsElem = (ItemsExtension)event.getEvent(); DelayInformation delay = (DelayInformation)packet.getExtension("delay", "urn:xmpp:delay"); // If there was no delay based on XEP-0203, then try XEP-0091 for backward compatibility if (delay == null) { delay = (DelayInformation)packet.getExtension("x", "jabber:x:delay"); } ItemPublishEvent eventItems = new ItemPublishEvent(itemsElem.getNode(), (List<Item>)itemsElem.getItems(), getSubscriptionIds(packet), (delay == null ? null : delay.getStamp())); listener.handlePublishedItems(eventItems); } }
@Override public String toString() { return getClass().getName() + " [subscriptions: " + getSubscriptions() + "], [Delayed: " + (isDelayed() ? originalDate.toString() : "false") + ']'; }
public void processPacket(Packet packet) { EventElement event = (EventElement)packet.getExtension("event", PubSubNamespace.EVENT.getXmlns()); ItemsExtension itemsElem = (ItemsExtension)event.getEvent(); DelayInformation delay = (DelayInformation)packet.getExtension("delay", "urn:xmpp:delay"); // If there was no delay based on XEP-0203, then try XEP-0091 for backward compatibility if (delay == null) { delay = (DelayInformation)packet.getExtension("x", "jabber:x:delay"); } ItemPublishEvent eventItems = new ItemPublishEvent(itemsElem.getNode(), (List<Item>)itemsElem.getItems(), getSubscriptionIds(packet), (delay == null ? null : delay.getStamp())); listener.handlePublishedItems(eventItems); } }