X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2FDatastoreSnapshotRestore.java;h=52ab3030bff528b4d44027e58757e0d5d3a63e26;hb=3ebd44f9b7a4a217222036c2889d2a04b4f1eb30;hp=7ef05e273fb3ab54099c74e86570c785821e1be8;hpb=fd6fce5918121f6c802acdbe67ba9ac006049b94;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DatastoreSnapshotRestore.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DatastoreSnapshotRestore.java index 7ef05e273f..52ab3030bf 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DatastoreSnapshotRestore.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DatastoreSnapshotRestore.java @@ -35,24 +35,16 @@ public class DatastoreSnapshotRestore { private final String restoreDirectoryPath; private final Map datastoreSnapshots = new ConcurrentHashMap<>(); - public static void createInstance(String restoreDirectoryPath) { + public static DatastoreSnapshotRestore instance(String restoreDirectoryPath) { instance.compareAndSet(null, new DatastoreSnapshotRestore(restoreDirectoryPath)); - } - - public static void removeInstance() { - instance.set(null); - } - - public static DatastoreSnapshotRestore instance() { - DatastoreSnapshotRestore localInstance = instance.get(); - return Preconditions.checkNotNull(localInstance, "DatastoreSnapshotRestore instance was not created"); + return instance.get(); } private DatastoreSnapshotRestore(String restoreDirectoryPath) { this.restoreDirectoryPath = Preconditions.checkNotNull(restoreDirectoryPath); } - // sychronize this method so that, in case of concurrent access to getAndRemove(), + // synchronize this method so that, in case of concurrent access to getAndRemove(), // no one ends up with partially initialized data private synchronized void initialize() { @@ -90,7 +82,7 @@ public class DatastoreSnapshotRestore { } } - private DatastoreSnapshotList deserialize(InputStream inputStream) throws IOException, ClassNotFoundException { + private static DatastoreSnapshotList deserialize(InputStream inputStream) throws IOException, ClassNotFoundException { try(ObjectInputStream ois = new ObjectInputStream(inputStream)) { return (DatastoreSnapshotList) ois.readObject(); }