Bump odlparent/yangtools/mdsal
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / main / java / org / opendaylight / controller / cluster / datastore / DatastoreContextIntrospectorFactory.java
index 8d6f4816a37fa1707def419e4986565df66dfbc0..0a2c85525b5790b14955cae9c09d60b851c0da9d 100644 (file)
@@ -7,13 +7,11 @@
  */
 package org.opendaylight.controller.cluster.datastore;
 
+import static java.util.Objects.requireNonNull;
+
 import com.google.common.annotations.VisibleForTesting;
 import org.opendaylight.mdsal.binding.dom.codec.api.BindingNormalizedNodeSerializer;
-import org.opendaylight.mdsal.binding.dom.codec.impl.BindingNormalizedNodeCodecRegistry;
-import org.opendaylight.mdsal.binding.generator.api.ClassLoadingStrategy;
-import org.opendaylight.mdsal.binding.generator.util.BindingRuntimeContext;
 import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
-import org.opendaylight.mdsal.dom.api.DOMSchemaService;
 
 /**
  * Factory for creating DatastoreContextIntrospector instances.
@@ -21,28 +19,21 @@ import org.opendaylight.mdsal.dom.api.DOMSchemaService;
  * @author Thomas Pantelis
  */
 public class DatastoreContextIntrospectorFactory {
-    private final DOMSchemaService schemaService;
-    private final ClassLoadingStrategy classLoadingStrategy;
+    private final BindingNormalizedNodeSerializer serializer;
 
-    public DatastoreContextIntrospectorFactory(DOMSchemaService schemaService,
-            ClassLoadingStrategy classLoadingStrategy) {
-        this.schemaService = schemaService;
-        this.classLoadingStrategy = classLoadingStrategy;
+    public DatastoreContextIntrospectorFactory(final BindingNormalizedNodeSerializer serializer) {
+        this.serializer = requireNonNull(serializer);
     }
 
-    public DatastoreContextIntrospector newInstance(LogicalDatastoreType datastoreType) {
-        return new DatastoreContextIntrospector(DatastoreContext.newBuilder()
-                .logicalStoreType(datastoreType).tempFileDirectory("./data").build(), newBindingSerializer());
+    public DatastoreContextIntrospector newInstance(final LogicalDatastoreType datastoreType) {
+        return newInstance(DatastoreContext.newBuilder()
+                .logicalStoreType(datastoreType)
+                .tempFileDirectory("./data")
+                .build());
     }
 
     @VisibleForTesting
-    DatastoreContextIntrospector newInstance(DatastoreContext context) {
-        return new DatastoreContextIntrospector(context, newBindingSerializer());
-    }
-
-    private BindingNormalizedNodeSerializer newBindingSerializer() {
-        BindingNormalizedNodeCodecRegistry codecRegistry = new BindingNormalizedNodeCodecRegistry(
-                BindingRuntimeContext.create(classLoadingStrategy, schemaService.getGlobalContext()));
-        return codecRegistry;
+    DatastoreContextIntrospector newInstance(final DatastoreContext context) {
+        return new DatastoreContextIntrospector(context, serializer);
     }
 }