@SuppressWarnings("unchecked") private <A extends Action<R>, R extends Result> ActionHandler<A, R> findHandler(A action) throws UnsupportedActionException { ActionHandlerValidatorInstance handlerValidator = actionHandlerValidatorRegistry.findActionHandlerValidator(action); if (handlerValidator == null) { throw new UnsupportedActionException(action); } return (ActionHandler<A, R>) handlerValidator.getActionHandler(); } }
private ActionHandlerValidatorInstance createInstance( ActionHandlerValidatorClass<? extends Action<?>, ? extends Result> actionHandlerValidatorClass) { ActionHandlerValidatorInstance actionHandlerValidatorInstance = null; ActionValidator actionValidator = findActionValidator(actionHandlerValidatorClass.getActionValidatorClass()); if (actionValidator == null) { actionValidator = injector.getInstance(actionHandlerValidatorClass.getActionValidatorClass()); actionHandlerValidatorInstance = new ActionHandlerValidatorInstance( actionValidator, injector.getInstance(actionHandlerValidatorClass.getActionHandlerClass())); validators.put(actionValidator.getClass(), actionValidator); } else { actionHandlerValidatorInstance = new ActionHandlerValidatorInstance( actionValidator, injector.getInstance(actionHandlerValidatorClass.getActionHandlerClass())); } if (actionHandlerValidatorInstance.getActionHandler() == null || actionHandlerValidatorInstance.getActionValidator() == null) { return null; } return actionHandlerValidatorInstance; } }
private ActionHandlerValidatorInstance createInstance(ActionHandlerValidatorClass<? extends Action<?>, ? extends Result> actionHandlerValidatorClass) { ActionHandlerValidatorInstance actionHandlerValidatorInstance = null; ActionValidator actionValidator = findActionValidator(actionHandlerValidatorClass.getActionValidatorClass()); ActionHandler<?, ?> actionHandler = SpringUtils.getInstance(applicationContext, actionHandlerValidatorClass.getActionHandlerClass()); if (actionValidator == null) { actionValidator = SpringUtils.getInstance(applicationContext, actionHandlerValidatorClass.getActionValidatorClass()); actionHandlerValidatorInstance = new ActionHandlerValidatorInstance(actionValidator, actionHandler); validators.put(actionValidator.getClass(), actionValidator); } else { actionHandlerValidatorInstance = new ActionHandlerValidatorInstance(actionValidator, actionHandler); } if (actionHandlerValidatorInstance.getActionHandler() == null || actionHandlerValidatorInstance.getActionValidator() == null) { return null; } return actionHandlerValidatorInstance; }