@SuppressWarnings("unchecked") public <PE extends ExtensionElement> PE getExtension(PubSubElementType elem) { return (PE) getExtension(elem.getElementName(), elem.getNamespace().getXmlns()); }
public static PubSubElementType valueOfFromElemName(String elemName, String namespace) { int index = namespace.lastIndexOf('#'); String fragment = (index == -1 ? null : namespace.substring(index + 1)); if (fragment != null) { return valueOf((elemName + '_' + fragment).toUpperCase(Locale.US)); } return valueOf(elemName.toUpperCase(Locale.US).replace('-', '_')); }
@Override protected NodeExtension createReturnExtension(String currentElement, String currentNamespace, Map<String, String> attributeMap, List<? extends ExtensionElement> content) { return new NodeExtension(PubSubElementType.valueOfFromElemName(currentElement, currentNamespace), attributeMap.get("node")); } }
public PubSubNamespace getPubSubNamespace() { return namespace.type.getNamespace(); }
@Override public String getElementName() { return element.getElementName(); }
public PubSubNamespace getPubSubNamespace() { return element.getNamespace(); }
@Override public void processStanza(Stanza packet) { // CHECKSTYLE:OFF EventElement event = packet.getExtension("event", PubSubNamespace.event.getXmlns()); List<ExtensionElement> extList = event.getExtensions(); if (extList.get(0).getElementName().equals(PubSubElementType.PURGE_EVENT.getElementName())) { listener.handlePurge(); } else { ItemsExtension itemsElem = (ItemsExtension)event.getEvent(); @SuppressWarnings("unchecked") Collection<RetractItem> pubItems = (Collection<RetractItem>) itemsElem.getItems(); List<String> items = new ArrayList<>(pubItems.size()); for (RetractItem item : pubItems) { items.add(item.getId()); } ItemDeleteEvent eventItems = new ItemDeleteEvent(itemsElem.getNode(), items, getSubscriptionIds(packet)); listener.handleDeletedItems(eventItems); } // CHECKSTYLE:ON } }
/** * Get a {@link ConfigureForm} from a packet. * * @param packet * @param elem * @return The configuration form */ public static ConfigureForm getFormFromPacket(Stanza packet, PubSubElementType elem) { FormNode config = packet.getExtension(elem.getElementName(), elem.getNamespace().getXmlns()); Form formReply = config.getForm(); return new ConfigureForm(formReply); } }
public static SubscriptionsNamespace fromXmlns(String xmlns) { for (SubscriptionsNamespace subscriptionsNamespace : SubscriptionsNamespace.values()) { if (subscriptionsNamespace.type.getNamespace().getXmlns().equals(xmlns)) { return subscriptionsNamespace; } } throw new IllegalArgumentException("Invalid Subscription namespace: " + xmlns); } }
public String getElementName() { return element.getElementName(); }
public PubSubElementType getNodeElement() { return PubSubElementType.valueOf(toString()); }
@Override protected PacketExtension createReturnExtension(String currentElement, String currentNamespace, Map<String, String> attributeMap, List<? extends PacketExtension> content) { return new NodeExtension(PubSubElementType.valueOfFromElemName(currentElement, currentNamespace), attributeMap.get("node")); } }
/** * Gets the subscriptions on the root node. * * @return List of exceptions * @throws XMPPErrorException * @throws NoResponseException * @throws NotConnectedException * @throws InterruptedException */ public List<Subscription> getSubscriptions() throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException { Stanza reply = sendPubsubPacket(Type.get, new NodeExtension(PubSubElementType.SUBSCRIPTIONS), null); SubscriptionsExtension subElem = reply.getExtension(PubSubElementType.SUBSCRIPTIONS.getElementName(), PubSubElementType.SUBSCRIPTIONS.getNamespace().getXmlns()); return subElem.getSubscriptions(); }
public static AffiliationNamespace fromXmlns(String xmlns) { for (AffiliationNamespace affiliationsNamespace : AffiliationNamespace.values()) { if (affiliationsNamespace.type.getNamespace().getXmlns().equals(xmlns)) { return affiliationsNamespace; } } throw new IllegalArgumentException("Invalid affiliations namespace: " + xmlns); } }
public String getElementName() { return element.getElementName(); }
public static PubSubElementType valueOfFromElemName(String elemName, String namespace) { int index = namespace.lastIndexOf('#'); String fragment = (index == -1 ? null : namespace.substring(index+1)); if (fragment != null) { return valueOf((elemName + '_' + fragment).toUpperCase()); } return valueOf(elemName.toUpperCase().replace('-', '_')); }
@Override protected PacketExtension createReturnExtension(String currentElement, String currentNamespace, Map<String, String> attributeMap, List<? extends PacketExtension> content) { return new NodeExtension(PubSubElementType.valueOfFromElemName(currentElement, currentNamespace), attributeMap.get("node")); } }
public PacketExtension getExtension(PubSubElementType elem) { return getExtension(elem.getElementName(), elem.getNamespace().getXmlns()); }
public static ItemNamespace fromXmlns(String xmlns) { for (ItemNamespace itemNamespace : ItemNamespace.values()) { if (itemNamespace.type.getNamespace().getXmlns().equals(xmlns)) { return itemNamespace; } } throw new IllegalArgumentException("Invalid item namespace: " + xmlns); } }
public String getElementName() { return element.getElementName(); }