public void parse(Reader reader) throws IOException, SAXException { parse(reader instanceof BufferedReader ? (BufferedReader) reader : new BufferedReader(reader)); }
public void parse(InputStream is) throws IOException, TransformerConfigurationException, SAXException { byte[] buf = new byte[256]; int len = is.read(buf); HL7Segment msh = HL7Segment.parseMSH(buf, buf.length); String charsetName = HL7Charset.toCharsetName(msh.getField(17, charset)); Reader reader = new InputStreamReader( new SequenceInputStream( new ByteArrayInputStream(buf, 0, len), is), charsetName); TransformerHandler th = getTransformerHandler(); th.getTransformer().setOutputProperty(OutputKeys.INDENT, indent ? "yes" : "no"); th.setResult(new StreamResult(System.out)); HL7Parser hl7Parser = new HL7Parser(th); hl7Parser.setIncludeNamespaceDeclaration(includeNamespaceDeclaration); hl7Parser.parse(reader); }
private byte[] xslt(UnparsedHL7Message msg) throws Exception { String charsetName = HL7Charset.toCharsetName(msg.msh().getField(17, charset)); ByteArrayOutputStream out = new ByteArrayOutputStream(); TransformerHandler th = factory.newTransformerHandler(tpls); Transformer t = th.getTransformer(); t.setParameter("MessageControlID", HL7Segment.nextMessageControlID()); t.setParameter("DateTimeOfMessage", HL7Segment.timeStamp(new Date())); if (xsltParams != null) for (int i = 1; i < xsltParams.length; i++, i++) t.setParameter(xsltParams[i-1], xsltParams[i]); th.setResult(new SAXResult(new HL7ContentHandler( new OutputStreamWriter(out, charsetName)))); new HL7Parser(th).parse(new InputStreamReader( new ByteArrayInputStream(msg.data()), charsetName)); return out.toByteArray(); }
public void parse(InputStream is) throws IOException, TransformerConfigurationException, SAXException { byte[] buf = new byte[256]; int len = is.read(buf); HL7Segment msh = HL7Segment.parseMSH(buf, buf.length); String charsetName = HL7Charset.toCharsetName(msh.getField(17, charset)); Reader reader = new InputStreamReader( new SequenceInputStream( new ByteArrayInputStream(buf, 0, len), is), charsetName); TransformerHandler th = getTransformerHandler(); th.getTransformer().setOutputProperty(OutputKeys.INDENT, indent ? "yes" : "no"); th.setResult(new StreamResult(System.out)); HL7Parser hl7Parser = new HL7Parser(th); hl7Parser.setIncludeNamespaceDeclaration(includeNamespaceDeclaration); hl7Parser.parse(reader); }
private byte[] xslt(UnparsedHL7Message msg) throws Exception { String charsetName = HL7Charset.toCharsetName(msg.msh().getField(17, charset)); ByteArrayOutputStream out = new ByteArrayOutputStream(); TransformerHandler th = factory.newTransformerHandler(tpls); Transformer t = th.getTransformer(); t.setParameter("MessageControlID", HL7Segment.nextMessageControlID()); t.setParameter("DateTimeOfMessage", HL7Segment.timeStamp(new Date())); if (xsltParams != null) for (int i = 1; i < xsltParams.length; i++, i++) t.setParameter(xsltParams[i-1], xsltParams[i]); th.setResult(new SAXResult(new HL7ContentHandler( new OutputStreamWriter(out, charsetName)))); new HL7Parser(th).parse(new InputStreamReader( new ByteArrayInputStream(msg.data()), charsetName)); return out.toByteArray(); }