X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fnetconf%2Fnetconf-monitoring%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fnetconf%2Fmonitoring%2Fxml%2FJaxBSerializer.java;h=e80e3f82b1f6c0650bfc4619ab3e17ad5660186e;hp=962ad17b66c280c5e7fb68cfc279ff30d79c2285;hb=50b0ecab6c88cc2de12dc7d111ad80a198989543;hpb=20d3e2621112fe4bf77b888d57dbdc69f2105d82 diff --git a/opendaylight/netconf/netconf-monitoring/src/main/java/org/opendaylight/controller/netconf/monitoring/xml/JaxBSerializer.java b/opendaylight/netconf/netconf-monitoring/src/main/java/org/opendaylight/controller/netconf/monitoring/xml/JaxBSerializer.java index 962ad17b66..e80e3f82b1 100644 --- a/opendaylight/netconf/netconf-monitoring/src/main/java/org/opendaylight/controller/netconf/monitoring/xml/JaxBSerializer.java +++ b/opendaylight/netconf/netconf-monitoring/src/main/java/org/opendaylight/controller/netconf/monitoring/xml/JaxBSerializer.java @@ -7,29 +7,36 @@ */ package org.opendaylight.controller.netconf.monitoring.xml; -import org.opendaylight.controller.netconf.monitoring.xml.model.NetconfState; -import org.w3c.dom.Document; -import org.w3c.dom.Element; - import javax.xml.bind.JAXBContext; import javax.xml.bind.JAXBException; import javax.xml.bind.Marshaller; import javax.xml.transform.dom.DOMResult; +import org.opendaylight.controller.netconf.monitoring.xml.model.NetconfState; +import org.w3c.dom.Document; +import org.w3c.dom.Element; public class JaxBSerializer { + private static final JAXBContext JAXB_CONTEXT; + + static { + try { + JAXB_CONTEXT = JAXBContext.newInstance(NetconfState.class); + } catch (JAXBException e) { + throw new ExceptionInInitializerError(e); + } + } public Element toXml(final NetconfState monitoringModel) { final DOMResult res; try { - final JAXBContext jaxbContext = JAXBContext.newInstance(NetconfState.class); - final Marshaller marshaller = jaxbContext.createMarshaller(); + final Marshaller marshaller = JAXB_CONTEXT.createMarshaller(); marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); res = new DOMResult(); marshaller.marshal(monitoringModel, res); } catch (final JAXBException e) { - throw new RuntimeException("Unable to serialize netconf state " + monitoringModel, e); + throw new RuntimeException("Unable to serialize netconf state " + monitoringModel, e); } return ((Document)res.getNode()).getDocumentElement(); }