/** * Prints out the message. User can override this method and modify the way * the message is printed. */ protected void printBefore(final ActionRequest request) { StringBuilder message = new StringBuilder(prefixIn); message.append(request.getActionPath()).append(" [").append(request.getActionRuntime().createActionString()).append(']'); out(message.toString()); }
public Targets(final ActionRequest actionRequest) { targets = makeTargets( Target.ofValue(actionRequest.getAction(), actionRequest.getActionRuntime().getScopeData()), actionRequest.getActionRuntime().getMethodParams()); }
final ActionRuntime actionRuntime = actionRequest.getActionRuntime(); final ActionRuntime actionRuntime = actionRequest.getActionRuntime();
String resultBasePath = actionRequest.getActionRuntime().getResultBasePath();
/** * Sets the {@link jodd.madvoc.ActionRequest#setNextActionPath(String) next action request} for the chain. */ @Override public void render(final ActionRequest actionRequest, final Object resultValue) { final Chain chainResult; if (resultValue == null) { chainResult = Chain.to(StringPool.EMPTY); } else { if (resultValue instanceof String) { chainResult = Chain.to((String)resultValue); } else { chainResult = (Chain) resultValue; } } final String resultBasePath = actionRequest.getActionRuntime().getResultBasePath(); final String resultPath = resultMapper.resolveResultPathString(resultBasePath, chainResult.path()); actionRequest.setNextActionPath(resultPath); }
final String resultBasePath = actionRequest.getActionRuntime().getResultBasePath();
/** * Redirects to the given location. Provided path is parsed, action is used as a value context. */ @Override public void render(final ActionRequest actionRequest, final Object resultValue) { final PermRedirect redirectResult; if (resultValue == null) { redirectResult = PermRedirect.to(StringPool.SLASH); } else { if (resultValue instanceof String) { redirectResult = PermRedirect.to((String)resultValue); } else { redirectResult = (PermRedirect) resultValue; } } final String resultBasePath = actionRequest.getActionRuntime().getResultBasePath(); final String redirectValue = redirectResult.path(); final String resultPath; if (redirectValue.startsWith("http://") || redirectValue.startsWith("https://")) { resultPath = redirectValue; } else { resultPath = resultMapper.resolveResultPathString(resultBasePath, redirectValue); } final HttpServletRequest request = actionRequest.getHttpServletRequest(); final HttpServletResponse response = actionRequest.getHttpServletResponse(); String path = beanTemplateParser.parseWithBean(resultPath, actionRequest.getAction()); DispatcherUtil.redirectPermanent(request, response, path); }
public void inject(final ActionRequest actionRequest, final Targets targets) { final ActionRuntime actionRuntime = actionRequest.getActionRuntime(); final RouteChunk routeChunk = actionRuntime.getRouteChunk(); if (!routeChunk.hasMacrosOnPath()) { // no action path macros at all, just exit return; } // inject final String[] actionPath = actionRequest.getActionPathChunks(); int ndx = actionPath.length - 1; RouteChunk chunk = routeChunk; while (chunk.parent() != null) { final PathMacros pathMacros = chunk.pathMacros(); if (pathMacros != null) { injectMacros(actionPath[ndx], pathMacros, targets); } ndx--; chunk = chunk.parent(); } }
final String resultBasePath = actionRequest.getActionRuntime().getResultBasePath();
@Override public Object intercept(final ActionRequest actionRequest) throws Exception { final ActionRuntime actionRuntime = actionRequest.getActionRuntime(); if (actionRuntime.isAuthenticated()) { // action requires user to be authenticated T grantedAuthToken = authenticateUserViaHttpSession(actionRequest); if (grantedAuthToken == null) { grantedAuthToken = authenticateUserViaToken(actionRequest); } if (authenticateViaBasicAuth && grantedAuthToken == null) { grantedAuthToken = authenticateUserViaBasicAuth(actionRequest); } if (grantedAuthToken == null) { return JsonResult.of(return404instead401 ? HttpStatus.error404().notFound() : HttpStatus.error401().unauthorized("Not authorized")); } if (!authorized(actionRequest)) { return JsonResult.of(HttpStatus.error403().forbidden()); } } return actionRequest.invoke(); }
@Override public Object intercept(final ActionRequest actionRequest) throws Exception { final ActionRuntime actionRuntime = actionRequest.getActionRuntime(); if (actionRuntime.isAuthenticated()) { // action requires user to be authenticated T grantedAuthToken = authenticateUserViaHttpSession(actionRequest); if (grantedAuthToken == null) { grantedAuthToken = authenticateUserViaToken(actionRequest); } if (authenticateViaBasicAuth && grantedAuthToken == null) { grantedAuthToken = authenticateUserViaBasicAuth(actionRequest); } if (grantedAuthToken == null) { return JsonResult.of(return404instead401 ? HttpStatus.error404().notFound() : HttpStatus.error401().unauthorized("Not authorized")); } if (!authorized(actionRequest)) { return JsonResult.of(HttpStatus.error403().forbidden()); } } return actionRequest.invoke(); }