From cee64537a7e4b8579996a4e3e1b0f98b7fe646cb Mon Sep 17 00:00:00 2001 From: Sean Hassan Date: Tue, 29 Sep 2020 13:14:27 -0500 Subject: Correct ClassCastException on locator object Issue-ID: AAF-1204 Change-Id: I03dbe7cf109ac8a0ff3a5b02338043ab5ced6323 Signed-off-by: Sean Hassan --- .../src/main/java/org/onap/aaf/cadi/aaf/v2_0/AAFAuthn.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/cadi/aaf/src/main/java/org/onap/aaf/cadi/aaf/v2_0/AAFAuthn.java b/cadi/aaf/src/main/java/org/onap/aaf/cadi/aaf/v2_0/AAFAuthn.java index f74306fb..d1a3b19b 100644 --- a/cadi/aaf/src/main/java/org/onap/aaf/cadi/aaf/v2_0/AAFAuthn.java +++ b/cadi/aaf/src/main/java/org/onap/aaf/cadi/aaf/v2_0/AAFAuthn.java @@ -34,6 +34,7 @@ import org.onap.aaf.cadi.User; import org.onap.aaf.cadi.aaf.AAFPermission; import org.onap.aaf.cadi.client.Future; import org.onap.aaf.cadi.client.Rcli; +import org.onap.aaf.cadi.locator.SingleEndpointLocator; import org.onap.aaf.cadi.lur.ConfigPrincipal; import aaf.v2_0.CredRequest; @@ -143,10 +144,14 @@ public class AAFAuthn extends AbsUserCache { public Resp revalidate(Object state) { int maxRetries = 15; - try { // these SHOULD be AAFConHttp and AAFLocator objects, but put in a try anyway to be safe + try { // these SHOULD be an AAFConHttp and a AAFLocator or SingleEndpointLocator objects, but put in a try to be safe AAFConHttp forceCastCon = (AAFConHttp) con; - AAFLocator forceCastLoc = (AAFLocator) forceCastCon.hman().loc; - maxRetries = forceCastLoc.maxIters(); + if (forceCastCon.hman().loc instanceof SingleEndpointLocator) { + maxRetries = 1; // we cannot retry the single LGW gateway! + } else { + AAFLocator forceCastLoc = (AAFLocator) forceCastCon.hman().loc; + maxRetries = forceCastLoc.maxIters(); + } } catch (Exception e) { access.log(Access.Level.DEBUG, e); } -- cgit 1.2.3-korg