Fix checkstyle in mdsal-binding2-dom-codec
[mdsal.git] / binding2 / mdsal-binding2-dom-codec / src / main / java / org / opendaylight / mdsal / binding / javav2 / dom / codec / generator / spi / generator / AbstractStreamWriterGenerator.java
index 4924d3f161978a9ddb14adb956e53bc5371c62f1..6f86976442bd79fca7a09075e4fde5d38e1fda04 100644 (file)
@@ -28,16 +28,16 @@ import org.opendaylight.mdsal.binding.javav2.dom.codec.generator.impl.StaticBind
 import org.opendaylight.mdsal.binding.javav2.dom.codec.generator.impl.TreeNodeSerializerPrototype;
 import org.opendaylight.mdsal.binding.javav2.dom.codec.generator.spi.source.AbstractTreeNodeSerializerSource;
 import org.opendaylight.mdsal.binding.javav2.dom.codec.impl.serializer.AugmentableDispatchSerializer;
-import org.opendaylight.mdsal.binding.javav2.generator.impl.util.BindingRuntimeContext;
-import org.opendaylight.mdsal.binding.javav2.generator.impl.util.javassist.JavassistUtils;
 import org.opendaylight.mdsal.binding.javav2.generator.util.Types;
 import org.opendaylight.mdsal.binding.javav2.model.api.GeneratedType;
+import org.opendaylight.mdsal.binding.javav2.runtime.context.BindingRuntimeContext;
+import org.opendaylight.mdsal.binding.javav2.runtime.javassist.JavassistUtils;
+import org.opendaylight.mdsal.binding.javav2.runtime.reflection.BindingReflections;
 import org.opendaylight.mdsal.binding.javav2.spec.base.Instantiable;
 import org.opendaylight.mdsal.binding.javav2.spec.base.TreeNode;
 import org.opendaylight.mdsal.binding.javav2.spec.runtime.BindingStreamEventWriter;
 import org.opendaylight.mdsal.binding.javav2.spec.runtime.TreeNodeSerializerImplementation;
 import org.opendaylight.mdsal.binding.javav2.spec.runtime.TreeNodeSerializerRegistry;
-import org.opendaylight.mdsal.binding.javav2.spec.util.BindingReflections;
 import org.opendaylight.yangtools.util.ClassLoaderUtils;
 import org.opendaylight.yangtools.yang.model.api.AugmentationSchema;
 import org.opendaylight.yangtools.yang.model.api.ChoiceCaseNode;
@@ -53,7 +53,7 @@ public abstract class AbstractStreamWriterGenerator extends AbstractGenerator im
     private static final Logger LOG = LoggerFactory.getLogger(AbstractStreamWriterGenerator.class);
 
     public static final String SERIALIZE_METHOD_NAME = "serialize";
-    protected static final AugmentableDispatchSerializer AUGMENTABLE = new AugmentableDispatchSerializer();
+    public static final AugmentableDispatchSerializer AUGMENTABLE = new AugmentableDispatchSerializer();
     private static final Field FIELD_MODIFIERS;
 
     private final LoadingCache<Class<?>, TreeNodeSerializerImplementation> implementations;
@@ -68,19 +68,18 @@ public abstract class AbstractStreamWriterGenerator extends AbstractGenerator im
          * fix the static declared fields to final once we initialize them. If
          * we cannot get access, that's fine, too.
          */
-        Field f = null;
+        Field field = null;
         try {
-            f = Field.class.getDeclaredField("modifiers");
-            f.setAccessible(true);
+            field = Field.class.getDeclaredField("modifiers");
+            field.setAccessible(true);
         } catch (NoSuchFieldException | SecurityException e) {
             LOG.warn("Could not get Field modifiers field, serializers run at decreased efficiency", e);
         }
 
