X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=auth%2Fauth-fs%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Faaf%2Fauth%2Ffs%2FAAF_FS.java;h=64d93539449e046a584d2d9e8172c3ad2abe5b5a;hb=c408e1fb0fd1ab286cca48d677003af5c0ea6437;hp=0359b3ef1dcc185d7caa9eae162e01c4b58e2299;hpb=ceda6e8bc270202bcb24340b86617110289c902e;p=aaf%2Fauthz.git diff --git a/auth/auth-fs/src/main/java/org/onap/aaf/auth/fs/AAF_FS.java b/auth/auth-fs/src/main/java/org/onap/aaf/auth/fs/AAF_FS.java index 0359b3ef..64d93539 100644 --- a/auth/auth-fs/src/main/java/org/onap/aaf/auth/fs/AAF_FS.java +++ b/auth/auth-fs/src/main/java/org/onap/aaf/auth/fs/AAF_FS.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. @@ -44,74 +44,77 @@ import org.onap.aaf.cadi.PropAccess; import org.onap.aaf.cadi.config.Config; import org.onap.aaf.cadi.register.Registrant; import org.onap.aaf.cadi.register.RemoteRegistrant; -import org.onap.aaf.misc.env.APIException; + public class AAF_FS extends AbsService { - public AAF_FS(final AuthzEnv env) throws APIException, IOException, CadiException { - super(env.access(),env); - try { - /////////////////////// - // File Server - /////////////////////// - // creates StaticSlot, needed for CachingFileAccess, and sets to public Dir - env.staticSlot(CachingFileAccess.CFA_WEB_PATH,"aaf_public_dir"); - - CachingFileAccess cfa = new CachingFileAccess(env); - route(env,GET,"/:key", cfa); - route(env,GET,"/:key/:cmd", cfa); - final String aaf_locate_url = access.getProperty(Config.AAF_LOCATE_URL, null); - if(aaf_locate_url == null) { - access.printf(Level.WARN, "Redirection requires property %s",Config.AAF_LOCATE_URL); - } else { - route(env,GET,"/", new Redirect(this,aaf_locate_url)); - } - } catch (Exception e) { - e.printStackTrace(); - } - } - - private static class Redirect extends HttpCode { - private final String url; - - public Redirect(AAF_FS context,String url) { - super(context, "Redirect to HTTP/S"); - this.url = url; - } - - @Override - public void handle(AuthzTrans trans, HttpServletRequest req, HttpServletResponse resp) throws Exception { - trans.info().printf("Redirecting %s to HTTP/S %s", req.getRemoteAddr(), req.getLocalAddr()); - resp.sendRedirect(url); - } - }; - - @Override - public Filter[] filters() throws CadiException, LocatorException { - return new Filter[] { - new AuthzTransOnlyFilter(env) - }; - } - - @SuppressWarnings("unchecked") - @Override - public Registrant[] registrants(final int port) throws CadiException, LocatorException { - return new Registrant[] { - new RemoteRegistrant(aafCon(),app_name,app_version,port) - }; - } - - public static void main(final String[] args) { - try { - Log4JLogIt logIt = new Log4JLogIt(args, "fs"); - PropAccess propAccess = new PropAccess(logIt,args); - - AAF_FS service = new AAF_FS(new AuthzEnv(propAccess)); - JettyServiceStarter jss = new JettyServiceStarter(service); - jss.insecure().start(); - } catch (Exception e) { - e.printStackTrace(); - } - } + public AAF_FS(final AuthzEnv env) throws IOException, CadiException { + super(env.access(),env); + try { + /////////////////////// + // File Server + /////////////////////// + // creates StaticSlot, needed for CachingFileAccess, and sets to public Dir + env.staticSlot(CachingFileAccess.CFA_WEB_PATH,"aaf_public_dir"); + + CachingFileAccess cfa = new CachingFileAccess<>(env); + route(env,GET,"/:key*", cfa); + final String aaf_locate_url = Config.getAAFLocateUrl(access); + if (aaf_locate_url == null) { + access.printf(Level.WARN, "Redirection requires property %s",Config.AAF_LOCATE_URL); + } else { + route(env,GET,"/", new Redirect(this,aaf_locate_url)); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + + private static class Redirect extends HttpCode { + private final String url; + + public Redirect(AAF_FS context,String url) { + super(context, "Redirect to HTTP/S"); + this.url = url; + } + + @Override + public void handle(AuthzTrans trans, HttpServletRequest req, HttpServletResponse resp) throws Exception { + trans.info().printf("Redirecting %s to HTTP/S %s", req.getRemoteAddr(), req.getLocalAddr()); + resp.sendRedirect(url); + } + }; + + @Override + public Filter[] _filters(Object ... additionalTafLurs) throws CadiException, LocatorException { + // Note: No TAFs and Lurs on FileServer + return new Filter[] { + new AuthzTransOnlyFilter(env) + }; + } + + @SuppressWarnings("unchecked") + @Override + public Registrant[] registrants(final int port) throws CadiException, LocatorException { + return new Registrant[] { + new RemoteRegistrant(aafCon(),port) + }; + } + + public static void main(final String[] args) { + try { + Log4JLogIt logIt = new Log4JLogIt(args, "fs"); + PropAccess propAccess = new PropAccess(logIt,args); + try { + new JettyServiceStarter( + new AAF_FS(new AuthzEnv(propAccess)),false) + .start(); + } catch (Exception e) { + propAccess.log(e); + } + } catch (Exception e) { + e.printStackTrace(); + } + } }