Fixup javassist class use 93/75093/4
authorRobert Varga <robert.varga@pantheon.tech>
Fri, 10 Aug 2018 08:51:45 +0000 (10:51 +0200)
committerRobert Varga <nite@hq.sk>
Fri, 10 Aug 2018 10:12:24 +0000 (10:12 +0000)
We need to cast the returned class, as the Javassist API no longer
does so.

Change-Id: Ib19477ece9e76b735285df3b553ca9504579f8c9
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
binding/mdsal-binding-dom-codec/src/main/java/org/opendaylight/mdsal/binding/dom/codec/gen/impl/AbstractStreamWriterGenerator.java
binding2/mdsal-binding2-dom-codec/src/main/java/org/opendaylight/mdsal/binding/javav2/dom/codec/generator/spi/generator/AbstractStreamWriterGenerator.java

index 149bca706ba851a74b2038fb50b1b4878e54c3c8..9fc1021aea4506e70b1044bc670440d449873a08 100644 (file)
@@ -144,9 +144,9 @@ abstract class AbstractStreamWriterGenerator extends AbstractGenerator implement
                     type.getTypeName(), type.getClassLoader(), serializerName);
             final DataObjectSerializerSource source = generateEmitterSource(type, serializerName);
             final CtClass poolClass = generateEmitter0(type, source, serializerName);
-            @SuppressWarnings("unchecked")
-            final Class<? extends DataObjectSerializerImplementation> cls = poolClass.toClass(type.getClassLoader(),
-                type.getProtectionDomain());
+            final Class<? extends DataObjectSerializerImplementation> cls =
+                    poolClass.toClass(type.getClassLoader(), type.getProtectionDomain())
+                    .asSubclass(DataObjectSerializerImplementation.class);
 
             /*
              * Due to OSGi class loader rules we cannot initialize the fields during
index 7e6a5b7fdb8a9465346cb043dba1a3200be04410..8df17a84913b78fd3fe708a4428f5d7d256c4c9f 100644 (file)
@@ -138,7 +138,6 @@ public abstract class AbstractStreamWriterGenerator extends AbstractGenerator im
             return obj;
         }
 
-        @SuppressWarnings("unchecked")
         private Class<? extends TreeNodeSerializerImplementation> generateSerializer(final Class<?> type,
                 final String serializerName)
                 throws CannotCompileException, IllegalAccessException, IllegalArgumentException,
@@ -146,7 +145,8 @@ public abstract class AbstractStreamWriterGenerator extends AbstractGenerator im
             final AbstractTreeNodeSerializerSource source = generateEmitterSource(type, serializerName);
             final CtClass poolClass = generateEmitter0(type, source, serializerName);
             final Class<? extends TreeNodeSerializerImplementation> cls =
-                    poolClass.toClass(type.getClassLoader(), type.getProtectionDomain());
+                    poolClass.toClass(type.getClassLoader(), type.getProtectionDomain())
+                    .asSubclass(TreeNodeSerializerImplementation.class);
 
             /*
              * Due to OSGi class loader rules we cannot initialize the fields