X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=auth%2Fauth-core%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Faaf%2Fauth%2Frserv%2FHttpCode.java;h=8c533f6efbee221e43a5deec433b92994de11a7b;hb=1296352d8eafee57f982a4342ad79ada4aa56d28;hp=0bfe310aab20fba3a877a0d285349e189e21fc33;hpb=ceda6e8bc270202bcb24340b86617110289c902e;p=aaf%2Fauthz.git diff --git a/auth/auth-core/src/main/java/org/onap/aaf/auth/rserv/HttpCode.java b/auth/auth-core/src/main/java/org/onap/aaf/auth/rserv/HttpCode.java index 0bfe310a..8c533f6e 100644 --- a/auth/auth-core/src/main/java/org/onap/aaf/auth/rserv/HttpCode.java +++ b/auth/auth-core/src/main/java/org/onap/aaf/auth/rserv/HttpCode.java @@ -7,9 +7,9 @@ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -28,91 +28,94 @@ import org.onap.aaf.misc.env.Trans; /** * HTTP Code element, which responds to the essential "handle Method". - * + * * Use Native HttpServletRe[quest|sponse] calls for questions like QueryParameters (getParameter, etc) - * + * * Use local "pathParam" method to obtain in an optimized manner the path parameter, which must be interpreted by originating string - * + * * i.e. my/path/:id/:other/* - * + * * @author Jonathan * * @param * @param */ public abstract class HttpCode { - protected CONTEXT context; - private String desc; - protected String [] roles; - private boolean all; - - // Package by design... Set by Route when linked - Match match; - - public HttpCode(CONTEXT context, String description, String ... roles) { - this.context = context; - desc = description; - - // Evaluate for "*" once... - all = false; - for(String srole : roles) { - if("*".equals(srole)) { - all = true; - break; - } - } - this.roles = all?null:roles; - } - - public abstract void handle(TRANS trans, HttpServletRequest req, HttpServletResponse resp) throws Exception; - - public String desc() { - return desc; - } - - /** - * Get the variable element out of the Path Parameter, as set by initial Code - * - * @param req - * @param key - * @return - */ - public String pathParam(HttpServletRequest req, String key) { - String rv = match.param(req.getPathInfo(), key); - if(rv!=null) { - rv = rv.trim(); - if(rv.endsWith("/")) { - rv = rv.substring(0, rv.length()-1); - } - } - return rv; - } + protected CONTEXT context; + private String desc; + protected String [] roles; + private boolean all; + + // Package by design... Set by Route when linked + Match match; + + public HttpCode(CONTEXT context, String description, String ... roles) { + this.context = context; + desc = description; + + // Evaluate for "*" once... + all = false; + for (String srole : roles) { + if ("*".equals(srole)) { + all = true; + break; + } + } + this.roles = all?null:roles; + } + + public abstract void handle(TRANS trans, HttpServletRequest req, HttpServletResponse resp) throws Exception; + + public String desc() { + return desc; + } + + /** + * Get the variable element out of the Path Parameter, as set by initial Code + * + * @param req + * @param key + * @return + */ + public String pathParam(HttpServletRequest req, String key) { + String rv = req.getParameter(key); + if (rv==null) { + rv = match.param(req.getPathInfo(), key); + if (rv!=null) { + rv = rv.trim(); + if (rv.endsWith("/")) { + rv = rv.substring(0, rv.length()-1); + } + } + } + return rv; + } + + // Note: get Query Params from Request + + /** + * Check for Authorization when set. + * + * If no Roles set, then accepts all users + * + * @param req + * @return + */ + public boolean isAuthorized(HttpServletRequest req) { + if (all)return true; + if (roles!=null) { + for (String srole : roles) { + if (req.isUserInRole(srole)) return true; + } + } + return false; + } + + public boolean no_cache() { + return false; + } - // Note: get Query Params from Request - - /** - * Check for Authorization when set. - * - * If no Roles set, then accepts all users - * - * @param req - * @return - */ - public boolean isAuthorized(HttpServletRequest req) { - if(all)return true; - if(roles!=null) { - for(String srole : roles) { - if(req.isUserInRole(srole)) return true; - } - } - return false; - } - - public boolean no_cache() { - return false; - } - - public String toString() { - return desc; - } + public String toString() { + return desc; + } } \ No newline at end of file