Merge "BUG-2459: Fix netconf-monitoring not reusing JAXB context"
authorTony Tkacik <ttkacik@cisco.com>
Fri, 5 Dec 2014 09:56:25 +0000 (09:56 +0000)
committerGerrit Code Review <gerrit@opendaylight.org>
Fri, 5 Dec 2014 09:56:26 +0000 (09:56 +0000)
opendaylight/netconf/netconf-monitoring/src/main/java/org/opendaylight/controller/netconf/monitoring/xml/JaxBSerializer.java

index 45f02af78994d1e87b8dc1c86c7b81e7e57d9f1a..e80e3f82b1f6c0650bfc4619ab3e17ad5660186e 100644 (file)
@@ -16,12 +16,20 @@ 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);