X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=cadi%2Faaf%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Faaf%2Fcadi%2Foauth%2FTokenClientFactory.java;h=28bf6592ff0d2270abaa0ec990787fb6f55a12f0;hb=442d8fb117c9086ec2ec468f661af082becafbb8;hp=e52df96198923ec93a5f9ad82b7768b369f7eb65;hpb=4906c14f770e85452240fc8e04807b6114fab1ca;p=aaf%2Fauthz.git diff --git a/cadi/aaf/src/main/java/org/onap/aaf/cadi/oauth/TokenClientFactory.java b/cadi/aaf/src/main/java/org/onap/aaf/cadi/oauth/TokenClientFactory.java index e52df961..28bf6592 100644 --- a/cadi/aaf/src/main/java/org/onap/aaf/cadi/oauth/TokenClientFactory.java +++ b/cadi/aaf/src/main/java/org/onap/aaf/cadi/oauth/TokenClientFactory.java @@ -43,6 +43,7 @@ import org.onap.aaf.cadi.aaf.v2_0.AAFLocator; import org.onap.aaf.cadi.config.Config; import org.onap.aaf.cadi.config.SecurityInfoC; import org.onap.aaf.cadi.locator.PropertyLocator; +import org.onap.aaf.cadi.locator.SingleEndpointLocator; import org.onap.aaf.cadi.oauth.TokenClient.AUTHN_METHOD; import org.onap.aaf.cadi.persist.Persist; import org.onap.aaf.cadi.principal.Kind; @@ -53,13 +54,21 @@ import aafoauth.v2_0.Token; public class TokenClientFactory extends Persist { private static TokenClientFactory instance; - private Map aafcons = new ConcurrentHashMap(); + private Map aafcons = new ConcurrentHashMap<>(); private SecurityInfoC hsi; // Package on purpose - final Symm symm; + final Symm symm; private TokenClientFactory(Access pa) throws APIException, GeneralSecurityException, IOException, CadiException { super(pa, new RosettaEnv(pa.getProperties()),Token.class,"outgoing"); + + if(access.getProperty(Config.AAF_OAUTH2_TOKEN_URL,null)==null) { + access.getProperties().put(Config.AAF_OAUTH2_TOKEN_URL, "https://AAF_LOCATE_URL/AAF_NS.token:2.0"); // Default to AAF + } + if(access.getProperty(Config.AAF_OAUTH2_INTROSPECT_URL,null)==null) { + access.getProperties().put(Config.AAF_OAUTH2_INTROSPECT_URL, "https://AAF_LOCATE_URL/AAF_NS.introspect:2.0"); // Default to AAF); + } + symm = Symm.encrypt.obtain(); hsi = SecurityInfoC.instance(access, HttpURLConnection.class); } @@ -70,7 +79,7 @@ public class TokenClientFactory extends Persist { } return instance; } - + /** * Pickup Timeout from Properties * @@ -95,18 +104,23 @@ public class TokenClientFactory extends Persist { } } char okind; - if(Config.AAF_OAUTH2_TOKEN_URL.equals(tagOrURL) || - tagOrURL.equals(access.getProperty(Config.AAF_OAUTH2_TOKEN_URL, null))) { + if( Config.AAF_OAUTH2_TOKEN_URL.equals(tagOrURL) || + Config.AAF_OAUTH2_INTROSPECT_URL.equals(tagOrURL) || + tagOrURL.equals(access.getProperty(Config.AAF_OAUTH2_TOKEN_URL, null)) || + tagOrURL.equals(access.getProperty(Config.AAF_OAUTH2_INTROSPECT_URL, null)) + ) { okind = Kind.AAF_OAUTH; } else { okind = Kind.OAUTH; } - return new TokenClient( + TokenClient tci = new TokenClient( okind, this, ach, timeout, AUTHN_METHOD.none); + tci.client_creds(access); + return tci; } public TzClient newTzClient(final String locatorURL) throws CadiException, LocatorException { @@ -160,8 +174,10 @@ public class TokenClientFactory extends Persist { } if(locatorURL.startsWith("https://AAF_LOCATE_URL/") || locatePattern.matcher(locatorURL).matches()) { return new AAFLocator(hsi,new URI(locatorURL)); - } else { + } else if(locatorURL.indexOf(',')>0) { // multiple URLs is a Property Locator return new PropertyLocator(locatorURL); + } else { + return new SingleEndpointLocator(locatorURL); } // Note: Removed DME2Locator... If DME2 client is needed, use DME2Clients }