X-Git-Url: https://gerrit.onap.org/r/gitweb?p=holmes%2Fcommon.git;a=blobdiff_plain;f=holmes-actions%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fholmes%2Fcommon%2Fdmaap%2FPublisher.java;h=ad5109b775d8151b5d42b7d2d0ed89f96420b503;hp=7201f36e857ba1e0fba15f49a53b02badf2964c6;hb=bf20ddf00200c5468da7a0090caf28beebb93e9c;hpb=e37f1a4ce3da909a945e2faf7d3166a3b1a96a93 diff --git a/holmes-actions/src/main/java/org/onap/holmes/common/dmaap/Publisher.java b/holmes-actions/src/main/java/org/onap/holmes/common/dmaap/Publisher.java index 7201f36..ad5109b 100644 --- a/holmes-actions/src/main/java/org/onap/holmes/common/dmaap/Publisher.java +++ b/holmes-actions/src/main/java/org/onap/holmes/common/dmaap/Publisher.java @@ -15,19 +15,18 @@ */ package org.onap.holmes.common.dmaap; +import org.onap.holmes.common.dmaap.entity.PolicyMsg; +import org.onap.holmes.common.exception.CorrelationException; import com.alibaba.fastjson.JSON; -import javax.ws.rs.client.Client; -import javax.ws.rs.client.ClientBuilder; -import javax.ws.rs.client.Entity; -import javax.ws.rs.client.WebTarget; +import java.util.HashMap; import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; import lombok.Getter; import lombok.Setter; +import org.apache.http.HttpResponse; import org.apache.http.HttpStatus; +import org.apache.http.entity.StringEntity; import org.jvnet.hk2.annotations.Service; -import org.onap.holmes.common.dmaap.entity.PolicyMsg; -import org.onap.holmes.common.exception.CorrelationException; +import org.onap.holmes.common.utils.HttpsUtils; @Getter @Setter @@ -40,20 +39,26 @@ public class Publisher { private String authExpDate; public boolean publish(PolicyMsg msg) throws CorrelationException { - Client client = ClientBuilder.newClient(); - String content = JSON.toJSONString(msg); - WebTarget webTarget = client.target(url); - Response response = null; + String content; + try { + content = JSON.toJSONString(msg); + } catch (Exception e) { + throw new CorrelationException("Failed to convert the message object to a json string.", + e); + } + HttpResponse httpResponse; + HashMap headers = new HashMap<>(); + headers.put("Accept", MediaType.APPLICATION_JSON); + headers.put("Content-Type", MediaType.APPLICATION_JSON); try { - response = webTarget.request(MediaType.APPLICATION_JSON) - .post(Entity.entity(content, MediaType.APPLICATION_JSON)); + httpResponse = HttpsUtils.post(url, headers, new HashMap<>(), new StringEntity(content, "utf-8")); } catch (Exception e) { throw new CorrelationException("Failed to connect to DCAE.", e); } - return checkStatus(response); + return checkStatus(httpResponse); } - private boolean checkStatus(Response response) { - return response.getStatus() == HttpStatus.SC_OK; + private boolean checkStatus(HttpResponse httpResponse) { + return (httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK) ? true : false; } }