X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=cadi%2Faaf%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Faaf%2Fcadi%2Faaf%2FTestConnectivity.java;h=e5a0a28ceb44e7387ef3d578e6a5a20efa7c7e3d;hb=refs%2Fchanges%2F24%2F84924%2F1;hp=ccba7c1a3feca90d76337ed0880a58862db071e8;hpb=7e966914050e66219689001ff4ab601a49eef0ac;p=aaf%2Fauthz.git diff --git a/cadi/aaf/src/main/java/org/onap/aaf/cadi/aaf/TestConnectivity.java b/cadi/aaf/src/main/java/org/onap/aaf/cadi/aaf/TestConnectivity.java index ccba7c1a..e5a0a28c 100644 --- a/cadi/aaf/src/main/java/org/onap/aaf/cadi/aaf/TestConnectivity.java +++ b/cadi/aaf/src/main/java/org/onap/aaf/cadi/aaf/TestConnectivity.java @@ -30,6 +30,7 @@ import java.net.URI; import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.Map; import org.onap.aaf.cadi.Access.Level; import org.onap.aaf.cadi.CadiException; @@ -42,15 +43,21 @@ import org.onap.aaf.cadi.aaf.v2_0.AAFLocator; import org.onap.aaf.cadi.client.Future; import org.onap.aaf.cadi.config.Config; import org.onap.aaf.cadi.config.SecurityInfoC; +import org.onap.aaf.cadi.configure.Agent; import org.onap.aaf.cadi.http.HBasicAuthSS; import org.onap.aaf.cadi.http.HClient; import org.onap.aaf.cadi.http.HX509SS; +import org.onap.aaf.cadi.locator.SingleEndpointLocator; import org.onap.aaf.cadi.oauth.HRenewingTokenSS; +import org.onap.aaf.cadi.util.FixURIinfo; import org.onap.aaf.misc.env.APIException; public class TestConnectivity { - public static void main(String[] args) { + private static Map aaf_urls; + + + public static void main(String[] args) { if (args.length<1) { System.out.println("Usage: ConnectivityTester []"); } else { @@ -62,56 +69,63 @@ public class TestConnectivity { } PropAccess access = new PropAccess(args); - String aaflocate; - if (args.length>1) { - aaflocate = "https://" + args[1]; - access.setProperty(Config.AAF_LOCATE_URL, "https://" + args[1]); - } else { - aaflocate = access.getProperty(Config.AAF_LOCATE_URL); - if (aaflocate==null) { - print(true,"Properties must contain ",Config.AAF_LOCATE_URL); - } - } - try { SecurityInfoC si = SecurityInfoC.instance(access, HttpURLConnection.class); + aaf_urls = Agent.loadURLs(access); List> lss = loadSetters(access,si); ///////// - print(true,"Test Connections driven by AAFLocator"); - URI serviceURI = new URI(Defaults.AAF_URL); - - for (URI uri : new URI[] { - serviceURI, - new URI(Defaults.OAUTH2_TOKEN_URL), - new URI(Defaults.OAUTH2_INTROSPECT_URL), - new URI(Defaults.CM_URL), - new URI(Defaults.GUI_URL), - new URI(Defaults.FS_URL), - new URI(Defaults.HELLO_URL) - }) { - Locator locator = new AAFLocator(si, uri); - try { - connectTest(locator, uri); - } catch (Exception e) { - e.printStackTrace(); - System.err.flush(); - } - } - - ///////// - print(true,"Test Service for Perms driven by AAFLocator"); - Locator locator = new AAFLocator(si,serviceURI); - for (SecuritySetter ss : lss) { + String directAAFURL = aaf_urls.get(Config.AAF_URL); + if(directAAFURL!=null && !directAAFURL.contains("/locate/")) { + print(true,"Test Connections by non-located aaf_url"); + Locator locator = new SingleEndpointLocator(directAAFURL); + connectTest(locator,new URI(directAAFURL)); + + SecuritySetter ss = si.defSS; permTest(locator,ss); - } + } else { + ///////// + print(true,"Test Connections driven by AAFLocator"); + String serviceURI = aaf_urls.get(Config.AAF_URL); + + for (String url : new String[] { + serviceURI, + aaf_urls.get(Config.AAF_OAUTH2_TOKEN_URL), + aaf_urls.get(Config.AAF_OAUTH2_INTROSPECT_URL), + aaf_urls.get(Config.AAF_URL_CM), + aaf_urls.get(Config.AAF_URL_GUI), + aaf_urls.get(Config.AAF_URL_FS), + aaf_urls.get(Config.AAF_URL_HELLO) + }) { + URI uri = new URI(url); + Locator locator = new AAFLocator(si, uri); + try { + connectTest(locator, uri); + } catch (Exception e) { + e.printStackTrace(); + System.err.flush(); + } + } - ////////// - print(true,"Test essential BasicAuth Service call, driven by AAFLocator"); - for (SecuritySetter ss : lss) { - if (ss instanceof HBasicAuthSS) { - basicAuthTest(new AAFLocator(si, serviceURI),ss); - } + ///////// + print(true,"Test Service for Perms driven by AAFLocator"); + Locator locator = new AAFLocator(si,new URI(serviceURI)); + for (SecuritySetter ss : lss) { + permTest(locator,ss); + } + + ////////// + print(true,"Test essential BasicAuth Service call, driven by AAFLocator"); + boolean hasBath=false; + for (SecuritySetter ss : lss) { + if (ss instanceof HBasicAuthSS) { + hasBath=true; + basicAuthTest(new AAFLocator(si, new URI(serviceURI)),ss); + } + } + if(!hasBath) { + System.out.println("No User/Password to test"); + } } } catch (Exception e) { @@ -122,7 +136,8 @@ public class TestConnectivity { } } - private static List> loadSetters(PropAccess access, SecurityInfoC si) { + + private static List> loadSetters(PropAccess access, SecurityInfoC si) { print(true,"Load Security Setters from Configuration Information"); String user = access.getProperty(Config.AAF_APPID); @@ -153,11 +168,7 @@ public class TestConnectivity { access.log(Level.INFO, "X509 (Client certificate) Security Setter constructor threw exception: \"",e.getMessage(),"\". X509 tests will not be performed"); } - String tokenURL = access.getProperty(Config.AAF_OAUTH2_TOKEN_URL); - String locateURL=access.getProperty(Config.AAF_LOCATE_URL); - if (tokenURL==null || (tokenURL.contains("/locate/") && locateURL!=null)) { - tokenURL=Defaults.OAUTH2_TOKEN_URL+"/token"; - } + String tokenURL = aaf_urls.get(Config.AAF_OAUTH2_TOKEN_URL); try { HRenewingTokenSS hrtss = new HRenewingTokenSS(access, tokenURL); @@ -216,13 +227,15 @@ public class TestConnectivity { if ((uri = dl.get(li)) == null) { System.out.println("Locator Item empty"); } else { + System.out.printf("Located %s using %s\n",uri.toString(), locatorURI.toString()); socket = new Socket(); try { + FixURIinfo fui = new FixURIinfo(uri); try { - socket.connect(new InetSocketAddress(uri.getHost(), uri.getPort()),3000); - System.out.printf("Can Connect a Socket to %s %d\n",uri.getHost(),uri.getPort()); + socket.connect(new InetSocketAddress(fui.getHost(), fui.getPort()),3000); + System.out.printf("Can Connect a Socket to %s %d\n",fui.getHost(),fui.getPort()); } catch (IOException e) { - System.out.printf("Cannot Connect a Socket to %s %d: %s\n",uri.getHost(),uri.getPort(),e.getMessage()); + System.out.printf("Cannot Connect a Socket to %s %d: %s\n",fui.getHost(),fui.getPort(),e.getMessage()); } } finally { try { @@ -248,15 +261,16 @@ public class TestConnectivity { if (ss instanceof HRenewingTokenSS) { System.out.println(" " + ((HRenewingTokenSS)ss).tokenURL()); } else { - System.out.println(); + System.out.println(); } HClient client = new HClient(ss, uri, 3000); client.setMethod("GET"); String user = ss.getID(); - if (user.indexOf('@')<0) { - user+="@isam.att.com"; - } - client.setPathInfo("/authz/perms/user/"+user); + + String pathInfo = "/authz/perms/user/"+user; + client.setPathInfo(pathInfo); + System.out.println(pathInfo); + client.send(); Future future = client.futureReadString(); if (future.get(7000)) {