Method setter = type.getDeclaredMethod(methodName, new Class[]{ Callback[].class });
Method setter = getCallbacksSetter(type, methodName);
    private static void setCallbacksHelper(Class type, Callback[] callbacks, String methodName) {        // TODO: optimize        try {            Method setter = type.getDeclaredMethod(methodName, new Class[]{ Callback[].class });            setter.invoke(null, new Object[]{ callbacks });        } catch (NoSuchMethodException e) {            throw new IllegalArgumentException(type + " is not an enhanced class");        } catch (IllegalAccessException e) {            throw new CodeGenerationException(e);        } catch (InvocationTargetException e) {            throw new CodeGenerationException(e);        }    }