@@ -51,26 +51,15 @@ static String getCrdName(ResourceController controller) {
51
51
return (Class <? extends CustomResourceDoneable <T >>) doneableClassCache .get (customResourceClass );
52
52
}
53
53
54
- ClassPool pool = ClassPool .getDefault ();
55
- pool .appendClassPath (new LoaderClassPath (Thread .currentThread ().getContextClassLoader ()));
56
-
57
- CtClass superClass = pool .get (CustomResourceDoneable .class .getName ());
58
- CtClass function = pool .get (Function .class .getName ());
59
- CtClass customResource = pool .get (customResourceClass .getName ());
60
- CtClass [] argTypes = {customResource , function };
61
- CtClass customDoneable = pool .makeClass (className , superClass );
62
- CtConstructor ctConstructor = CtNewConstructor .make (argTypes , null , "super($1, $2);" , customDoneable );
63
- customDoneable .addConstructor (ctConstructor );
64
-
65
- Class <? extends CustomResourceDoneable <T >> doneableClass ;
66
- if (JAVA_VERSION >= 9 ) {
67
- doneableClass = (Class <? extends CustomResourceDoneable <T >>) customDoneable .toClass (customResourceClass );
68
- } else {
69
- doneableClass = (Class <? extends CustomResourceDoneable <T >>) customDoneable .toClass ();
54
+ if (!getAnnotation (controller ).customResourceDoneableClass ().equals (Controller .EMPTY_DONEABLE .class )) {
55
+ Class <? extends CustomResourceDoneable <T >> doneableClass = (Class <? extends CustomResourceDoneable <T >>) getAnnotation (controller ).customResourceDoneableClass ();
56
+ doneableClassCache .put (customResourceClass , doneableClass );
57
+ return doneableClass ;
70
58
}
71
- doneableClassCache .put (customResourceClass , doneableClass );
72
- return doneableClass ;
73
- } catch (CannotCompileException | NotFoundException e ) {
59
+
60
+ throw new RuntimeException ("Cannot initialize Donealbe class" );
61
+
62
+ } catch (RuntimeException e ) {
74
63
throw new IllegalStateException (e );
75
64
}
76
65
}
0 commit comments