if (null == initMethod || initMethod.isStatic() || initMethod.getVisibility() != Visibility.PUBLIC) {
throwInitMethodNotFound(bean, initMethodName);
}
final GeneratorContext context = this.getGeneratorContext();
context.debug("Overriding satisfyInit to call " + initMethod);
final NewType beanFactory = bean.getFactoryBean();
final Method beanFactoryInitMethod = beanFactory.getMostDerivedMethod(Constants.SATISFY_INIT, this
.getParameterListWithOnlyObject());
final NewMethod newMethod = beanFactoryInitMethod.copy(beanFactory);