List of usage examples for javax.xml.stream XMLStreamWriter flush
public void flush() throws XMLStreamException;
From source file:org.gluewine.trace.XMLTracer.java
@Override public void close() { isSuppressed();//from w w w . ja v a2 s . co m for (XMLStreamWriter writer : writers.values()) { try { writer.writeEndElement(); // Close the root. writer.writeEndDocument(); writer.flush(); writer.close(); } catch (XMLStreamException e) { ErrorLogger.log(getClass(), e); } } writers.clear(); }
From source file:org.gluu.saml.AuthRequest.java
public String getStreamedRequest(boolean useBase64) throws XMLStreamException, IOException { ByteArrayOutputStream baos = new ByteArrayOutputStream(); XMLOutputFactory factory = XMLOutputFactory.newInstance(); XMLStreamWriter writer = factory.createXMLStreamWriter(baos); writer.writeStartElement("samlp", "AuthnRequest", "urn:oasis:names:tc:SAML:2.0:protocol"); writer.writeNamespace("samlp", "urn:oasis:names:tc:SAML:2.0:protocol"); writer.writeAttribute("ID", id); writer.writeAttribute("Version", "2.0"); writer.writeAttribute("IssueInstant", this.issueInstant); writer.writeAttribute("ProtocolBinding", "urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"); writer.writeAttribute("AssertionConsumerServiceURL", this.samlSettings.getAssertionConsumerServiceUrl()); writer.writeStartElement("saml", "Issuer", "urn:oasis:names:tc:SAML:2.0:assertion"); writer.writeNamespace("saml", "urn:oasis:names:tc:SAML:2.0:assertion"); writer.writeCharacters(this.samlSettings.getIssuer()); writer.writeEndElement();/*from w w w.j a v a 2 s . c om*/ writer.writeStartElement("samlp", "NameIDPolicy", "urn:oasis:names:tc:SAML:2.0:protocol"); writer.writeNamespace("samlp", "urn:oasis:names:tc:SAML:2.0:protocol"); writer.writeAttribute("Format", this.samlSettings.getNameIdentifierFormat()); writer.writeAttribute("AllowCreate", "true"); writer.writeEndElement(); writer.writeStartElement("samlp", "RequestedAuthnContext", "urn:oasis:names:tc:SAML:2.0:protocol"); writer.writeNamespace("samlp", "urn:oasis:names:tc:SAML:2.0:protocol"); writer.writeAttribute("Comparison", "exact"); writer.writeStartElement("saml", "AuthnContextClassRef", "urn:oasis:names:tc:SAML:2.0:assertion"); writer.writeNamespace("saml", "urn:oasis:names:tc:SAML:2.0:assertion"); writer.writeCharacters("urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport"); writer.writeEndElement(); writer.writeEndElement(); writer.writeEndElement(); writer.flush(); if (log.isDebugEnabled()) { log.debug("Genereated Saml Request " + new String(baos.toByteArray(), "UTF-8")); } if (useBase64) { byte[] deflated = CompressionHelper.deflate(baos.toByteArray(), true); String base64 = Base64.encodeBase64String(deflated); String encoded = URLEncoder.encode(base64, "UTF-8"); return encoded; } return new String(baos.toByteArray(), "UTF-8"); }
From source file:org.gtdfree.model.GTDDataXMLTools.java
static public void store(GTDModel model, OutputStream out, ActionFilter filter) throws IOException, XMLStreamException, FactoryConfigurationError { if (filter == null) { filter = new DummyFilter(true); }/*from w w w . j a va2s. c om*/ XMLStreamWriter w = XMLOutputFactory.newInstance().createXMLStreamWriter(out, "UTF-8"); //$NON-NLS-1$ w.writeStartDocument("UTF-8", "1.0"); //$NON-NLS-1$ //$NON-NLS-2$ w.writeCharacters(EOL); w.writeCharacters(EOL); w.writeStartElement("gtd-data"); //$NON-NLS-1$ w.writeAttribute("version", "2.2"); //$NON-NLS-1$ //$NON-NLS-2$ w.writeAttribute("modified", ApplicationHelper.formatLongISO(new Date())); //$NON-NLS-1$ w.writeAttribute("lastActionID", Integer.toString(model.getLastActionID())); //$NON-NLS-1$ w.writeCharacters(EOL); w.writeCharacters(EOL); // Write folders Folder[] fn = model.toFoldersArray(); w.writeStartElement("lists"); //$NON-NLS-1$ w.writeCharacters(EOL); for (int i = 0; i < fn.length; i++) { Folder ff = fn[i]; if (ff.isMeta() || !filter.isAcceptable(ff, null)) { continue; } w.writeCharacters(SKIP); w.writeStartElement("list"); //$NON-NLS-1$ w.writeAttribute("id", String.valueOf(ff.getId())); //$NON-NLS-1$ w.writeAttribute("name", ff.getName()); //$NON-NLS-1$ w.writeAttribute("type", ff.getType().toString()); //$NON-NLS-1$ w.writeAttribute("closed", Boolean.toString(ff.isClosed())); //$NON-NLS-1$ if (ff.getCreated() != null) w.writeAttribute("created", Long.toString(ff.getCreated().getTime())); //$NON-NLS-1$ if (ff.getModified() != null) w.writeAttribute("modified", Long.toString(ff.getModified().getTime())); //$NON-NLS-1$ if (ff.getResolved() != null) w.writeAttribute("resolved", Long.toString(ff.getResolved().getTime())); //$NON-NLS-1$ if (!ff.isInBucket() && ff.getDescription() != null) { w.writeAttribute("description", ApplicationHelper.escapeControls(ff.getDescription())); //$NON-NLS-1$ } w.writeCharacters(EOL); for (Action a : ff) { if (!filter.isAcceptable(ff, a)) { continue; } w.writeCharacters(SKIPSKIP); w.writeStartElement("action"); //$NON-NLS-1$ w.writeAttribute("id", Integer.toString(a.getId())); //$NON-NLS-1$ w.writeAttribute("created", Long.toString(a.getCreated().getTime())); //$NON-NLS-1$ w.writeAttribute("resolution", a.getResolution().toString()); //$NON-NLS-1$ if (a.getResolved() != null) w.writeAttribute("resolved", Long.toString(a.getResolved().getTime())); //$NON-NLS-1$ if (a.getModified() != null) w.writeAttribute("modified", Long.toString(a.getModified().getTime())); //$NON-NLS-1$ if (a.getDescription() != null) w.writeAttribute("description", ApplicationHelper.escapeControls(a.getDescription())); //$NON-NLS-1$ if (a.getStart() != null) w.writeAttribute("start", Long.toString(a.getStart().getTime())); //$NON-NLS-1$ if (a.getRemind() != null) w.writeAttribute("remind", Long.toString(a.getRemind().getTime())); //$NON-NLS-1$ if (a.getDue() != null) w.writeAttribute("due", Long.toString(a.getDue().getTime())); //$NON-NLS-1$ if (a.getType() != null) w.writeAttribute("type", a.getType().toString()); //$NON-NLS-1$ if (a.getUrl() != null) w.writeAttribute("url", a.getUrl().toString()); //$NON-NLS-1$ if (a.isQueued()) w.writeAttribute("queued", Boolean.toString(a.isQueued())); //$NON-NLS-1$ if (a.getProject() != null) w.writeAttribute("project", a.getProject().toString()); //$NON-NLS-1$ if (a.getPriority() != null) w.writeAttribute("priority", a.getPriority().toString()); //$NON-NLS-1$ w.writeEndElement(); w.writeCharacters(EOL); } w.writeCharacters(SKIP); w.writeEndElement(); w.writeCharacters(EOL); } w.writeEndElement(); w.writeCharacters(EOL); // Write projects Project[] pn = model.toProjectsArray(); w.writeStartElement("projects"); //$NON-NLS-1$ w.writeCharacters(EOL); for (int i = 0; i < pn.length; i++) { Project ff = pn[i]; if (!filter.isAcceptable(ff, null)) { continue; } w.writeCharacters(SKIP); w.writeStartElement("project"); //$NON-NLS-1$ w.writeAttribute("id", String.valueOf(ff.getId())); //$NON-NLS-1$ w.writeAttribute("name", ff.getName()); //$NON-NLS-1$ w.writeAttribute("closed", String.valueOf(ff.isClosed())); //$NON-NLS-1$ if (ff.getCreated() != null) w.writeAttribute("created", Long.toString(ff.getCreated().getTime())); //$NON-NLS-1$ if (ff.getModified() != null) w.writeAttribute("modified", Long.toString(ff.getModified().getTime())); //$NON-NLS-1$ if (ff.getResolved() != null) w.writeAttribute("resolved", Long.toString(ff.getResolved().getTime())); //$NON-NLS-1$ if (ff.getDescription() != null) { w.writeAttribute("description", ApplicationHelper.escapeControls(ff.getDescription())); //$NON-NLS-1$ } StringBuilder sb = new StringBuilder(); for (Action a : ff) { if (!filter.isAcceptable(ff, a)) { continue; } if (sb.length() > 0) { sb.append(","); //$NON-NLS-1$ } sb.append(a.getId()); } w.writeAttribute("actions", sb.toString()); //$NON-NLS-1$ w.writeEndElement(); w.writeCharacters(EOL); } w.writeEndElement(); w.writeCharacters(EOL); // Write queue Folder f = model.getQueue(); if (filter.isAcceptable(f, null)) { w.writeStartElement("queue"); //$NON-NLS-1$ w.writeAttribute("id", String.valueOf(f.getId())); //$NON-NLS-1$ w.writeAttribute("name", f.getName()); //$NON-NLS-1$ StringBuilder sb = new StringBuilder(); Iterator<Action> i = f.iterator(); if (i.hasNext()) { sb.append(i.next().getId()); } while (i.hasNext()) { sb.append(","); //$NON-NLS-1$ sb.append(i.next().getId()); } w.writeAttribute("actions", sb.toString()); //$NON-NLS-1$ w.writeEndElement(); w.writeCharacters(EOL); } // containers w.writeEndElement(); w.writeEndDocument(); w.flush(); w.close(); //changed=false; }
From source file:org.qi4j.valueserialization.stax.StaxValueSerializer.java
@Override protected void onSerializationEnd(Object object, XMLStreamWriter output) throws Exception { output.writeEndDocument();//from www . jav a 2 s. co m output.flush(); output.close(); }
From source file:org.rhq.enterprise.server.sync.ExportingInputStream.java
private void exporterMain() { XMLStreamWriter wrt = null; OutputStream out = null;/* ww w . j a v a 2 s . com*/ try { XMLOutputFactory ofactory = XMLOutputFactory.newInstance(); ofactory.setProperty(XMLOutputFactory.IS_REPAIRING_NAMESPACES, true); try { out = exportOutput; if (zipOutput) { out = new GZIPOutputStream(out); } wrt = new IndentingXMLStreamWriter(ofactory.createXMLStreamWriter(out, "UTF-8")); //wrt = ofactory.createXMLStreamWriter(out, "UTF-8"); } catch (XMLStreamException e) { LOG.error("Failed to create the XML stream writer to output the export file to.", e); return; } exportPrologue(wrt); for (Synchronizer<?, ?> exp : synchronizers) { exportSingle(wrt, exp); } exportEpilogue(wrt); wrt.flush(); } catch (Exception e) { LOG.error("Error while exporting.", e); unexpectedExporterException = e; } finally { if (wrt != null) { try { wrt.close(); } catch (XMLStreamException e) { LOG.warn("Failed to close the exporter XML stream.", e); } } safeClose(out); } }
From source file:org.rhq.plugins.hadoop.HadoopServerConfigurationDelegate.java
private static void updateFile(File configFile, Map<String, PropertySimple> allProps) throws IOException, InterruptedException, XMLStreamException { InputStream in = null;//from w ww . j av a 2 s .c om XMLStreamReader rdr = null; OutputStream out = null; XMLStreamWriter outWrt = null; try { Set<String> processedPropertyNames = new HashSet<String>(); in = new BufferedInputStream(new FileInputStream(configFile)); rdr = XML_INPUT_FACTORY.createXMLStreamReader(in); File tmpFile = File.createTempFile("hadoop-plugin", null); out = new FileOutputStream(tmpFile); outWrt = XML_OUTPUT_FACTORY.createXMLStreamWriter(out); ByteArrayOutputStream stash = new ByteArrayOutputStream(); XMLStreamWriter stashWrt = XML_OUTPUT_FACTORY.createXMLStreamWriter(stash); boolean outputActive = true; outWrt.writeStartDocument(); while (rdr.hasNext()) { int event = rdr.next(); XMLStreamWriter wrt = outputActive ? outWrt : stashWrt; switch (event) { case XMLStreamConstants.ATTRIBUTE: break; case XMLStreamConstants.CDATA: wrt.writeCData(rdr.getText()); break; case XMLStreamConstants.CHARACTERS: wrt.writeCharacters(rdr.getText()); break; case XMLStreamConstants.COMMENT: wrt.writeComment(rdr.getText()); break; case XMLStreamConstants.DTD: wrt.writeDTD(rdr.getText()); break; case XMLStreamConstants.END_DOCUMENT: wrt.writeEndDocument(); break; case XMLStreamConstants.END_ELEMENT: if (PROPERTY_TAG_NAME.equals(rdr.getName().getLocalPart())) { String encoding = rdr.getEncoding(); if (encoding == null) { encoding = "UTF-8"; } String propertyTagSoFar = Charset.forName(encoding) .decode(ByteBuffer.wrap(stash.toByteArray())).toString(); DetectedPropertyNameAndUpdatedTag propAndTag = updateProperty(propertyTagSoFar, allProps); //yes, we're intentionally circumventing the xml stream writer, because we already have the XML data we want to write. outWrt.flush(); out.write(propAndTag.updatedTag.getBytes("UTF-8")); processedPropertyNames.add(propAndTag.propertyName); //reset stuff stash.reset(); wrt = outWrt; outputActive = true; } else if (CONFIGURATION_TAG_NAME.equals(rdr.getName().getLocalPart())) { //now add the new props for (String prop : processedPropertyNames) { allProps.remove(prop); } for (Map.Entry<String, PropertySimple> e : allProps.entrySet()) { outWrt.writeStartElement(PROPERTY_TAG_NAME); outWrt.writeStartElement(NAME_TAG_NAME); outWrt.writeCharacters(e.getKey()); outWrt.writeEndElement(); outWrt.writeStartElement(VALUE_TAG_NAME); outWrt.writeCharacters(e.getValue().getStringValue()); outWrt.writeEndElement(); outWrt.writeEndElement(); } } wrt.writeEndElement(); break; case XMLStreamConstants.ENTITY_DECLARATION: //XXX could not find what to do with this break; case XMLStreamConstants.ENTITY_REFERENCE: wrt.writeEntityRef(rdr.getText()); break; case XMLStreamConstants.NAMESPACE: for (int i = 0; i < rdr.getNamespaceCount(); ++i) { wrt.writeNamespace(rdr.getNamespacePrefix(i), rdr.getNamespaceURI(i)); } break; case XMLStreamConstants.NOTATION_DECLARATION: //XXX could not find what to do with this break; case XMLStreamConstants.PROCESSING_INSTRUCTION: wrt.writeProcessingInstruction(rdr.getPITarget(), rdr.getPIData()); break; case XMLStreamConstants.SPACE: wrt.writeCharacters(rdr.getText()); break; case XMLStreamConstants.START_DOCUMENT: //this seems to be never called for some strange reason //wrt.writeStartDocument(); break; case XMLStreamConstants.START_ELEMENT: wrt.writeStartElement(rdr.getName().getPrefix(), rdr.getName().getLocalPart(), rdr.getName().getNamespaceURI()); for (int i = 0; i < rdr.getAttributeCount(); ++i) { wrt.writeAttribute(rdr.getAttributePrefix(i), rdr.getAttributeNamespace(i), rdr.getAttributeLocalName(i), rdr.getAttributeValue(i)); } if (PROPERTY_TAG_NAME.equals(rdr.getName().getLocalPart())) { wrt.writeCharacters(""); outputActive = false; } break; } } outWrt.flush(); out.flush(); out.close(); in.close(); //now copy the temp file in the place of the original one FileUtil.copyFile(tmpFile, configFile); } finally { rdr.close(); outWrt.flush(); outWrt.close(); try { in.close(); } finally { out.flush(); out.close(); } } }
From source file:org.simbasecurity.core.saml.SAMLServiceImpl.java
@Override public String createAuthRequest(String authRequestId, Date issueInstant) throws XMLStreamException, IOException { ByteArrayOutputStream baos = new ByteArrayOutputStream(); XMLOutputFactory factory = XMLOutputFactory.newInstance(); XMLStreamWriter writer = factory.createXMLStreamWriter(baos); writer.writeStartElement("samlp", "AuthnRequest", NS_SAMLP); writer.writeNamespace("samlp", NS_SAMLP); writer.writeAttribute("ID", "_" + authRequestId); writer.writeAttribute("Version", "2.0"); writer.writeAttribute("IssueInstant", SAML_DATE_FORMAT.format(issueInstant)); writer.writeAttribute("ForceAuthn", "false"); writer.writeAttribute("IsPassive", "false"); writer.writeAttribute("ProtocolBinding", BINDING_HTTP_POST); writer.writeAttribute("AssertionConsumerServiceURL", configurationService.getValue(SimbaConfigurationParameter.SAML_ASSERTION_CONSUMER_SERVICE_URL)); writer.writeStartElement("saml", "Issuer", NS_SAML); writer.writeNamespace("saml", NS_SAML); writer.writeCharacters(configurationService.getValue(SimbaConfigurationParameter.SAML_ISSUER)); writer.writeEndElement();/*from w w w .j a v a 2s.c om*/ writer.writeStartElement("samlp", "NameIDPolicy", NS_SAMLP); writer.writeAttribute("Format", NAMEID_TRANSIENT); writer.writeAttribute("SPNameQualifier", configurationService.getValue(SimbaConfigurationParameter.SAML_ISSUER)); writer.writeAttribute("AllowCreate", "true"); writer.writeEndElement(); writer.writeStartElement("samlp", "RequestedAuthnContext", NS_SAMLP); writer.writeNamespace("samlp", NS_SAMLP); writer.writeAttribute("Comparison", "exact"); writer.writeStartElement("saml", "AuthnContextClassRef", NS_SAML); writer.writeNamespace("saml", NS_SAML); writer.writeCharacters(AC_FAS_EID); writer.writeEndElement(); writer.writeEndElement(); writer.writeEndElement(); writer.flush(); return encodeSAMLRequest(baos.toByteArray()); }
From source file:org.simbasecurity.core.saml.SAMLServiceImpl.java
@Override public String createLogoutRequest(String logoutRequestId, Date issueInstant, String nameId, String sessionIndex) throws XMLStreamException, IOException { ByteArrayOutputStream baos = new ByteArrayOutputStream(); XMLOutputFactory factory = XMLOutputFactory.newInstance(); XMLStreamWriter writer = factory.createXMLStreamWriter(baos); writer.writeStartElement("samlp", "LogoutRequest", NS_SAMLP); writer.writeNamespace("samlp", NS_SAMLP); writer.writeAttribute("ID", "_" + logoutRequestId); writer.writeAttribute("Version", "2.0"); writer.writeAttribute("IssueInstant", SAML_DATE_FORMAT.format(issueInstant)); writer.writeStartElement("saml", "Issuer", NS_SAML); writer.writeNamespace("saml", NS_SAML); writer.writeCharacters("https://iamapps.belgium.be/"); writer.writeEndElement();/*from ww w . j a v a 2 s . c om*/ writer.writeStartElement("saml", "NameID", NS_SAML); writer.writeNamespace("saml", NS_SAML); writer.writeAttribute("NameQualifier", configurationService.getValue(SimbaConfigurationParameter.SAML_IDP_SLO_TARGET_URL)); writer.writeAttribute("SPNameQualifier", "https://iamapps.belgium.be/"); writer.writeAttribute("Format", NAMEID_TRANSIENT); writer.writeCharacters(nameId); writer.writeEndElement(); writer.writeStartElement("samlp", "SessionIndex", NS_SAMLP); writer.writeNamespace("saml", NS_SAMLP); writer.writeCharacters(sessionIndex); writer.writeEndElement(); writer.writeEndElement(); writer.flush(); return encodeSAMLRequest(baos.toByteArray()); }
From source file:org.slc.sli.modeling.tools.xsdgen.Uml2XsdWriter.java
public static final void writeSchema(final List<PsmDocument<Type>> documents, final ModelIndex model, final Uml2XsdPlugin plugin, final OutputStream outstream) { final XMLOutputFactory xof = XMLOutputFactory.newInstance(); try {/*from w w w . ja v a 2 s .c om*/ final XMLStreamWriter xsw = new IndentingXMLStreamWriter(xof.createXMLStreamWriter(outstream, "UTF-8")); xsw.writeStartDocument("UTF-8", "1.0"); try { writeSchema(documents, model, plugin, xsw); } finally { xsw.writeEndDocument(); } xsw.flush(); // We close the stream writer knowing (from the documentation) that it will not close // the underlying output stream. xsw.close(); } catch (final XMLStreamException e) { throw new XsdGenRuntimeException(e); } }
From source file:org.slc.sli.modeling.wadl.writer.WadlWriter.java
public static final void writeDocument(final Application app, final Map<String, String> prefixMappings, final OutputStream outstream) { final XMLOutputFactory xof = XMLOutputFactory.newInstance(); try {//w w w .j a v a 2 s . c om final XMLStreamWriter xsw = new IndentingXMLStreamWriter(xof.createXMLStreamWriter(outstream, "UTF-8")); xsw.writeStartDocument("UTF-8", "1.0"); try { writeApplication(app, prefixMappings, xsw); } finally { xsw.writeEndDocument(); } xsw.flush(); } catch (final XMLStreamException e) { throw new WadlRuntimeException(e); } }