@Override public Element getSubsriptionErrorDetail() { return DocumentHelper.createElement(QName.get("not-subscribed", "http://jabber.org/protocol/pubsub#errors")); }
@Override public Element getSubsriptionErrorDetail() { return DocumentHelper.createElement(QName.get("presence-subscription-required", "http://jabber.org/protocol/pubsub#errors")); }
@Override public Element getSubsriptionErrorDetail() { return DocumentHelper.createElement( QName.get("not-in-roster-group", "http://jabber.org/protocol/pubsub#errors")); }
@Override public Element getSubsriptionErrorDetail() { return DocumentHelper.createElement( QName.get("closed-node", "http://jabber.org/protocol/pubsub#errors")); }
@Override public Iterator<Element> getIdentities(String name, String node, JID senderJID) { Element identity = DocumentHelper.createElement("identity"); identity.addAttribute("category", "automation"); identity.addAttribute("type", NAMESPACE.equals(node) ? "command-list" : "command-node"); return Collections.singleton(identity).iterator(); }
@Override public Iterator<Element> getIdentities() { final Element userIdentity = DocumentHelper.createElement( "identity" ); userIdentity.addAttribute( "category", "account" ); userIdentity.addAttribute( "type", "registered" ); return Collections.singleton( userIdentity ).iterator(); } } );
/** * Implements ServerIdentitiesProvider and UserIdentitiesProvider, adding * the PEP identity to the respective disco#info results. */ @Override public Iterator<Element> getIdentities() { Element identity = DocumentHelper.createElement("identity"); identity.addAttribute("category", "pubsub"); identity.addAttribute("type", "pep"); return Collections.singleton(identity).iterator(); }
@Override public Iterator<Element> getIdentities() { final Element userIdentity = DocumentHelper.createElement( "identity" ); userIdentity.addAttribute( "category", "account" ); userIdentity.addAttribute( "type", "anonymous" ); return Collections.singleton( userIdentity ).iterator(); } } );
@Override public Iterator<Element> getIdentities(String name, String node, JID senderJID) { Element identity = DocumentHelper.createElement("identity"); identity.addAttribute("category", "automation"); identity.addAttribute("type", "message-list"); return Collections.singleton(identity).iterator(); }
@Override public Iterator<Element> getIdentities(String name, String node, JID senderJID) { List<Element> identities = new ArrayList<>(); // Answer the identity of the proxy Element identity = DocumentHelper.createElement("identity"); identity.addAttribute("category", "proxy"); identity.addAttribute("name", "Media Proxy Service"); identity.addAttribute("type", "rtpbridge"); identities.add(identity); return identities.iterator(); }
@Override public Iterator<Element> getIdentities(String name, String node, JID senderJID) { // Answer the identity of the proxy Element identity = DocumentHelper.createElement("identity"); identity.addAttribute("category", "proxy"); identity.addAttribute("name", "SOCKS5 Bytestreams Service"); identity.addAttribute("type", "bytestreams"); return Collections.singleton(identity).iterator(); }
/** * Adds an extra Disco identity to the list of identities returned for the conference service. * @param category Category for identity. e.g. conference * @param name Descriptive name for identity. e.g. Public Chatrooms * @param type Type for identity. e.g. text */ public void addExtraIdentity(String category, String name, String type) { Element identity = DocumentHelper.createElement("identity"); identity.addAttribute("category", category); identity.addAttribute("name", name); identity.addAttribute("type", type); extraDiscoIdentities.add(identity); }
protected String createEmptyBody(boolean terminate) { final Element body = DocumentHelper.createElement( QName.get( "body", "http://jabber.org/protocol/httpbind" ) ); if (terminate) { body.addAttribute("type", "terminate"); } body.addAttribute("ack", String.valueOf(getLastAcknowledged())); return body.asXML(); }
protected static String createErrorBody(String type, String condition) { final Element body = DocumentHelper.createElement( QName.get( "body", "http://jabber.org/protocol/httpbind" ) ); body.addAttribute("type", type); body.addAttribute("condition", condition); return body.asXML(); }
private String createSessionRestartResponse() { final Element response = DocumentHelper.createElement( QName.get( "body", "http://jabber.org/protocol/httpbind" ) ); response.addNamespace("stream", "http://etherx.jabber.org/streams"); final Element features = response.addElement("stream:features"); for (Element feature : getAvailableStreamFeaturesElements()) { features.add(feature); } return response.asXML(); }
@Override public IQ handleIQ(IQ packet) { IQ response = IQ.createResultIQ(packet); Element timeElement = DocumentHelper.createElement(QName.get(info.getName(), info.getNamespace())); timeElement.addElement("tzo").setText(formatsTimeZone(TimeZone.getDefault())); timeElement.addElement("utc").setText(getUtcDate(new Date())); response.setChildElement(timeElement); return response; }
@Override public Iterator<Element> getIdentities(String name, String node, JID senderJID) { String recipientJID = XMPPServer.getInstance().createJID(name, null, true).toBareJID(); PEPService pepService = pepServiceManager.getPEPService(recipientJID); if (node != null && pepService != null) { Node pubNode = pepService.getNode(node); if (pubNode == null) return null; // Answer the identity of a given node Element identity = DocumentHelper.createElement("identity"); identity.addAttribute("category", "pubsub"); identity.addAttribute("type", pubNode.isCollectionNode() ? "collection" : "leaf"); List<Element> identities = new LinkedList<>(); identities.add(identity); return identities.iterator(); } else if (node != null) { return null; } else { PubSubModule pubsub = XMPPServer.getInstance().getPubSubModule(); return pubsub.getIdentities(null, null, senderJID); } }
public IQVersionHandler() { super("XMPP Server Version Handler"); info = new IQHandlerInfo("query", "jabber:iq:version"); if (bodyElement == null) { bodyElement = DocumentHelper.createElement(QName.get("query", "jabber:iq:version")); bodyElement.addElement("name").setText(AdminConsole.getAppName()); bodyElement.addElement("version").setText(AdminConsole.getVersionString()); } }
public Element asXMLElement() { Element option = DocumentHelper.createElement(QName.get("option", "jabber:x:data")); if (getLabel() != null) { option.addAttribute("label", getLabel()); } if (getValue() != null) { option.addElement("value").addText(getValue()); } return option; } }
public static Element getSASLMechanismsElement( LocalIncomingServerSession session ) { final Element result = DocumentHelper.createElement( new QName( "mechanisms", new Namespace( "", SASL_NAMESPACE ) ) ); if (session.isSecure()) { final Connection connection = session.getConnection(); final TrustStore trustStore = connection.getConfiguration().getTrustStore(); final X509Certificate trusted = trustStore.getEndEntityCertificate( session.getConnection().getPeerCertificates() ); boolean haveTrustedCertificate = trusted != null; if (trusted != null && session.getDefaultIdentity() != null) { haveTrustedCertificate = verifyCertificate(trusted, session.getDefaultIdentity()); } if (haveTrustedCertificate) { // Offer SASL EXTERNAL only if TLS has already been negotiated and the peer has a trusted cert. final Element mechanism = result.addElement("mechanism"); mechanism.setText("EXTERNAL"); } } return result; }