fix https timeout get connection 69/42969/1
authorShiwei Tian <tian.shiwei@zte.com.cn>
Mon, 16 Apr 2018 08:59:14 +0000 (16:59 +0800)
committerShiwei Tian <tian.shiwei@zte.com.cn>
Mon, 16 Apr 2018 08:59:14 +0000 (16:59 +0800)
Issue-ID: HOLMES-104

Change-Id: If76dcc6be77f698820fe4c7b9ae4f1d28f75e4c2
Signed-off-by: Shiwei Tian <tian.shiwei@zte.com.cn>
dmaap-dsa/src/main/java/org/onap/holmes/dsa/dmaappolling/Subscriber.java
dmaap-dsa/src/test/java/org/onap/holmes/dsa/dmaappolling/SubscriberTest.java
pom.xml

index d696dee..16ddc15 100644 (file)
@@ -26,6 +26,7 @@ import lombok.Getter;
 import lombok.Setter;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.http.HttpResponse;
+import org.apache.http.client.methods.HttpGet;
 import org.apache.http.impl.client.CloseableHttpClient;
 import org.onap.holmes.common.api.stat.VesAlarm;
 import org.onap.holmes.common.dropwizard.ioc.utils.ServiceLocatorHolder;
@@ -84,14 +85,16 @@ public class Subscriber {
     private List<String> getDMaaPData() throws Exception {
         String response;
         CloseableHttpClient closeableHttpClient = null;
+        HttpGet httpGet = new HttpGet(url + "/" + consumerGroup + "/" + consumer);
         try {
             closeableHttpClient = HttpsUtils.getHttpClient(timeout);
             HttpResponse httpResponse = HttpsUtils
-                    .get(url + "/" + consumerGroup + "/" + consumer, new HashMap<>(), closeableHttpClient);
+                    .get(httpGet, new HashMap<>(), closeableHttpClient);
             response = HttpsUtils.extractResponseEntity(httpResponse);
         } catch (Exception e) {
             throw e;
         } finally {
+            httpGet.releaseConnection();
             if (closeableHttpClient != null) {
                 try {
                     closeableHttpClient.close();
index 04a42cd..97932f0 100644 (file)
@@ -17,6 +17,7 @@ package org.onap.holmes.dsa.dmaappolling;
 
 import java.util.HashMap;
 import org.apache.http.HttpResponse;
+import org.apache.http.client.methods.HttpGet;
 import org.apache.http.impl.client.CloseableHttpClient;
 import org.glassfish.hk2.api.ServiceLocator;
 import org.junit.Before;
@@ -36,6 +37,7 @@ import org.powermock.modules.junit4.PowerMockRunner;
 import java.util.ArrayList;
 import java.util.List;
 
+import static org.easymock.EasyMock.anyObject;
 import static org.hamcrest.CoreMatchers.equalTo;
 import static org.hamcrest.CoreMatchers.is;
 import static org.hamcrest.CoreMatchers.nullValue;
@@ -117,23 +119,22 @@ public class SubscriberTest {
                 "\"specificProblem\": \"specificProblem\"," +
                 "\"vfStatus\": \"vfStatus\"" +
                 "}}}";
-
+        Subscriber subscriber = new Subscriber();
+        subscriber.setUrl("https://www.onap.org");
+        subscriber.setConsumerGroup("group");
+        subscriber.setConsumer("consumer");
         List<String> responseList = new ArrayList<>();
         responseList.add(eventString);
         String responseJson = GsonUtil.beanToJson(responseList);
 
         PowerMockito.mockStatic(HttpsUtils.class);
         HttpResponse httpResponse = PowerMockito.mock(HttpResponse.class);
-        PowerMockito.when(HttpsUtils.get(Matchers.eq("https://www.onap.org/group/consumer"),
+        PowerMockito.when(HttpsUtils.get(Matchers.any(HttpGet.class),
                 Matchers.any(HashMap.class), Matchers.any(CloseableHttpClient.class))).thenReturn(httpResponse);
         PowerMockito.when(HttpsUtils.extractResponseEntity(httpResponse)).thenReturn(responseJson);
 
         PowerMock.replayAll();
 
-        Subscriber subscriber = new Subscriber();
-        subscriber.setUrl("https://www.onap.org");
-        subscriber.setConsumerGroup("group");
-        subscriber.setConsumer("consumer");
         List<VesAlarm> vesAlarms = subscriber.subscribe();
         PowerMock.verifyAll();
 
diff --git a/pom.xml b/pom.xml
index 65e4e3b..55257d1 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -70,7 +70,7 @@
             <dependency>\r
                 <groupId>org.onap.msb.java-sdk</groupId>\r
                 <artifactId>msb-java-sdk</artifactId>\r
-                <version>1.1.1-SNAPSHOT</version>\r
+                <version>1.1.1</version>\r
             </dependency>\r
             <dependency>\r
                 <groupId>org.easymock</groupId>\r