From b8b0464aa8a05a345115264084b08229f35c8413 Mon Sep 17 00:00:00 2001 From: "Benjamin, Max (mb388a)" Date: Sat, 23 Jan 2021 16:07:59 -0500 Subject: set connection timeout as well as read timeout set connection timeout as well as read timeout correct dependency version in openstack pom limit timeout test to a single retry add connection timeout property for A&AI client Issue-ID: SO-3491 Signed-off-by: Benjamin, Max (mb388a) Change-Id: I576c143822ba45fc79648fd0a1edb6ccd3aff8b2 --- .../onap/so/adapters/openstack/AaiClientPropertiesImpl.java | 9 ++++++++- .../onap/so/asdc/tenantIsolation/AaiClientPropertiesImpl.java | 9 ++++++++- .../org/onap/so/client/restproperties/AAIPropertiesImpl.java | 6 ++++++ common/src/main/java/org/onap/so/client/RestClient.java | 3 ++- common/src/main/java/org/onap/so/client/RestProperties.java | 9 +++++++++ common/src/test/java/org/onap/so/client/RestClientTest.java | 6 ++++++ .../tenantisolation/AaiClientPropertiesImpl.java | 9 ++++++++- pom.xml | 11 +++++++++++ .../ns/lcm/bpmn/flows/extclients/aai/AaiPropertiesImpl.java | 9 ++++++++- 9 files changed, 66 insertions(+), 5 deletions(-) diff --git a/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/openstack/AaiClientPropertiesImpl.java b/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/openstack/AaiClientPropertiesImpl.java index cd32cc208a..79d5824de7 100644 --- a/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/openstack/AaiClientPropertiesImpl.java +++ b/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/openstack/AaiClientPropertiesImpl.java @@ -34,6 +34,7 @@ public class AaiClientPropertiesImpl implements AAIProperties { private String auth; private String key; private Long readTimeout; + private Long connectionTimeout; private boolean enableCaching; private Long cacheMaxAge; private static final String SYSTEM_NAME = "MSO"; @@ -43,7 +44,8 @@ public class AaiClientPropertiesImpl implements AAIProperties { aaiEndpoint = context.getEnvironment().getProperty("aai.endpoint"); this.auth = context.getEnvironment().getProperty("aai.auth"); this.key = context.getEnvironment().getProperty("mso.msoKey"); - this.readTimeout = context.getEnvironment().getProperty("aai.readTimeout", Long.class, new Long(60000)); + this.readTimeout = context.getEnvironment().getProperty("aai.readTimeout", Long.class, 60000L); + this.connectionTimeout = context.getEnvironment().getProperty("aai.connectionTimeout", Long.class, 60000L); this.enableCaching = context.getEnvironment().getProperty("aai.caching.enabled", Boolean.class, false); this.cacheMaxAge = context.getEnvironment().getProperty("aai.caching.maxAge", Long.class, 60000L); } @@ -78,6 +80,11 @@ public class AaiClientPropertiesImpl implements AAIProperties { return this.readTimeout; } + @Override + public Long getConnectionTimeout() { + return this.connectionTimeout; + } + @Override public boolean isCachingEnabled() { return this.enableCaching; diff --git a/asdc-controller/src/main/java/org/onap/so/asdc/tenantIsolation/AaiClientPropertiesImpl.java b/asdc-controller/src/main/java/org/onap/so/asdc/tenantIsolation/AaiClientPropertiesImpl.java index ace0ff1f57..46bdfe0b93 100644 --- a/asdc-controller/src/main/java/org/onap/so/asdc/tenantIsolation/AaiClientPropertiesImpl.java +++ b/asdc-controller/src/main/java/org/onap/so/asdc/tenantIsolation/AaiClientPropertiesImpl.java @@ -34,6 +34,7 @@ public class AaiClientPropertiesImpl implements AAIProperties { private String auth; private String key; private Long readTimeout; + private Long connectionTimeout; private boolean enableCaching; private Long cacheMaxAge; private static final String SYSTEM_NAME = "MSO"; @@ -43,7 +44,8 @@ public class AaiClientPropertiesImpl implements AAIProperties { aaiEndpoint = context.getEnvironment().getProperty("mso.aai.endpoint"); this.auth = context.getEnvironment().getProperty("aai.auth"); this.key = context.getEnvironment().getProperty("mso.msoKey"); - this.readTimeout = context.getEnvironment().getProperty("aai.readTimeout", Long.class, new Long(60000)); + this.readTimeout = context.getEnvironment().getProperty("aai.readTimeout", Long.class, 60000L); + this.connectionTimeout = context.getEnvironment().getProperty("aai.connectionTimeout", Long.class, 60000L); this.enableCaching = context.getEnvironment().getProperty("aai.caching.enabled", Boolean.class, false); this.cacheMaxAge = context.getEnvironment().getProperty("aai.caching.maxAge", Long.class, 60000L); } @@ -80,6 +82,11 @@ public class AaiClientPropertiesImpl implements AAIProperties { return this.readTimeout; } + @Override + public Long getConnectionTimeout() { + return this.connectionTimeout; + } + @Override public boolean isCachingEnabled() { return this.enableCaching; diff --git a/bpmn/MSOCommonBPMN/src/main/java/org/onap/so/client/restproperties/AAIPropertiesImpl.java b/bpmn/MSOCommonBPMN/src/main/java/org/onap/so/client/restproperties/AAIPropertiesImpl.java index 98a14fc0e5..b6227aae16 100644 --- a/bpmn/MSOCommonBPMN/src/main/java/org/onap/so/client/restproperties/AAIPropertiesImpl.java +++ b/bpmn/MSOCommonBPMN/src/main/java/org/onap/so/client/restproperties/AAIPropertiesImpl.java @@ -35,6 +35,7 @@ public class AAIPropertiesImpl implements AAIProperties { public static final String AAI_AUTH = "aai.auth"; public static final String AAI_ENDPOINT = "aai.endpoint"; public static final String AAI_READ_TIMEOUT = "aai.readTimeout"; + public static final String AAI_CONNECTION_TIMEOUT = "aai.connectionTimeout"; public static final String AAI_ENABLE_CACHING = "aai.caching.enable"; public static final String AAI_CACHE_MAX_AGE = "aai.caching.maxAge"; @@ -70,6 +71,11 @@ public class AAIPropertiesImpl implements AAIProperties { return Long.valueOf(reader.getVariable(AAI_READ_TIMEOUT, "60000")); } + @Override + public Long getConnectionTimeout() { + return Long.valueOf(reader.getVariable(AAI_CONNECTION_TIMEOUT, "60000")); + } + @Override public boolean isCachingEnabled() { return Boolean.parseBoolean(reader.getVariable(AAI_ENABLE_CACHING, "false")); diff --git a/common/src/main/java/org/onap/so/client/RestClient.java b/common/src/main/java/org/onap/so/client/RestClient.java index be0a0f3f9e..f201c7c906 100644 --- a/common/src/main/java/org/onap/so/client/RestClient.java +++ b/common/src/main/java/org/onap/so/client/RestClient.java @@ -193,7 +193,8 @@ public abstract class RestClient { if (props.isCachingEnabled()) { enableCaching(builder); } - return builder.readTimeout(props.getReadTimeout(), TimeUnit.MILLISECONDS); + return builder.connectTimeout(props.getConnectionTimeout(), TimeUnit.MILLISECONDS) + .readTimeout(props.getReadTimeout(), TimeUnit.MILLISECONDS); } protected ClientBuilder enableCaching(ClientBuilder builder) { diff --git a/common/src/main/java/org/onap/so/client/RestProperties.java b/common/src/main/java/org/onap/so/client/RestProperties.java index a7a0ef614c..79e006bf9a 100644 --- a/common/src/main/java/org/onap/so/client/RestProperties.java +++ b/common/src/main/java/org/onap/so/client/RestProperties.java @@ -50,6 +50,15 @@ public interface RestProperties { return Long.valueOf(60000); } + /** + * Time in milliseconds + * + * @return + */ + public default Long getConnectionTimeout() { + return Long.valueOf(60000); + } + public default boolean isCachingEnabled() { return false; } diff --git a/common/src/test/java/org/onap/so/client/RestClientTest.java b/common/src/test/java/org/onap/so/client/RestClientTest.java index d40576b69f..57abf8784f 100644 --- a/common/src/test/java/org/onap/so/client/RestClientTest.java +++ b/common/src/test/java/org/onap/so/client/RestClientTest.java @@ -101,6 +101,12 @@ public class RestClientTest { RestProperties props = new RestProperties() { + + @Override + public Integer getRetries() { + return Integer.valueOf(0); + } + @Override public URL getEndpoint() throws MalformedURLException { return new URL(String.format("http://localhost:%s", wireMockRule.port())); diff --git a/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/tenantisolation/AaiClientPropertiesImpl.java b/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/tenantisolation/AaiClientPropertiesImpl.java index 1492baf1cd..e330d2116c 100644 --- a/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/tenantisolation/AaiClientPropertiesImpl.java +++ b/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/tenantisolation/AaiClientPropertiesImpl.java @@ -34,6 +34,7 @@ public class AaiClientPropertiesImpl implements AAIProperties { private String auth; private String key; private Long readTimeout; + private Long connectionTimeout; private boolean enableCaching; private Long cacheMaxAge; @@ -43,7 +44,8 @@ public class AaiClientPropertiesImpl implements AAIProperties { aaiEndpoint = context.getEnvironment().getProperty("mso.aai.endpoint"); this.auth = context.getEnvironment().getProperty("aai.auth"); this.key = context.getEnvironment().getProperty("mso.msoKey"); - this.readTimeout = context.getEnvironment().getProperty("aai.readTimeout", Long.class, new Long(60000)); + this.readTimeout = context.getEnvironment().getProperty("aai.readTimeout", Long.class, 60000L); + this.connectionTimeout = context.getEnvironment().getProperty("aai.connectionTimeout", Long.class, 60000L); this.enableCaching = context.getEnvironment().getProperty("aai.caching.enabled", Boolean.class, false); this.cacheMaxAge = context.getEnvironment().getProperty("aai.caching.maxAge", Long.class, 60000L); } @@ -78,6 +80,11 @@ public class AaiClientPropertiesImpl implements AAIProperties { return this.readTimeout; } + @Override + public Long getConnectionTimeout() { + return this.connectionTimeout; + } + @Override public boolean isCachingEnabled() { return this.enableCaching; diff --git a/pom.xml b/pom.xml index e9949866a0..797390aa6c 100644 --- a/pom.xml +++ b/pom.xml @@ -1029,6 +1029,17 @@ + + org.apache.cxf + cxf-rt-rs-service-description-openapi-v3 + ${cxf.version} + + + org.jboss.spec.javax.rmi + jboss-rmi-api_1.0_spec + + + org.onap.aaf.authz aaf-cadi-client diff --git a/so-etsi-nfvo/so-etsi-nfvo-ns-lcm/so-etsi-nfvo-ns-lcm-bpmn-flows/src/main/java/org/onap/so/etsi/nfvo/ns/lcm/bpmn/flows/extclients/aai/AaiPropertiesImpl.java b/so-etsi-nfvo/so-etsi-nfvo-ns-lcm/so-etsi-nfvo-ns-lcm-bpmn-flows/src/main/java/org/onap/so/etsi/nfvo/ns/lcm/bpmn/flows/extclients/aai/AaiPropertiesImpl.java index 0aa14c711f..25a43a86d0 100644 --- a/so-etsi-nfvo/so-etsi-nfvo-ns-lcm/so-etsi-nfvo-ns-lcm-bpmn-flows/src/main/java/org/onap/so/etsi/nfvo/ns/lcm/bpmn/flows/extclients/aai/AaiPropertiesImpl.java +++ b/so-etsi-nfvo/so-etsi-nfvo-ns-lcm/so-etsi-nfvo-ns-lcm-bpmn-flows/src/main/java/org/onap/so/etsi/nfvo/ns/lcm/bpmn/flows/extclients/aai/AaiPropertiesImpl.java @@ -35,6 +35,7 @@ public class AaiPropertiesImpl implements AAIProperties { private final String encryptionKey; private final String aaiVersion; private final Long readTimeout; + private final Long connectionTimeout; private final boolean enableCaching; private final Long cacheMaxAge; @@ -44,7 +45,8 @@ public class AaiPropertiesImpl implements AAIProperties { this.encryptedBasicAuth = context.getEnvironment().getProperty("aai.auth"); this.encryptionKey = context.getEnvironment().getProperty("mso.key"); this.aaiVersion = context.getEnvironment().getProperty("aai.version"); - this.readTimeout = context.getEnvironment().getProperty("aai.readTimeout", Long.class, new Long(60000)); + this.readTimeout = context.getEnvironment().getProperty("aai.readTimeout", Long.class, 60000L); + this.connectionTimeout = context.getEnvironment().getProperty("aai.connectionTimeout", Long.class, 60000L); this.enableCaching = context.getEnvironment().getProperty("aai.caching.enabled", Boolean.class, false); this.cacheMaxAge = context.getEnvironment().getProperty("aai.caching.maxAge", Long.class, 60000L); } @@ -85,6 +87,11 @@ public class AaiPropertiesImpl implements AAIProperties { return this.readTimeout; } + @Override + public Long getConnectionTimeout() { + return this.connectionTimeout; + } + @Override public boolean isCachingEnabled() { return this.enableCaching; -- cgit 1.2.3-korg