change to java 8 lambda
[holmes/rule-management.git] / rulemgt / src / main / java / org / onap / holmes / rulemgt / msb / EngineIpList.java
index 992785f..2e91993 100644 (file)
@@ -19,6 +19,7 @@ package org.onap.holmes.rulemgt.msb;
 import java.io.IOException;
 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.jvnet.hk2.annotations.Service;
 import org.onap.holmes.common.api.entity.ServiceEntity;
@@ -50,31 +51,24 @@ public class EngineIpList {
     }
 
     public List<String> getServiceCount()throws Exception{
-        String response;
-        CloseableHttpClient httpClient = null;
-        try {
-            httpClient = HttpsUtils.getHttpClient(HttpsUtils.DEFUALT_TIMEOUT);
-            HttpResponse httpResponse = HttpsUtils
-                    .get(url, new HashMap<>(), httpClient);
-            response = HttpsUtils.extractResponseEntity(httpResponse);
-        } catch (Exception e) {
-            throw e;
-        } finally {
-            if (httpClient != null) {
-                try {
-                    httpClient.close();
-                } catch (IOException e) {
-                    log.warn("Failed to close http client!");
-                }
-            }
-        }
-        ServiceEntity service = GsonUtil.jsonToBean(response, ServiceEntity.class);
-        List<ServiceNode4Query> nodesList = service.getNodes();
-        List<String> ipList = new ArrayList<>();
-        for(ServiceNode4Query node : nodesList){
-            ipList.add(node.getIp());
-        }
-        return ipList;
+               String response;
+               HttpGet httpGet = new HttpGet(url);
+               try (CloseableHttpClient httpClient = HttpsUtils.getHttpClient(HttpsUtils.DEFUALT_TIMEOUT)) {
+                       HttpResponse httpResponse = HttpsUtils.get(httpGet, new HashMap<>(), httpClient);
+                       response = HttpsUtils.extractResponseEntity(httpResponse);
+               } catch (Exception e) {
+                       throw e;
+               } finally {
+                       httpGet.releaseConnection();
+
+               }
+               ServiceEntity service = GsonUtil.jsonToBean(response, ServiceEntity.class);
+               List<ServiceNode4Query> nodesList = service.getNodes();
+               List<String> ipList = new ArrayList<>();
+               for (ServiceNode4Query node : nodesList) {
+                       ipList.add(node.getIp());
+               }
+               return ipList;
 
     }