diff options
author | Shiwei Tian <tian.shiwei@zte.com.cn> | 2018-04-16 17:01:34 +0800 |
---|---|---|
committer | Shiwei Tian <tian.shiwei@zte.com.cn> | 2018-04-16 17:01:34 +0800 |
commit | 57d0392cd069569f8797fded20a6406f5e6f156f (patch) | |
tree | a835a1eb1224cc3d1caaeaa7d023973be648a859 /rulemgt/src | |
parent | 37b3bb9b015069ba5e9ad1845de30467decb61d4 (diff) |
fix https timeout get connection
Issue-ID: HOLMES-104
Change-Id: Ib235d4df9a221bbf2d2f0322aac73f9ca894bfbe
Signed-off-by: Shiwei Tian <tian.shiwei@zte.com.cn>
Diffstat (limited to 'rulemgt/src')
3 files changed, 27 insertions, 7 deletions
diff --git a/rulemgt/src/main/java/org/onap/holmes/rulemgt/bolt/enginebolt/EngineService.java b/rulemgt/src/main/java/org/onap/holmes/rulemgt/bolt/enginebolt/EngineService.java index aa0bf32..15af38d 100644 --- a/rulemgt/src/main/java/org/onap/holmes/rulemgt/bolt/enginebolt/EngineService.java +++ b/rulemgt/src/main/java/org/onap/holmes/rulemgt/bolt/enginebolt/EngineService.java @@ -20,6 +20,9 @@ import java.util.HashMap; import javax.ws.rs.core.MediaType;
import lombok.extern.slf4j.Slf4j;
import org.apache.http.HttpResponse;
+import org.apache.http.client.methods.HttpDelete;
+import org.apache.http.client.methods.HttpPost;
+import org.apache.http.client.methods.HttpPut;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.jvnet.hk2.annotations.Service;
@@ -41,10 +44,12 @@ public class EngineService { HashMap headers = createHeaders();
String url = PREFIX + ip + PORT + RuleMgtConstant.ENGINE_PATH + "/" + packageName;
CloseableHttpClient httpClient = null;
+ HttpDelete httpDelete = new HttpDelete(url);
try {
httpClient = HttpsUtils.getHttpClient(HttpsUtils.DEFUALT_TIMEOUT);
- return HttpsUtils.delete(url, headers, httpClient);
+ return HttpsUtils.delete(httpDelete, headers, httpClient);
} finally {
+ httpDelete.releaseConnection();
closeHttpClient(httpClient);
}
}
@@ -55,10 +60,12 @@ public class EngineService { HashMap headers = createHeaders();
String url = PREFIX + ip + PORT + RuleMgtConstant.ENGINE_PATH;
CloseableHttpClient httpClient = null;
+ HttpPost httpPost = new HttpPost(url);
try {
httpClient = HttpsUtils.getHttpClient(HttpsUtils.DEFUALT_TIMEOUT);
- return HttpsUtils.post(url, headers, new HashMap<>(), new StringEntity(content), httpClient);
+ return HttpsUtils.post(httpPost, headers, new HashMap<>(), new StringEntity(content), httpClient);
} finally {
+ httpPost.releaseConnection();
closeHttpClient(httpClient);
}
}
@@ -68,9 +75,10 @@ public class EngineService { HashMap headers = createHeaders();
String url = PREFIX + ip + PORT + RuleMgtConstant.ENGINE_PATH;
CloseableHttpClient httpClient = null;
+ HttpPut httpPut = new HttpPut(url);
try {
httpClient = HttpsUtils.getHttpClient(HttpsUtils.DEFUALT_TIMEOUT);
- return HttpsUtils.put(url, headers, new HashMap<>(), new StringEntity(content),httpClient);
+ return HttpsUtils.put(httpPut, headers, new HashMap<>(), new StringEntity(content),httpClient);
} finally {
closeHttpClient(httpClient);
}
diff --git a/rulemgt/src/main/java/org/onap/holmes/rulemgt/dcae/DcaeConfigurationPolling.java b/rulemgt/src/main/java/org/onap/holmes/rulemgt/dcae/DcaeConfigurationPolling.java index d1b2aba..2d63bb6 100644 --- a/rulemgt/src/main/java/org/onap/holmes/rulemgt/dcae/DcaeConfigurationPolling.java +++ b/rulemgt/src/main/java/org/onap/holmes/rulemgt/dcae/DcaeConfigurationPolling.java @@ -29,6 +29,9 @@ import java.util.List; import javax.ws.rs.core.MediaType; import lombok.extern.slf4j.Slf4j; import org.apache.http.HttpResponse; +import org.apache.http.client.methods.HttpDelete; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.client.methods.HttpPut; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.CloseableHttpClient; import org.onap.holmes.common.dcae.DcaeConfigurationQuery; @@ -104,12 +107,14 @@ public class DcaeConfigurationPolling implements Runnable { HashMap<String, String> headers = new HashMap<>(); headers.put("Content-Type", MediaType.APPLICATION_JSON); CloseableHttpClient httpClient = null; + HttpGet httpGet = new HttpGet(url); try { httpClient = HttpsUtils.getHttpClient(HttpsUtils.DEFUALT_TIMEOUT); - HttpResponse httpResponse = HttpsUtils.get(url, headers, httpClient); + HttpResponse httpResponse = HttpsUtils.get(httpGet, headers, httpClient); String response = HttpsUtils.extractResponseEntity(httpResponse); return JSON.parseObject(response,RuleQueryListResponse.class); } finally { + httpGet.releaseConnection(); closeHttpClient(httpClient); } } @@ -129,15 +134,17 @@ public class DcaeConfigurationPolling implements Runnable { headers.put("Accept", MediaType.APPLICATION_JSON); HttpResponse httpResponse; CloseableHttpClient httpClient = null; + HttpPut httpPut = new HttpPut(url); try { httpClient = HttpsUtils.getHttpClient(HttpsUtils.DEFUALT_TIMEOUT); httpResponse = HttpsUtils - .put(url, headers, new HashMap<>(), new StringEntity(content), httpClient); + .put(httpPut, headers, new HashMap<>(), new StringEntity(content), httpClient); } catch (UnsupportedEncodingException e) { throw new CorrelationException("Failed to create https entity.", e); } catch (Exception e) { throw new CorrelationException(e.getMessage()); } finally { + httpPut.releaseConnection(); closeHttpClient(httpClient); } if (httpResponse != null) { @@ -155,13 +162,15 @@ public class DcaeConfigurationPolling implements Runnable { HashMap<String, String> headers = new HashMap<>(); headers.put("Content-Type", MediaType.APPLICATION_JSON); CloseableHttpClient httpClient = null; + HttpDelete httpDelete = new HttpDelete(url + "/" + correlationRule.getRuleId()); try { httpClient = HttpsUtils.getHttpClient(HttpsUtils.DEFUALT_TIMEOUT); - HttpsUtils.delete(url + "/" + correlationRule.getRuleId(), headers, httpClient); + HttpsUtils.delete(httpDelete, headers, httpClient); } catch (Exception e) { log.warn("Failed to delete rule, the rule id is : " + correlationRule.getRuleId() + " exception messge is : " + e.getMessage(), e); } finally { + httpDelete.releaseConnection(); closeHttpClient(httpClient); } }); diff --git a/rulemgt/src/main/java/org/onap/holmes/rulemgt/msb/EngineIpList.java b/rulemgt/src/main/java/org/onap/holmes/rulemgt/msb/EngineIpList.java index 992785f..9b30705 100644 --- a/rulemgt/src/main/java/org/onap/holmes/rulemgt/msb/EngineIpList.java +++ b/rulemgt/src/main/java/org/onap/holmes/rulemgt/msb/EngineIpList.java @@ -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; @@ -52,14 +53,16 @@ public class EngineIpList { public List<String> getServiceCount()throws Exception{ String response; CloseableHttpClient httpClient = null; + HttpGet httpGet = new HttpGet(url); try { httpClient = HttpsUtils.getHttpClient(HttpsUtils.DEFUALT_TIMEOUT); HttpResponse httpResponse = HttpsUtils - .get(url, new HashMap<>(), httpClient); + .get(httpGet, new HashMap<>(), httpClient); response = HttpsUtils.extractResponseEntity(httpResponse); } catch (Exception e) { throw e; } finally { + httpGet.releaseConnection(); if (httpClient != null) { try { httpClient.close(); |