1 package org.onap.pnfsimulator.simulator.client;
3 import java.io.IOException;
4 import java.io.UnsupportedEncodingException;
5 import org.apache.http.HttpResponse;
6 import org.apache.http.client.HttpClient;
7 import org.apache.http.client.config.RequestConfig;
8 import org.apache.http.client.methods.HttpPost;
9 import org.apache.http.entity.StringEntity;
10 import org.apache.http.impl.client.HttpClientBuilder;
11 import org.apache.logging.log4j.LogManager;
12 import org.apache.logging.log4j.Logger;
14 public class HttpClientProvider {
16 private static final Logger logger = LogManager.getLogger(HttpClientProvider.class);
17 private static final String CONTENT_TYPE = "Content-Type";
18 private static final String APPLICATION_JSON = "application/json";
20 private HttpClient client;
23 public HttpClientProvider(String url) {
25 RequestConfig config = RequestConfig.custom()
26 .setConnectTimeout(1000)
27 .setConnectionRequestTimeout(1000)
28 .setSocketTimeout(1000)
31 this.client = HttpClientBuilder
33 .setDefaultRequestConfig(config)
39 public void sendMsg(String content) {
41 HttpPost request = createRequest(content);
42 HttpResponse response = client.execute(request);
43 logger.info("MESSAGE SENT, VES RESPONSE CODE: {}", response.getStatusLine());
44 } catch (IOException e) {
45 logger.info("ERROR SENDING MESSAGE TO VES: {}", e.getMessage());
49 private HttpPost createRequest(String content) throws UnsupportedEncodingException {
50 StringEntity stringEntity = new StringEntity(content);
51 HttpPost request = new HttpPost(url);
52 request.addHeader(CONTENT_TYPE, APPLICATION_JSON);
53 request.setEntity(stringEntity);