/** * Returns the error as XML. * * @return the error as XML. */ public String toXML() { StringBuilder buf = new StringBuilder(); buf.append("<error code=\"").append(code).append("\""); if (type != null) { buf.append(" type=\""); buf.append(type.name()); buf.append("\""); } buf.append(">"); if (condition != null) { buf.append("<").append(condition); buf.append(" xmlns=\"urn:ietf:params:xml:ns:xmpp-stanzas\"/>"); } if (message != null) { buf.append("<text xml:lang=\"en\" xmlns=\"urn:ietf:params:xml:ns:xmpp-stanzas\">"); buf.append(message); buf.append("</text>"); } for (PacketExtension element : this.getExtensions()) { buf.append(element.toXML()); } buf.append("</error>"); return buf.toString(); }
/** * Returns the first patcket extension that matches the specified element name and * namespace, or <tt>null</tt> if it doesn't exist. * * @param elementName the XML element name of the packet extension. * @param namespace the XML element namespace of the packet extension. * @return the extension, or <tt>null</tt> if it doesn't exist. */ public synchronized PacketExtension getExtension(String elementName, String namespace) { if (applicationExtensions == null || elementName == null || namespace == null) { return null; } for (PacketExtension ext : applicationExtensions) { if (elementName.equals(ext.getElementName()) && namespace.equals(ext.getNamespace())) { return ext; } } return null; }
@Override protected PacketExtension createReturnExtension(String currentElement, String currentNamespace, Map<String, String> attMap, List<? extends PacketExtension> content) { return new EventElement(EventElementType.valueOf(content.get(0).getElementName()), (NodeExtension)content.get(0)); } }
/** * * @param info * @return true if the packet extensions is ill-formed */ protected static boolean verifyPacketExtensions(DiscoverInfo info) { List<FormField> foundFormTypes = new LinkedList<FormField>(); for (Iterator<PacketExtension> i = info.getExtensions().iterator(); i.hasNext();) { PacketExtension pe = i.next(); if (pe.getNamespace().equals(Form.NAMESPACE)) { DataForm df = (DataForm) pe; for (Iterator<FormField> it = df.getFields(); it.hasNext();) { FormField f = it.next(); if (f.getVariable().equals("FORM_TYPE")) { for (FormField fft : foundFormTypes) { if (f.equals(fft)) return true; } foundFormTypes.add(f); } } } } return false; }
@Override protected PacketExtension createReturnExtension(String currentElement, String currentNamespace, Map<String, String> attMap, List<? extends PacketExtension> content) { return new EventElement(EventElementType.valueOf(content.get(0).getElementName()), (NodeExtension)content.get(0)); } }
/** * Returns the first patcket extension that matches the specified element name and * namespace, or <tt>null</tt> if it doesn't exist. * * @param elementName the XML element name of the packet extension. * @param namespace the XML element namespace of the packet extension. * @return the extension, or <tt>null</tt> if it doesn't exist. */ public synchronized PacketExtension getExtension(String elementName, String namespace) { if (applicationExtensions == null || elementName == null || namespace == null) { return null; } for (PacketExtension ext : applicationExtensions) { if (elementName.equals(ext.getElementName()) && namespace.equals(ext.getNamespace())) { return ext; } } return null; }
@Override public String toXML() { StringBuilder builder = new StringBuilder("<item"); if (getId() != null) { builder.append(" id='"); builder.append(getId()); builder.append("'"); } if (getNode() != null) { builder.append(" node='"); builder.append(getNode()); builder.append("'"); } builder.append(">"); builder.append(payload.toXML()); builder.append("</item>"); return builder.toString(); }
@Override protected PacketExtension createReturnExtension(String currentElement, String currentNamespace, Map<String, String> attMap, List<? extends PacketExtension> content) { return new EventElement(EventElementType.valueOf(content.get(0).getElementName()), (NodeExtension)content.get(0)); } }
/** * Returns the first patcket extension that matches the specified element name and * namespace, or <tt>null</tt> if it doesn't exist. * * @param elementName the XML element name of the packet extension. * @param namespace the XML element namespace of the packet extension. * @return the extension, or <tt>null</tt> if it doesn't exist. */ public synchronized PacketExtension getExtension(String elementName, String namespace) { if (applicationExtensions == null || elementName == null || namespace == null) { return null; } for (PacketExtension ext : applicationExtensions) { if (elementName.equals(ext.getElementName()) && namespace.equals(ext.getNamespace())) { return ext; } } return null; }
@Override public String toXML() { StringBuilder builder = new StringBuilder("<item"); if (getId() != null) { builder.append(" id='"); builder.append(getId()); builder.append("'"); } if (getNode() != null) { builder.append(" node='"); builder.append(getNode()); builder.append("'"); } builder.append(">"); builder.append(payload.toXML()); builder.append("</item>"); return builder.toString(); }
public void processMessage(Chat chat, Message message) { PacketExtension extension = message.getExtension("http://jabber.org/protocol/chatstates"); if (extension == null) { return; } ChatState state; try { state = ChatState.valueOf(extension.getElementName()); } catch (Exception ex) { return; } fireNewChatState(chat, state); } }
/** * Returns the first packet extension that matches the specified element name and * namespace, or <tt>null</tt> if it doesn't exist. If the provided elementName is null * than only the provided namespace is attempted to be matched. Packet extensions are * are arbitrary XML sub-documents in standard XMPP packets. By default, a * DefaultPacketExtension instance will be returned for each extension. However, * PacketExtensionProvider instances can be registered with the * {@link org.jivesoftware.smack.provider.ProviderManager ProviderManager} * class to handle custom parsing. In that case, the type of the Object * will be determined by the provider. * * @param elementName the XML element name of the packet extension. (May be null) * @param namespace the XML element namespace of the packet extension. * @return the extension, or <tt>null</tt> if it doesn't exist. */ public PacketExtension getExtension(String elementName, String namespace) { if (namespace == null) { return null; } for (PacketExtension ext : packetExtensions) { if ((elementName == null || elementName.equals(ext.getElementName())) && namespace.equals(ext.getNamespace())) { return ext; } } return null; }
/** * Returns the error as XML. * * @return the error as XML. */ public String toXML() { StringBuilder buf = new StringBuilder(); buf.append("<error code=\"").append(code).append("\""); if (type != null) { buf.append(" type=\""); buf.append(type.name()); buf.append("\""); } buf.append(">"); if (condition != null) { buf.append("<").append(condition); buf.append(" xmlns=\"urn:ietf:params:xml:ns:xmpp-stanzas\"/>"); } if (message != null) { buf.append("<text xml:lang=\"en\" xmlns=\"urn:ietf:params:xml:ns:xmpp-stanzas\">"); buf.append(message); buf.append("</text>"); } for (PacketExtension element : this.getExtensions()) { buf.append(element.toXML()); } buf.append("</error>"); return buf.toString(); }
public void processMessage(Chat chat, Message message) { PacketExtension extension = message.getExtension("http://jabber.org/protocol/chatstates"); if (extension == null) { return; } ChatState state; try { state = ChatState.valueOf(extension.getElementName()); } catch (Exception ex) { return; } fireNewChatState(chat, state); } }
/** * Returns the first packet extension that matches the specified element name and * namespace, or <tt>null</tt> if it doesn't exist. If the provided elementName is null * than only the provided namespace is attempted to be matched. Packet extensions are * are arbitrary XML sub-documents in standard XMPP packets. By default, a * DefaultPacketExtension instance will be returned for each extension. However, * PacketExtensionProvider instances can be registered with the * {@link org.jivesoftware.smack.provider.ProviderManager ProviderManager} * class to handle custom parsing. In that case, the type of the Object * will be determined by the provider. * * @param elementName the XML element name of the packet extension. (May be null) * @param namespace the XML element namespace of the packet extension. * @return the extension, or <tt>null</tt> if it doesn't exist. */ public PacketExtension getExtension(String elementName, String namespace) { if (namespace == null) { return null; } for (PacketExtension ext : packetExtensions) { if ((elementName == null || elementName.equals(ext.getElementName())) && namespace.equals(ext.getNamespace())) { return ext; } } return null; }
/** * Returns the error as XML. * * @return the error as XML. */ public String toXML() { StringBuilder buf = new StringBuilder(); buf.append("<error code=\"").append(code).append("\""); if (type != null) { buf.append(" type=\""); buf.append(type.name()); buf.append("\""); } buf.append(">"); if (condition != null) { buf.append("<").append(condition); buf.append(" xmlns=\"urn:ietf:params:xml:ns:xmpp-stanzas\"/>"); } if (message != null) { buf.append("<text xml:lang=\"en\" xmlns=\"urn:ietf:params:xml:ns:xmpp-stanzas\">"); buf.append(message); buf.append("</text>"); } for (PacketExtension element : this.getExtensions()) { buf.append(element.toXML()); } buf.append("</error>"); return buf.toString(); }
public void processMessage(Chat chat, Message message) { PacketExtension extension = message.getExtension("http://jabber.org/protocol/chatstates"); if (extension == null) { return; } ChatState state; try { state = ChatState.valueOf(extension.getElementName()); } catch (Exception ex) { return; } fireNewChatState(chat, state); } }
/** * Returns the first packet extension that matches the specified element name and * namespace, or <tt>null</tt> if it doesn't exist. If the provided elementName is null * than only the provided namespace is attempted to be matched. Packet extensions are * are arbitrary XML sub-documents in standard XMPP packets. By default, a * DefaultPacketExtension instance will be returned for each extension. However, * PacketExtensionProvider instances can be registered with the * {@link org.jivesoftware.smack.provider.ProviderManager ProviderManager} * class to handle custom parsing. In that case, the type of the Object * will be determined by the provider. * * @param elementName the XML element name of the packet extension. (May be null) * @param namespace the XML element namespace of the packet extension. * @return the extension, or <tt>null</tt> if it doesn't exist. */ public PacketExtension getExtension(String elementName, String namespace) { if (namespace == null) { return null; } for (PacketExtension ext : packetExtensions) { if ((elementName == null || elementName.equals(ext.getElementName())) && namespace.equals(ext.getNamespace())) { return ext; } } return null; }
@Override public String toXML() { StringBuilder builder = new StringBuilder("<item"); if (getId() != null) { builder.append(" id='"); builder.append(getId()); builder.append("'"); } if (getNode() != null) { builder.append(" node='"); builder.append(getNode()); builder.append("'"); } builder.append(">"); builder.append(payload.toXML()); builder.append("</item>"); return builder.toString(); }
if (secondLevelList.size() > 0 && secondLevelList.get(0).getElementName().equals(secondElement)) return true;