Reparent ChoiceCodecContext
[mdsal.git] / binding / mdsal-binding-dom-adapter / src / main / java / org / opendaylight / mdsal / binding / dom / adapter / BindingMountPointAdapter.java
index d7beecb19124246e9d5f69c8794727107323a25c..a2683f362f701a7cfd7310f122b4377adaf9ad0f 100644 (file)
@@ -16,18 +16,17 @@ import org.opendaylight.mdsal.dom.api.DOMMountPoint;
 import org.opendaylight.mdsal.dom.api.DOMService;
 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 
-public class BindingMountPointAdapter implements MountPoint {
-
+final class BindingMountPointAdapter implements MountPoint {
     private final InstanceIdentifier<?> identifier;
     private final LoadingCache<Class<? extends BindingService>, Optional<BindingService>> services;
 
-    public BindingMountPointAdapter(final BindingToNormalizedNodeCodec codec, final DOMMountPoint domMountPoint) {
-        identifier = codec.getCodecRegistry().fromYangInstanceIdentifier(domMountPoint.getIdentifier());
+    BindingMountPointAdapter(final AdapterContext codec, final DOMMountPoint domMountPoint) {
+        identifier = codec.currentSerializer().fromYangInstanceIdentifier(domMountPoint.getIdentifier());
         services = CacheBuilder.newBuilder().build(new BindingDOMAdapterLoader(codec) {
-
             @Override
-            protected DOMService getDelegate(final Class<? extends DOMService> reqDeleg) {
-                return domMountPoint.getService(reqDeleg).orElse(null);
+            @SuppressWarnings({ "rawtypes", "unchecked" })
+            protected DOMService<?, ?> getDelegate(final Class<? extends DOMService<?, ?>> reqDeleg) {
+                return reqDeleg.cast(domMountPoint.getService((Class) reqDeleg).orElse(null));
             }
         });
     }