diff options
author | pwielebs <piotr.wielebski@nokia.com> | 2018-04-30 17:15:58 +0200 |
---|---|---|
committer | pwielebs <piotr.wielebski@nokia.com> | 2018-04-30 17:16:59 +0200 |
commit | b1c5d01900ea67f1ed27b4f66020912a0b29aa37 (patch) | |
tree | 1f97f4fba492e3c44cf5c20ab27271efc7a1936d /prh-dmaap-client/src/main/java/org/onap/dcaegen2/services/service/consumer/ExtendedDmaapConsumerHttpClientImpl.java | |
parent | bf6fa5deff9190c14bba2b15271e44f1e3c21ee7 (diff) |
Response handlers for DmaaP clients changed
Change-Id: I625521013aa02e6709be95ad7b3443707a549f05
Issue-ID: DCAEGEN2-451
Signed-off-by: pwielebs <piotr.wielebski@nokia.com>
Diffstat (limited to 'prh-dmaap-client/src/main/java/org/onap/dcaegen2/services/service/consumer/ExtendedDmaapConsumerHttpClientImpl.java')
-rw-r--r-- | prh-dmaap-client/src/main/java/org/onap/dcaegen2/services/service/consumer/ExtendedDmaapConsumerHttpClientImpl.java | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/prh-dmaap-client/src/main/java/org/onap/dcaegen2/services/service/consumer/ExtendedDmaapConsumerHttpClientImpl.java b/prh-dmaap-client/src/main/java/org/onap/dcaegen2/services/service/consumer/ExtendedDmaapConsumerHttpClientImpl.java index 5acf2042..0b76ccaa 100644 --- a/prh-dmaap-client/src/main/java/org/onap/dcaegen2/services/service/consumer/ExtendedDmaapConsumerHttpClientImpl.java +++ b/prh-dmaap-client/src/main/java/org/onap/dcaegen2/services/service/consumer/ExtendedDmaapConsumerHttpClientImpl.java @@ -20,13 +20,16 @@ package org.onap.dcaegen2.services.service.consumer; +import org.apache.http.HttpEntity; +import org.apache.http.client.ResponseHandler; import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpRequestBase; import org.apache.http.client.utils.URIBuilder; import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.util.EntityUtils; import org.onap.dcaegen2.services.config.DmaapConsumerConfiguration; -import org.onap.dcaegen2.services.service.CommonMethods; import org.onap.dcaegen2.services.service.DmaapHttpClientImpl; +import org.onap.dcaegen2.services.service.HttpUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -67,7 +70,7 @@ public class ExtendedDmaapConsumerHttpClientImpl { Optional<HttpRequestBase> request = createRequest(); try { - extendedDetails = closeableHttpClient.execute(request.get(), CommonMethods.dmaapResponseHandler()); + extendedDetails = closeableHttpClient.execute(request.get(), dmaapConsumerResponseHandler()); } catch (IOException | NullPointerException e) { logger.error("Exception while executing HTTP request: {}", e); } @@ -122,6 +125,24 @@ public class ExtendedDmaapConsumerHttpClientImpl { return extendedURI; } + + private ResponseHandler<Optional<String>> dmaapConsumerResponseHandler() { + return httpResponse -> { + final int responseCode = httpResponse.getStatusLine().getStatusCode(); + logger.info("Status code of operation: {}", responseCode); + final HttpEntity responseEntity = httpResponse.getEntity(); + + if (HttpUtils.isSuccessfulResponseCode(responseCode) ) { + logger.info("HTTP response successful."); + final String dmaapResponse = EntityUtils.toString(responseEntity); + return Optional.of(dmaapResponse); + } else { + String dmaapResponse = responseEntity != null ? EntityUtils.toString(responseEntity) : ""; + logger.error("HTTP response not successful : {}", dmaapResponse); + return Optional.of("" + responseCode); + } + }; + } } |