X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=auth%2Fauth-certman%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Faaf%2Fauth%2Fcm%2FAAF_CM.java;h=024d9f96594b038a80e976680ecc7151e86791ff;hb=be1edcb6830745015f5de72e820f40f36dd571ad;hp=aa5c1dafc8285442f2d20e070e048feedb626d2b;hpb=688cf884979c1a7d753baf6a1223c1a3a87c39f5;p=aaf%2Fauthz.git diff --git a/auth/auth-certman/src/main/java/org/onap/aaf/auth/cm/AAF_CM.java b/auth/auth-certman/src/main/java/org/onap/aaf/auth/cm/AAF_CM.java index aa5c1daf..024d9f96 100644 --- a/auth/auth-certman/src/main/java/org/onap/aaf/auth/cm/AAF_CM.java +++ b/auth/auth-certman/src/main/java/org/onap/aaf/auth/cm/AAF_CM.java @@ -3,13 +3,14 @@ * org.onap.aaf * =========================================================================== * Copyright (c) 2018 AT&T Intellectual Property. All rights reserved. + * Modifications Copyright (C) 2019 IBM. * =========================================================================== * 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. @@ -73,7 +74,7 @@ import com.datastax.driver.core.Cluster; public class AAF_CM extends AbsService { private static final String USER_PERMS = "userPerms"; - private static final String CM_ALLOW_TMP = "cm_allow_tmp"; + private static final String CM_ALLOW_TMP = "cm_allow_tmp"; private static final Map certAuths = new TreeMap<>(); public static Facade1_0 facade1_0; // this is the default Facade public static Facade1_0 facade1_0_XML; // this is the XML Facade @@ -87,16 +88,16 @@ public class AAF_CM extends AbsService { //Added for junits public CMService getService() { - return null; + return null; } /** * Construct AuthzAPI with all the Context Supporting Routes that Authz needs - * + * * @param env - * @param si - * @param dm - * @param decryptor - * @throws APIException + * @param si + * @param dm + * @param decryptor + * @throws APIException */ public AAF_CM(AuthzEnv env) throws Exception { super(env.access(),env); @@ -108,11 +109,11 @@ public class AAF_CM extends AbsService { if (aafEnv==null) { throw new APIException("aaf_env needs to be set"); } - + // Check for allowing /tmp in Properties String allowTmp = env.getProperty(CM_ALLOW_TMP); if("true".equalsIgnoreCase(allowTmp)) { - CertmanValidator.allowTmp(); + CertmanValidator.allowTmp(); } @@ -131,7 +132,7 @@ public class AAF_CM extends AbsService { String key = es.getKey().toString(); if (key.startsWith(CA.CM_CA_PREFIX)) { int idx = key.indexOf('.'); - if (idx==key.lastIndexOf('.')) { // else it's a regular property + if (idx==key.lastIndexOf('.')) { // else it's a regular property env.log(Level.INIT, "Loading Certificate Authority Module: " + key.substring(idx+1)); String[] segs = Split.split(',', env.getProperty(key)); if (segs.length>0) { @@ -148,12 +149,16 @@ public class AAF_CM extends AbsService { pinst[0]=env; pinst[1]= key.substring(idx+1); pinst[2]= aafEnv; - pinst[3] = multiParams; + pinst[3] = multiParams; try { - CA ca = cons.newInstance(pinst); + CA ca = cons.newInstance(pinst); certAuths.put(ca.getName(),ca); } catch (InvocationTargetException e) { - access.log(e, "Loading", segs[0]); + if(e.getLocalizedMessage()==null) { + access.log((Exception)e.getTargetException(), "Loading", segs[0]); + } else { + access.log(e, "Loading", segs[0]); + } } } } @@ -165,11 +170,11 @@ public class AAF_CM extends AbsService { service = getService(); if(service == null) { - service = new CMService(trans, this); + service = new CMService(trans, this); } // note: Service knows how to shutdown Cluster on Shutdown, etc. See Constructor facade1_0 = FacadeFactory.v1_0(this,trans, service,Data.TYPE.JSON); // Default Facade - facade1_0_XML = FacadeFactory.v1_0(this,trans,service,Data.TYPE.XML); + facade1_0_XML = FacadeFactory.v1_0(this,trans,service,Data.TYPE.XML); synchronized(env) { @@ -193,19 +198,19 @@ public class AAF_CM extends AbsService { public CA getCA(String key) { return certAuths.get(key); } - + /** * Setup XML and JSON implementations for each supported Version type - * + * * We do this by taking the Code passed in and creating clones of these with the appropriate Facades and properties * to do Versions and Content switches - * + * */ public void route(HttpMethods meth, String path, API api, Code code) throws Exception { String version = "1.0"; // Get Correct API Class from Mapper - Class respCls = facade1_0.mapper().getClass(api); + Class respCls = facade1_0.mapper().getClass(api); if (respCls==null) throw new Exception("Unknown class associated with " + api.getClass().getName() + ' ' + api.name()); // setup Application API HTML ContentTypes for JSON and Route String application = applicationJSON(respCls, version); @@ -218,7 +223,7 @@ public class AAF_CM extends AbsService { // Add other Supported APIs here as created } - public void routeAll(HttpMethods meth, String path, API api, Code code) throws Exception { + public void routeAll(HttpMethods meth, String path, API api, Code code) { route(env,meth,path,code,""); // this will always match } @@ -242,7 +247,8 @@ public class AAF_CM extends AbsService { new DirectRegistrar(access,locateDAO,port) }; } - + + @Override public void destroy() { Cache.stopTimer(); locateDAO.close(env.newTransNoAvg()); @@ -254,14 +260,14 @@ public class AAF_CM extends AbsService { Log4JLogIt logIt = new Log4JLogIt(args, "cm"); PropAccess propAccess = new PropAccess(logIt,args); try { - new JettyServiceStarter( - new AAF_CM(new AuthzEnv(propAccess)),true) - .start(); - } catch (Exception e) { - propAccess.log(e); - } + new JettyServiceStarter( + new AAF_CM(new AuthzEnv(propAccess)),true) + .start(); + } catch (Exception e) { + propAccess.log(e); + } } catch (APIException e) { - e.printStackTrace(System.err); + e.printStackTrace(System.err); } } }