public void write(Stanza stanza) { Renderer renderer = new Renderer(stanza); System.out.print(renderer.getOpeningElement() + renderer.getElementContent()); if (isFirst) closingElement = renderer.getClosingElement(); else System.out.print(closingElement); isFirst = false; }
private void emitStanza() { XMLElement element = builder.build(); if (log.isDebugEnabled()) { log.debug("Decoder writing stanza: {}", new Renderer(element).getComplete()); } if (listener != null) { listener.stanza(element); } builder = null; }
private void renderAttribute(StringBuilder buffer, String qname, String value) { buffer.append(qname).append("=\"").append(escapeAttributeValue(value)).append("\""); }
private String toXml(XMLElement element, boolean openElement, boolean closeElement) { Renderer renderer = new Renderer(element); StringBuffer xml = new StringBuffer(); if (openElement) { xml.append(renderer.getOpeningElement()); } xml.append(renderer.getElementContent()); if (closeElement) { xml.append(renderer.getClosingElement()); } return xml.toString(); } }
totalChars += new Renderer(stanza).getComplete().length();
/** * {@inheritDoc} */ public void write(Stanza stanza) { // handle stream open Renderer renderer = new Renderer(stanza); if("stream".equals(stanza.getName()) && NamespaceURIs.HTTP_ETHERX_JABBER_ORG_STREAMS.equals(stanza.getNamespaceURI())) { // stream:stream and stream:features comes at the same time, split them send(renderer.getOpeningElement()); send(renderer.getElementContent()); } else { send(renderer.getComplete()); } }
@Override protected Stanza handleSet(IQStanza stanza, ServerRuntimeContext serverRuntimeContext, SessionContext sessionContext) { Entity from = stanza.getFrom(); if (from == null) { from = sessionContext.getInitiatingEntity(); } XMLElement vCardElement = null; try { vCardElement = stanza.getSingleInnerElementsNamed("vCard"); } catch (XMLSemanticError xmlSemanticError) { return ServerErrorResponses.getStanzaError(StanzaErrorCondition.BAD_REQUEST, stanza, StanzaErrorType.MODIFY, "vCard element is missing", null, null); } String vcardContent = new Renderer(vCardElement).getComplete(); if (persistenceManager == null) { return ServerErrorResponses.getStanzaError(StanzaErrorCondition.INTERNAL_SERVER_ERROR, stanza, StanzaErrorType.WAIT, "internal storage inaccessible", null, null); } boolean success = persistenceManager.setVcard(from, vcardContent); if (success) { return StanzaBuilder.createIQStanza(null, from, IQStanzaType.RESULT, stanza.getID()).build(); } else { return StanzaBuilder.createIQStanza(null, from, IQStanzaType.ERROR, stanza.getID()).build(); } }
Renderer renderer = new Renderer(element); log.debug("Encoder reading stanza: {}", renderer.getComplete()); byteBuffer.putString(StanzaWriter.XML_PROLOG, getSessionEncoder()); if (stanzaWriteInfo.isWriteOpeningElement()) byteBuffer.putString(renderer.getOpeningElement(), getSessionEncoder()); if (stanzaWriteInfo.isWriteContent()) byteBuffer.putString(renderer.getElementContent(), getSessionEncoder()); if (stanzaWriteInfo.isWriteClosingElement()) byteBuffer.putString(renderer.getClosingElement(), getSessionEncoder());
String queryContent = new Renderer(queryElement).getComplete(); boolean success = persistenceManager.setPrivateData(from, queryKey, queryContent);
public void encode(IoSession ioSession, Object o, ProtocolEncoderOutput protocolEncoderOutput) throws Exception { if (!(o instanceof StanzaWriteInfo)) { throw new IllegalArgumentException("StanzaWriterProtocolEncoder only handles StanzaWriteInfo objects"); } StanzaWriteInfo stanzaWriteInfo = (StanzaWriteInfo) o; Stanza element = stanzaWriteInfo.getStanza(); Renderer renderer = new Renderer(element); IoBuffer byteBuffer = IoBuffer.allocate(16).setAutoExpand(true); if (stanzaWriteInfo.isWriteProlog()) byteBuffer.putString(StanzaWriter.XML_PROLOG, getSessionEncoder()); if (stanzaWriteInfo.isWriteOpeningElement()) byteBuffer.putString(renderer.getOpeningElement(), getSessionEncoder()); if (stanzaWriteInfo.isWriteContent()) byteBuffer.putString(renderer.getElementContent(), getSessionEncoder()); if (stanzaWriteInfo.isWriteClosingElement()) byteBuffer.putString(renderer.getClosingElement(), getSessionEncoder()); byteBuffer.flip(); protocolEncoderOutput.write(byteBuffer); }