Eliminate ClassLoadingStrategy
[mdsal.git] / binding / mdsal-binding-runtime-spi / src / main / java / org / opendaylight / mdsal / binding / runtime / spi / DefaultModuleInfoSnapshot.java
index 4047969e8c22089459b0c461caeda208c1f06f00..8178c439ab02838771b4dfb10ad74dd430c6fd45 100644 (file)
@@ -51,12 +51,14 @@ final class DefaultModuleInfoSnapshot implements ModuleInfoSnapshot {
     }
 
     @Override
-    public Class<?> loadClass(final String fullyQualifiedName) throws ClassNotFoundException {
+    public <T> Class<T> loadClass(final String fullyQualifiedName) throws ClassNotFoundException {
         final String packageName = BindingReflections.getModelRootPackageName(fullyQualifiedName);
         final ClassLoader loader = classLoaders.get(packageName);
         if (loader == null) {
             throw new ClassNotFoundException("Package " + packageName + " not found");
         }
-        return loader.loadClass(fullyQualifiedName);
+        @SuppressWarnings("unchecked")
+        final Class<T> loaded = (Class<T>) loader.loadClass(fullyQualifiedName);
+        return loaded;
     }
 }