-        FIELD_MODIFIERS = f;
+        FIELD_MODIFIERS = field;
     }
 
     protected AbstractStreamWriterGenerator(final JavassistUtils utils) {
-        super();
         this.javassist = Preconditions.checkNotNull(utils, "JavassistUtils instance is required.");
         this.serializeArguments = new CtClass[] { javassist.asCtClass(TreeNodeSerializerRegistry.class),
                 javassist.asCtClass(TreeNode.class), javassist.asCtClass(BindingStreamEventWriter.class), };
@@ -215,22 +214,22 @@ public abstract class AbstractStreamWriterGenerator extends AbstractGenerator im
 
         try {
             product = javassist.instantiatePrototype(TreeNodeSerializerPrototype.class.getName(), serializerName,
-                    cls -> {
-                        // Generate any static fields
-                        for (final StaticBindingProperty def : source.getStaticConstants()) {
-                            final CtField field = new CtField(javassist.asCtClass(def.getType()), def.getName(), cls);
-                            field.setModifiers(Modifier.PRIVATE + Modifier.STATIC);
-                            cls.addField(field);
-                        }
-
-                        // Replace serialize() -- may reference static fields
-                        final CtMethod serializeTo = cls.getDeclaredMethod(SERIALIZE_METHOD_NAME, serializeArguments);
-                        serializeTo.setBody(body);
-
-                        // The prototype is not visible, so we need to take care
-                        // of that
-                        cls.setModifiers(Modifier.setPublic(cls.getModifiers()));
-                    });
+                cls -> {
+                    // Generate any static fields
+                    for (final StaticBindingProperty def : source.getStaticConstants()) {
+                        final CtField field = new CtField(javassist.asCtClass(def.getType()), def.getName(), cls);
+                        field.setModifiers(Modifier.PRIVATE + Modifier.STATIC);
+                        cls.addField(field);
+                    }
+
+                    // Replace serialize() -- may reference static fields
+                    final CtMethod serializeTo = cls.getDeclaredMethod(SERIALIZE_METHOD_NAME, serializeArguments);
+                    serializeTo.setBody(body);
+
+                    // The prototype is not visible, so we need to take care
+                    // of that
+                    cls.setModifiers(Modifier.setPublic(cls.getModifiers()));
+                });
         } catch (final NotFoundException e) {
             LOG.error("Failed to instatiate serializer {}", source, e);
             throw new LinkageError("Unexpected instantation problem: serializer prototype not found", e);
@@ -242,6 +241,7 @@ public abstract class AbstractStreamWriterGenerator extends AbstractGenerator im
      * Generates serializer source code for supplied container node, which will
      * read supplied binding type and invoke proper methods on supplied
      * {@link BindingStreamEventWriter}.
+     *
      * <p>
      * Implementation is required to recursively invoke events for all reachable
      * binding objects.
@@ -257,6 +257,7 @@ public abstract class AbstractStreamWriterGenerator extends AbstractGenerator im
      * Generates serializer source for supplied case node, which will read
      * supplied binding type and invoke proper methods on supplied
      * {@link BindingStreamEventWriter}.
+     *
      * <p>
      * Implementation is required to recursively invoke events for all reachable
      * binding objects.
@@ -271,6 +272,7 @@ public abstract class AbstractStreamWriterGenerator extends AbstractGenerator im
      * Generates serializer source for supplied list node, which will read
      * supplied binding type and invoke proper methods on supplied
      * {@link BindingStreamEventWriter}.
+     *
      * <p>
      * Implementation is required to recursively invoke events for all reachable
      * binding objects.
@@ -279,12 +281,14 @@ public abstract class AbstractStreamWriterGenerator extends AbstractGenerator im
      * @param node - schema of list
      * @return source for list node writer
      */
-    protected abstract AbstractTreeNodeSerializerSource generateMapEntrySerializer(GeneratedType type, ListSchemaNode node);
+    protected abstract AbstractTreeNodeSerializerSource generateMapEntrySerializer(GeneratedType type,
+            ListSchemaNode node);
 
     /**
      * Generates serializer source for supplied list node, which will read
      * supplied binding type and invoke proper methods on supplied
      * {@link BindingStreamEventWriter}.
+     *
      * <p>
      * Implementation is required to recursively invoke events for all reachable
      * binding objects.
@@ -300,6 +304,7 @@ public abstract class AbstractStreamWriterGenerator extends AbstractGenerator im
      * Generates serializer source for supplied augmentation node, which will
      * read supplied binding type and invoke proper methods on supplied
      * {@link BindingStreamEventWriter}.
+     *
      * <p>
      * Implementation is required to recursively invoke events for all reachable
      * binding objects.
@@ -308,12 +313,14 @@ public abstract class AbstractStreamWriterGenerator extends AbstractGenerator im
      * @param schema - schema of augmentation
      * @return source for augmentation node writer
      */
-    protected abstract AbstractTreeNodeSerializerSource generateSerializer(GeneratedType type, AugmentationSchema schema);
+    protected abstract AbstractTreeNodeSerializerSource generateSerializer(GeneratedType type,
+            AugmentationSchema schema);
 
     /**
      * Generates serializer source for notification node, which will read
      * supplied binding type and invoke proper methods on supplied
      * {@link BindingStreamEventWriter}.
+     *
      * <p>
      * Implementation is required to recursively invoke events for all reachable
      * binding objects.