From: Robert Varga Date: Fri, 4 May 2018 12:52:50 +0000 (+0200) Subject: Speed up XMLStreamNormalizedNodeStreamWriter.toString() X-Git-Tag: v2.0.5~33 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=commitdiff_plain;h=0735add8fe240495b0c82479b31491847467ae83;p=yangtools.git Speed up XMLStreamNormalizedNodeStreamWriter.toString() We already have a TransformerFactory, no need to create a new one, which speeds up processing. Also change the thrown exception to IllegalStateException, as we do not really expect this to fail. Change-Id: I6710893ec7324a7cba26b13e8d7cdb9c2414167e Signed-off-by: Robert Varga --- diff --git a/yang/yang-data-codec-xml/src/main/java/org/opendaylight/yangtools/yang/data/codec/xml/XMLStreamNormalizedNodeStreamWriter.java b/yang/yang-data-codec-xml/src/main/java/org/opendaylight/yangtools/yang/data/codec/xml/XMLStreamNormalizedNodeStreamWriter.java index 52925eaf1b..eed3926b7c 100644 --- a/yang/yang-data-codec-xml/src/main/java/org/opendaylight/yangtools/yang/data/codec/xml/XMLStreamNormalizedNodeStreamWriter.java +++ b/yang/yang-data-codec-xml/src/main/java/org/opendaylight/yangtools/yang/data/codec/xml/XMLStreamNormalizedNodeStreamWriter.java @@ -270,7 +270,7 @@ public abstract class XMLStreamNormalizedNodeStreamWriter implements Normaliz public static String toString(final Element xml) { try { - final Transformer transformer = TransformerFactory.newInstance().newTransformer(); + final Transformer transformer = TRANSFORMER_FACTORY.newTransformer(); transformer.setOutputProperty(OutputKeys.INDENT, "yes"); final StreamResult result = new StreamResult(new StringWriter()); @@ -278,8 +278,8 @@ public abstract class XMLStreamNormalizedNodeStreamWriter implements Normaliz transformer.transform(source, result); return result.getWriter().toString(); - } catch (IllegalArgumentException | TransformerFactoryConfigurationError | TransformerException e) { - throw new RuntimeException("Unable to serialize xml element " + xml, e); + } catch (IllegalArgumentException | TransformerException e) { + throw new IllegalStateException("Unable to serialize xml element " + xml, e); } }