X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fconfig%2Fconfig-persister-directory-xml-adapter%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fconfig%2Fpersist%2Fstorage%2Fdirectory%2Fxml%2FXmlDirectoryPersister.java;h=0ca47edf0e5540cef5db8c2bcbb8f0d8f9dde611;hp=f6f6de9fd5d8370a11a29233c74dca1a20c4ba2e;hb=dea24d658123f9059a3fbb3a650c2dbfdb480fcf;hpb=23ec2c1ab1e9266029437be0818101efbc74450e diff --git a/opendaylight/config/config-persister-directory-xml-adapter/src/main/java/org/opendaylight/controller/config/persist/storage/directory/xml/XmlDirectoryPersister.java b/opendaylight/config/config-persister-directory-xml-adapter/src/main/java/org/opendaylight/controller/config/persist/storage/directory/xml/XmlDirectoryPersister.java index f6f6de9fd5..0ca47edf0e 100644 --- a/opendaylight/config/config-persister-directory-xml-adapter/src/main/java/org/opendaylight/controller/config/persist/storage/directory/xml/XmlDirectoryPersister.java +++ b/opendaylight/config/config-persister-directory-xml-adapter/src/main/java/org/opendaylight/controller/config/persist/storage/directory/xml/XmlDirectoryPersister.java @@ -63,17 +63,21 @@ public class XmlDirectoryPersister implements Persister { private ConfigSnapshotHolder fromXmlSnapshot(File file) { try { - JAXBContext jaxbContext = JAXBContext.newInstance(ConfigSnapshot.class); - Unmarshaller um = jaxbContext.createUnmarshaller(); - - return asHolder((ConfigSnapshot) um.unmarshal(file)); + return loadLastConfig(file); } catch (JAXBException e) { logger.warn("Unable to restore configuration snapshot from {}", file, e); throw new IllegalStateException("Unable to restore configuration snapshot from " + file, e); } } - private ConfigSnapshotHolder asHolder(final ConfigSnapshot unmarshalled) { + public static ConfigSnapshotHolder loadLastConfig(File file) throws JAXBException { + JAXBContext jaxbContext = JAXBContext.newInstance(ConfigSnapshot.class); + Unmarshaller um = jaxbContext.createUnmarshaller(); + + return asHolder((ConfigSnapshot) um.unmarshal(file)); + } + + private static ConfigSnapshotHolder asHolder(final ConfigSnapshot unmarshalled) { return new ConfigSnapshotHolder() { @Override public String getConfigSnapshot() {