public String getChildElementXML() { StringBuilder buf = new StringBuilder(); buf.append("<query xmlns=\"http://jabber.org/protocol/disco#items\""); if (getNode() != null) { buf.append(" node=\""); buf.append(getNode()); buf.append("\""); } buf.append(">"); synchronized (items) { for (Item item : items) { buf.append(item.toXML()); } } buf.append("</query>"); return buf.toString(); }
public String getChildElementXML() { StringBuffer buf = new StringBuffer(); buf.append("<query xmlns=\"http://jabber.org/protocol/disco#items\""); if (getNode() != null) { buf.append(" node=\""); buf.append(getNode()); buf.append("\""); } buf.append(">"); synchronized (items) { for (int i = 0; i < items.size(); i++) { Item item = (Item) items.get(i); buf.append(item.toXML()); } } buf.append("</query>"); return buf.toString(); }
public String getChildElementXML() { StringBuilder buf = new StringBuilder(); buf.append("<query xmlns=\"http://jabber.org/protocol/disco#items\""); if (getNode() != null) { buf.append(" node=\""); buf.append(getNode()); buf.append("\""); } buf.append(">"); synchronized (items) { for (Item item : items) { buf.append(item.toXML()); } } buf.append("</query>"); return buf.toString(); }
public String getChildElementXML() { StringBuilder buf = new StringBuilder(); buf.append("<query xmlns=\"" + NAMESPACE + "\""); if (getNode() != null) { buf.append(" node=\""); buf.append(StringUtils.escapeForXML(getNode())); buf.append("\""); } buf.append(">"); synchronized (items) { for (Item item : items) { buf.append(item.toXML()); } } buf.append("</query>"); return buf.toString(); }
public void processPacket(Packet packet) { DiscoverItems discoverItems = (DiscoverItems) packet; // Send back the items defined in the client if the request is of type GET if (discoverItems != null && discoverItems.getType() == IQ.Type.GET) { DiscoverItems response = new DiscoverItems(); response.setType(IQ.Type.RESULT); response.setTo(discoverItems.getFrom()); response.setPacketID(discoverItems.getPacketID()); // Add the defined items related to the requested node. Look for // the NodeInformationProvider associated with the requested node. if (getNodeInformationProvider(discoverItems.getNode()) != null) { Iterator items = getNodeInformationProvider(discoverItems.getNode()).getNodeItems(); while (items.hasNext()) { response.addItem((DiscoverItems.Item) items.next()); } } else if(discoverItems.getNode() != null) { // Return an <item-not-found/> error since the client // doesn't contain the specified node response.setNode(discoverItems.getNode()); response.setType(IQ.Type.ERROR); response.setError(new XMPPError(404, "item-not-found")); } connection.sendPacket(response); } } };
public void processPacket(Packet packet) { DiscoverItems discoverItems = (DiscoverItems) packet; // Send back the items defined in the client if the request is of type GET if (discoverItems != null && discoverItems.getType() == IQ.Type.GET) { DiscoverItems response = new DiscoverItems(); response.setType(IQ.Type.RESULT); response.setTo(discoverItems.getFrom()); response.setPacketID(discoverItems.getPacketID()); response.setNode(discoverItems.getNode()); // Add the defined items related to the requested node. Look for // the NodeInformationProvider associated with the requested node. NodeInformationProvider nodeInformationProvider = getNodeInformationProvider(discoverItems.getNode()); if (nodeInformationProvider != null) { // Specified node was found, add node items response.addItems(nodeInformationProvider.getNodeItems()); // Add packet extensions response.addExtensions(nodeInformationProvider.getNodePacketExtensions()); } else if(discoverItems.getNode() != null) { // Return <item-not-found/> error since client doesn't contain // the specified node response.setType(IQ.Type.ERROR); response.setError(new XMPPError(XMPPError.Condition.item_not_found)); } connection.sendPacket(response); } } };