Switch to binding-dom-adapter's RpcServiceInvoker
[controller.git] / opendaylight / md-sal / sal-binding-broker / src / main / java / org / opendaylight / controller / md / sal / binding / impl / BindingToNormalizedNodeCodecFactory.java
index bb123a15f1cb6461d8f739b3ccea5e8417c183d8..ddb098c17f9804b480dfc448110c02647235b923 100644 (file)
@@ -7,12 +7,13 @@
  */
 package org.opendaylight.controller.md.sal.binding.impl;
 
-import org.opendaylight.controller.sal.binding.codegen.impl.SingletonHolder;
-import org.opendaylight.controller.sal.core.api.model.SchemaService;
-import org.opendaylight.yangtools.binding.data.codec.gen.impl.StreamWriterGenerator;
-import org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry;
+import javassist.ClassPool;
+import org.opendaylight.mdsal.binding.dom.codec.gen.impl.StreamWriterGenerator;
+import org.opendaylight.mdsal.binding.dom.codec.impl.BindingNormalizedNodeCodecRegistry;
+import org.opendaylight.mdsal.binding.generator.api.ClassLoadingStrategy;
+import org.opendaylight.mdsal.binding.generator.util.JavassistUtils;
+import org.opendaylight.mdsal.dom.api.DOMSchemaService;
 import org.opendaylight.yangtools.concepts.ListenerRegistration;
-import org.opendaylight.yangtools.sal.binding.generator.api.ClassLoadingStrategy;
 import org.opendaylight.yangtools.yang.model.api.SchemaContextListener;
 
 /**
@@ -20,34 +21,21 @@ import org.opendaylight.yangtools.yang.model.api.SchemaContextListener;
  *
  * @author Thomas Pantelis
  */
-public class BindingToNormalizedNodeCodecFactory {
-    /**
-     * This method is deprecated in favor of newInstance/registerInstance.
-     *
-     * @param classLoadingStrategy
-     * @param schemaService
-     * @return BindingToNormalizedNodeCodec instance
-     */
-    @Deprecated
-    public static BindingToNormalizedNodeCodec getOrCreateInstance(ClassLoadingStrategy classLoadingStrategy,
-                            SchemaService schemaService) {
-        BindingNormalizedNodeCodecRegistry codecRegistry = new BindingNormalizedNodeCodecRegistry(
-                StreamWriterGenerator.create(SingletonHolder.JAVASSIST));
-        BindingToNormalizedNodeCodec instance = new BindingToNormalizedNodeCodec(
-                               classLoadingStrategy, codecRegistry, true);
-        schemaService.registerSchemaContextListener(instance);
-        return instance;
+public final class BindingToNormalizedNodeCodecFactory {
+    private static final JavassistUtils JAVASSIST = JavassistUtils.forClassPool(ClassPool.getDefault());
+
+    private BindingToNormalizedNodeCodecFactory() {
     }
 
     /**
      * Creates a new BindingToNormalizedNodeCodec instance.
      *
-     * @param classLoadingStrategy
+     * @param classLoadingStrategy the ClassLoadingStrategy
      * @return the BindingToNormalizedNodeCodec instance
      */
-    public static BindingToNormalizedNodeCodec newInstance(ClassLoadingStrategy classLoadingStrategy) {
-        BindingNormalizedNodeCodecRegistry codecRegistry = new BindingNormalizedNodeCodecRegistry(
-                StreamWriterGenerator.create(SingletonHolder.JAVASSIST));
+    public static BindingToNormalizedNodeCodec newInstance(final ClassLoadingStrategy classLoadingStrategy) {
+        final BindingNormalizedNodeCodecRegistry codecRegistry = new BindingNormalizedNodeCodecRegistry(
+                StreamWriterGenerator.create(JAVASSIST));
         return new BindingToNormalizedNodeCodec(classLoadingStrategy, codecRegistry, true);
     }
 
@@ -58,8 +46,8 @@ public class BindingToNormalizedNodeCodecFactory {
      * @param schemaService the SchemaService.
      * @return the ListenerRegistration
      */
-    public static ListenerRegistration<SchemaContextListener> registerInstance(BindingToNormalizedNodeCodec instance,
-            SchemaService schemaService) {
+    public static ListenerRegistration<SchemaContextListener> registerInstance(
+            final BindingToNormalizedNodeCodec instance, final DOMSchemaService schemaService) {
         return schemaService.registerSchemaContextListener(instance);
     }
 }