Split out mdsal-binding-runtime-{api,spi}
[mdsal.git] / binding / mdsal-binding-dom-codec-osgi / src / main / java / org / opendaylight / mdsal / binding / dom / codec / osgi / impl / SimpleBindingRuntimeContextService.java
index 3ebdbcb06cf72b6f37fd3199ca3fd4422494de1d..708ce6817e31ca186b816eec6cd041aad3dc17b0 100644 (file)
@@ -7,18 +7,17 @@
  */
 package org.opendaylight.mdsal.binding.dom.codec.osgi.impl;
 
-import static com.google.common.base.Preconditions.checkNotNull;
 import static com.google.common.base.Preconditions.checkState;
-import static com.google.common.base.Verify.verifyNotNull;
+import static java.util.Objects.requireNonNull;
 
-import com.google.common.util.concurrent.CheckedFuture;
-import javax.annotation.concurrent.GuardedBy;
+import com.google.common.util.concurrent.ListenableFuture;
+import org.checkerframework.checker.lock.qual.GuardedBy;
+import org.opendaylight.binding.runtime.api.BindingRuntimeContext;
+import org.opendaylight.binding.runtime.api.ClassLoadingStrategy;
 import org.opendaylight.mdsal.binding.dom.codec.osgi.BindingRuntimeContextListener;
 import org.opendaylight.mdsal.binding.dom.codec.osgi.BindingRuntimeContextService;
-import org.opendaylight.mdsal.binding.generator.api.ClassLoadingStrategy;
-import org.opendaylight.mdsal.binding.generator.util.BindingRuntimeContext;
+import org.opendaylight.mdsal.binding.generator.impl.DefaultBindingRuntimeGenerator;
 import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.repo.api.SchemaSourceException;
 import org.opendaylight.yangtools.yang.model.repo.api.SourceIdentifier;
 import org.opendaylight.yangtools.yang.model.repo.api.YangTextSchemaSource;
 import org.opendaylight.yangtools.yang.model.repo.spi.SchemaSourceProvider;
@@ -40,13 +39,12 @@ final class SimpleBindingRuntimeContextService extends
     SimpleBindingRuntimeContextService(final BundleContext context, final ClassLoadingStrategy strategy,
         final SchemaSourceProvider<YangTextSchemaSource> sourceProvider) {
         super(context, BindingRuntimeContextListener.class, null);
-        this.sourceProvider = checkNotNull(sourceProvider);
-        this.strategy = checkNotNull(strategy);
+        this.sourceProvider = requireNonNull(sourceProvider);
+        this.strategy = requireNonNull(strategy);
     }
 
     @Override
-    public CheckedFuture<? extends YangTextSchemaSource, SchemaSourceException> getSource(
-            final SourceIdentifier sourceIdentifier) {
+    public ListenableFuture<? extends YangTextSchemaSource> getSource(final SourceIdentifier sourceIdentifier) {
         return sourceProvider.getSource(sourceIdentifier);
     }
 
@@ -59,7 +57,8 @@ final class SimpleBindingRuntimeContextService extends
     }
 
     void updateBindingRuntimeContext(final SchemaContext schemaContext) {
-        final BindingRuntimeContext next = verifyNotNull(BindingRuntimeContext.create(strategy, schemaContext));
+        final BindingRuntimeContext next = BindingRuntimeContext.create(
+            new DefaultBindingRuntimeGenerator().generateTypeMapping(schemaContext), strategy);
 
         final BindingRuntimeContextListener[] listeners;
         synchronized (lock) {