}
private void wire(ApplicationContext context, RequestHandler bean, AutowireToController autowireTo) {
String toBean = autowireTo.controllerBean();
if ((toBean != null) && (toBean.length() > 0)) {
AdvisableController controller = (AdvisableController) context.getBean(toBean);
if (controller != null) {
if (log.isInfoEnabled()) log.info("Wiring request handler bean " + bean + " to controller \"" + toBean + "\"");
controller.addRequestHandler(bean);
}
} else {
Class beanClass = autowireTo.controllerClass();
if ((beanClass != null) & (!AutowireToController.class.equals(beanClass))) {
Map controllers = context.getBeansOfType(beanClass);
if (controllers != null) {
for (Object controllerName : controllers.keySet()) {
AdvisableController controller = (AdvisableController) controllers.get(controllerName);
if (log.isInfoEnabled()) log.info("Wiring request handler bean " + bean + " to controller \"" + controllerName + "\"");
controller.addRequestHandler(bean);
}
}
}
}
}