));
b.addToBody(format("\n"+
+ "public %s handleChangedClass(%s dependencyResolver, %s old, %s bundleContext) throws Exception {\n"+
+ "return handleChangedClass(old);\n"+
+ "}\n", moduleFQN, DependencyResolver.class.getCanonicalName(), DynamicMBeanWithInstance.class.getCanonicalName(), BUNDLE_CONTEXT));
+
+ b.addToBody(format("\n@Deprecated\n"+
"public %s handleChangedClass(%s old) throws Exception {\n"+
"throw new UnsupportedOperationException(\"Class reloading is not supported\");\n"+
"}\n", moduleFQN, DynamicMBeanWithInstance.class.getCanonicalName()));
DynamicMBeanWithInstance.class.getCanonicalName(), BUNDLE_CONTEXT)+
format("%s oldModule;\n",moduleFQN)+
"try {\n"+
- format("oldModule = (%s) old.getModule();\n",moduleFQN)+
+ format("oldModule = (%s) old.getModule();\n", moduleFQN)+
"} catch(Exception e) {\n"+
- "return handleChangedClass(old);\n"+
+ "return handleChangedClass(dependencyResolver, old, bundleContext);\n"+
"}\n"+
format("%s module = instantiateModule(instanceName, dependencyResolver, oldModule, old.getInstance(), bundleContext);\n", moduleFQN);
import com.github.javaparser.JavaParser;
import com.github.javaparser.ParseException;
import com.github.javaparser.ast.CompilationUnit;
-import com.google.common.base.Predicate;
import com.google.common.collect.Collections2;
import com.google.common.collect.ImmutableSet;
import com.google.common.io.Files;
}
}
- verifyXmlFiles(Collections2.filter(files, new Predicate<File>() {
- @Override
- public boolean apply(final File input) {
- return input.getName().endsWith("xml");
- }
- }));
+ verifyXmlFiles(Collections2.filter(files, input -> input.getName().endsWith("xml")));
// verify ModuleFactory file
File moduleFactoryFile = JMXGenerator.concatFolders(generatedResourcesDir, "META-INF", "services",
visitor.assertField(
"private static final java.util.Set<Class<? extends org.opendaylight.controller.config.api.annotations.AbstractServiceInterface>> serviceIfcs");
- assertFactoryMethods(visitor.methods, 9);
+ assertFactoryMethods(visitor.methods, 10);
visitor.assertMethodDescriptions(0);
visitor.assertMethodJavadocs(0);
}
args.add(new ArgumentAssertion("Class<? extends org.opendaylight.controller.config.api.annotations.AbstractServiceInterface>", "serviceInterface"));
assertMethodPresent(methods, new MethodAssertion("boolean", "isModuleImplementingServiceInterface", args));
- assertEquals(methods.size(), expectedSize);
+ assertEquals(expectedSize, methods.size());
}
private static void assertMethodPresent(final Set<String> methods, final MethodAssertion methodAssertion) {