@Override
@SuppressWarnings({"rawtypes", "unchecked"})
public void config() {
List<Class<? extends Controller>> controllerClasses = ClassSearcher.of(Controller.class)
.includeAllJarsInLib(includeAllJarsInLib).injars(includeJars).search();
ControllerBind controllerBind = null;
for (Class controller : controllerClasses) {
if (excludeClasses.contains(controller)) {
continue;
}
controllerBind = (ControllerBind) controller.getAnnotation(ControllerBind.class);
if (controllerBind == null) {
if (!autoScan) {
continue;
}
this.add(controllerKey(controller), controller);
logger.debug("routes.add(" + controllerKey(controller) + ", " + controller.getName() + ")");
} else if (StrKit.isBlank(controllerBind.viewPath())) {
this.add(controllerBind.controllerKey(), controller);
logger.debug("routes.add(" + controllerBind.controllerKey() + ", " + controller.getName() + ")");
} else {
this.add(controllerBind.controllerKey(), controller, controllerBind.viewPath());
logger.debug("routes.add(" + controllerBind.controllerKey() + ", " + controller + ","
+ controllerBind.viewPath() + ")");
}
}
}