package org.onap.so.openstack.utils;
import java.net.MalformedURLException;
+import java.net.URL;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Scanner;
-import javax.ws.rs.core.UriBuilder;
import javax.ws.rs.core.UriBuilderException;
import javax.ws.rs.core.Response;
+import org.onap.so.client.HttpClientFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.onap.so.adapters.vdu.CloudInfo;
import org.onap.so.openstack.exceptions.MsoCloudSiteNotFound;
import org.onap.so.openstack.exceptions.MsoException;
import org.onap.so.openstack.exceptions.MsoOpenstackException;
-import org.onap.so.client.HttpClient;
import org.onap.so.client.RestClient;
import org.onap.so.db.catalog.beans.CloudSite;
import org.onap.so.logger.MessageEnum;
import org.onap.so.utils.TargetEntity;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.env.Environment;
-import org.springframework.http.HttpEntity;
-import org.springframework.http.HttpHeaders;
-import org.springframework.http.MediaType;
import org.springframework.stereotype.Component;
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.woorea.openstack.heat.model.CreateStackParam;
private static final Logger logger = LoggerFactory.getLogger(MsoMulticloudUtils.class);
private static final ObjectMapper JSON_MAPPER = new ObjectMapper();
+ private final HttpClientFactory httpClientFactory = new HttpClientFactory();
@Autowired
private Environment environment;
-
/******************************************************************************
*
* Methods (and associated utilities) to implement the VduPlugin interface
private RestClient getMulticloudClient(String endpoint) {
RestClient client = null;
try {
- client = new HttpClient(UriBuilder.fromUri(endpoint).build().toURL(),
- MediaType.APPLICATION_JSON.toString(), TargetEntity.MULTICLOUD);
+ client = httpClientFactory.newJsonClient(
+ new URL(endpoint),
+ TargetEntity.MULTICLOUD);
} catch (MalformedURLException e) {
logger.debug(String.format("Encountered malformed URL error getting multicloud rest client %s", e.getMessage()));
} catch (IllegalArgumentException e) {
*/
package org.onap.so.bpmn.common.scripts
+
+import org.onap.so.client.HttpClientFactory
+
import java.util.regex.Matcher
import java.util.regex.Pattern
String regionId = ""
try{
URL Url = new URL(url)
- HttpClient client = new HttpClient(Url, MediaType.APPLICATION_XML, TargetEntity.AAI)
+ HttpClient client = new HttpClientFactory().newXmlClient(Url, TargetEntity.AAI)
client.addBasicAuthHeader(UrnPropertiesReader.getVariable("aai.auth", execution), UrnPropertiesReader.getVariable("mso.msoKey", execution))
client.addAdditionalHeader("X-FromAppId", "MSO")
client.addAdditionalHeader("X-TransactionId", utils.getRequestID())
String catalogDbEndpoint = UrnPropertiesReader.getVariable("mso.catalog.db.endpoint",execution)
String queryEndpoint = catalogDbEndpoint + "/" + defaultDbAdapterVersion + endPoint
def responseData = ''
- HttpClient client = httpClientFactory.create(new URL(queryEndpoint), MediaType.APPLICATION_JSON, TargetEntity.CATALOG_DB)
+ HttpClient client = httpClientFactory.newJsonClient(new URL(queryEndpoint), TargetEntity.CATALOG_DB)
client.addAdditionalHeader(ONAPLogConstants.Headers.REQUEST_ID, UUID.randomUUID().toString())
client.addAdditionalHeader('X-FromAppId', "BPMN")
client.addAdditionalHeader('Accept', MediaType.APPLICATION_JSON)
msoLogger.debug( "Generated uuid is: " + uuid)
msoLogger.debug( "URL to be used is: " + url)
- HttpClient client = httpClientFactory.create(new URL(url), MediaType.APPLICATION_JSON, TargetEntity.EXTERNAL)
+ HttpClient client = httpClientFactory.newJsonClient(new URL(url), TargetEntity.EXTERNAL)
client.addBasicAuthHeader(execution.getVariable("URN_externalapi_auth"), execution.getVariable("URN_mso_msoKey"))
client.addAdditionalHeader("X-FromAppId", "MSO")
client.addAdditionalHeader(ONAPLogConstants.Headers.REQUEST_ID, uuid)
msoLogger.debug( "Generated uuid is: " + uuid)
msoLogger.debug( "URL to be used is: " + url)
- HttpClient httpClient = httpClientFactory.create(new URL(url), MediaType.APPLICATION_JSON, TargetEntity.AAI)
+ HttpClient httpClient = httpClientFactory.newJsonClient(new URL(url), TargetEntity.AAI)
httpClient.addBasicAuthHeader(execution.getVariable("URN_externalapi_auth"), execution.getVariable("URN_mso_msoKey"))
httpClient.addAdditionalHeader("X-FromAppId", "MSO")
httpClient.addAdditionalHeader("X-TransactionId", uuid)
package org.onap.so.bpmn.common.scripts
import org.onap.so.bpmn.core.UrnPropertiesReader
+import org.onap.so.client.HttpClientFactory
import java.io.Serializable;
msoLogger.debug("AAI endPoint: " + endPoint)
try {
- HttpClient client = new HttpClient(new URL(endPoint), MediaType.APPLICATION_XML, TargetEntity.AAI)
+ HttpClient client = new HttpClientFactory().newXmlClient(new URL(endPoint), TargetEntity.AAI)
+
client.addAdditionalHeader('X-TransactionId', UUID.randomUUID().toString())
client.addAdditionalHeader('X-FromAppId', 'MSO')
client.addAdditionalHeader('Content-Type', 'application/xml')
import org.onap.so.bpmn.core.domain.VnfResource
import org.onap.so.bpmn.core.json.JsonUtils
import org.onap.so.client.HttpClient
+import org.onap.so.client.HttpClientFactory
import org.onap.so.logger.MsoLogger
import org.onap.so.db.catalog.beans.CloudIdentity
import org.onap.so.db.catalog.beans.CloudSite
URL url = new URL(urlString);
- HttpClient httpClient = new HttpClient(url, "application/json", TargetEntity.SNIRO)
- httpClient.addAdditionalHeader("Authorization", authHeader)
+ HttpClient httpClient = new HttpClientFactory().newJsonClient(url, TargetEntity.SNIRO)
+ httpClient.addAdditionalHeader("Authorization", authHeader)
Response httpResponse = httpClient.post(oofRequest)
int responseCode = httpResponse.getStatus()
import org.onap.so.bpmn.core.domain.VnfResource
import org.onap.so.bpmn.core.json.JsonUtils
import org.onap.so.client.HttpClient
+import org.onap.so.client.HttpClientFactory
import org.onap.so.db.catalog.beans.CloudSite
import org.onap.so.utils.TargetEntity
import org.springframework.http.HttpEntity
String auth = UrnPropertiesReader.getVariable("mso.db.auth", execution)
String uri = "/cloudSite"
- URL url = new URL(endpoint + uri)
- HttpClient client = new HttpClient(url, MediaType.APPLICATION_JSON, TargetEntity.EXTERNAL)
- client.addAdditionalHeader(HttpHeaders.AUTHORIZATION, auth)
- client.addAdditionalHeader(HttpHeaders.ACCEPT, MediaType.APPLICATION_JSON)
+ URL url = new URL(endpoint + uri)
+ HttpClient client = new HttpClientFactory().newJsonClient(url, TargetEntity.EXTERNAL)
+ client.addAdditionalHeader(HttpHeaders.AUTHORIZATION, auth)
+ client.addAdditionalHeader(HttpHeaders.ACCEPT, MediaType.APPLICATION_JSON)
Response response = client.post(request.getBody().toString())
package org.onap.so.bpmn.common.scripts
+import org.onap.so.client.HttpClientFactory
+
import java.text.SimpleDateFormat
import javax.ws.rs.core.Response
import java.net.URLEncoder
URL url = new URL(sdncAdapterUrl);
- HttpClient httpClient = new HttpClient(url, "application/json", TargetEntity.SDNC_ADAPTER)
+ HttpClient httpClient = new HttpClientFactory().newJsonClient(url, TargetEntity.SDNC_ADAPTER)
httpClient.addAdditionalHeader("X-ONAP-RequestID", execution.getVariable("mso-request-id"))
httpClient.addAdditionalHeader("X-ONAP-InvocationID", UUID.randomUUID().toString())
httpClient.addAdditionalHeader("X-ONAP-PartnerName", "SO-SDNCAdapter")
import org.onap.so.bpmn.core.domain.VnfResource
import org.onap.so.bpmn.core.json.JsonUtils
import org.onap.so.client.HttpClient
+import org.onap.so.client.HttpClientFactory
import org.onap.so.utils.TargetEntity
import org.onap.so.bpmn.common.scripts.AbstractServiceTaskProcessor
msoLogger.debug("Sniro Url is: " + urlString)
URL url = new URL(urlString);
- HttpClient httpClient = new HttpClient(url, "application/json", TargetEntity.SNIRO)
+ HttpClient httpClient = new HttpClientFactory().newJsonClient(url, TargetEntity.SNIRO)
httpClient.addAdditionalHeader("Authorization", authHeader)
Response httpResponse = httpClient.post(sniroRequest)
package org.onap.so.bpmn.common.scripts
+import org.onap.so.client.HttpClientFactory
+
import javax.ws.rs.core.Response
import org.apache.commons.lang3.*
import org.camunda.bpm.engine.delegate.BpmnError
URL url = new URL(vnfAdapterUrl);
- HttpClient httpClient = new HttpClient(url, "application/xml", TargetEntity.VNF_ADAPTER)
+ HttpClient httpClient = new HttpClientFactory().newXmlClient(url, TargetEntity.VNF_ADAPTER)
httpClient.addAdditionalHeader("Authorization", execution.getVariable(prefix + "basicAuthHeaderValue"))
httpClient.addAdditionalHeader("X-ONAP-RequestID", execution.getVariable("mso-request-id"))
import org.onap.so.bpmn.core.UrnPropertiesReader;
import org.onap.so.bpmn.core.json.JsonUtils;
import org.onap.so.client.HttpClient;
-import org.onap.so.logger.MessageEnum;
+import org.onap.so.client.HttpClientFactory;
import org.onap.so.logger.MsoLogger;
import org.onap.so.utils.TargetEntity;
private static String getCsarFromUuid(String uuid) throws Exception {
String catalogEndPoint = UrnPropertiesReader.getVariable("mso.catalog.db.endpoint");
- HttpClient client = new HttpClient(UriBuilder.fromUri(catalogEndPoint).path(SERVICE_URL_TOSCA_CSAR).queryParam("serviceModelUuid", uuid).build().toURL(), "application/json", TargetEntity.CATALOG_DB);
+ HttpClient client = new HttpClientFactory().newJsonClient(
+ UriBuilder.fromUri(catalogEndPoint).path(SERVICE_URL_TOSCA_CSAR).queryParam("serviceModelUuid", uuid).build().toURL(),
+ TargetEntity.CATALOG_DB);
client.addAdditionalHeader("Accept", "application/json");
// client.addBasicAuthHeader (UrnPropertiesReader.getVariable("mso.adapters.db.auth"), UrnPropertiesReader.getVariable("mso.msoKey"));
private void mockGetResponseFromCatalogDb(String queryEndpoint) {
Environment environmentMock = createEnvironmentMock()
when(environmentMock.getProperty("mso.catalog.db.endpoint")).thenReturn("http://testUrl")
- when(httpClientFactoryMock.create(new URL(queryEndpoint), MediaType.APPLICATION_JSON, TargetEntity.CATALOG_DB)).thenReturn(httpClientMock)
+ when(httpClientFactoryMock.newJsonClient(new URL(queryEndpoint), TargetEntity.CATALOG_DB)).thenReturn(httpClientMock)
Response responseMock = mock(Response.class)
when(httpClientMock.get()).thenReturn(responseMock)
HttpClient httpClient = mock(HttpClient.class)
given(httpClient.get()).willReturn(expectedResponse)
HttpClientFactory httpClientFactory = mock(HttpClientFactory.class)
- given(httpClientFactory.create(new URL(URL), MediaType.APPLICATION_JSON, TargetEntity.EXTERNAL)).willReturn(httpClient)
+ given(httpClientFactory.newJsonClient(new URL(URL), TargetEntity.EXTERNAL)).willReturn(httpClient)
// WHEN
ExternalAPIUtil externalAPIUtil = new ExternalAPIUtil(httpClientFactory, new DummyMsoUtils(UUID_STR), new ExceptionUtil())
HttpClient httpClient = mock(HttpClient.class)
willThrow(new RuntimeException("error occurred")).given(httpClient).get()
HttpClientFactory httpClientFactory = mock(HttpClientFactory.class)
- given(httpClientFactory.create(new URL(URL), MediaType.APPLICATION_JSON, TargetEntity.EXTERNAL)).willReturn(httpClient)
+ given(httpClientFactory.newJsonClient(new URL(URL), TargetEntity.EXTERNAL)).willReturn(httpClient)
DelegateExecution delegateExecution = createDelegateExecution()
DummyExceptionUtil exceptionUtil = new DummyExceptionUtil()
// WHEN
ExternalAPIUtil externalAPIUtil = new ExternalAPIUtil(httpClientFactory, new DummyMsoUtils(UUID_STR), exceptionUtil)
- BpmnError bpmnError = catchThrowableOfType({ -> externalAPIUtil.executeExternalAPIGetCall(delegateExecution, URL)
+ BpmnError bpmnError = catchThrowableOfType({ ->
+ externalAPIUtil.executeExternalAPIGetCall(delegateExecution, URL)
}, BpmnError.class)
// THEN
HttpClient httpClient = mock(HttpClient.class)
willThrow(new RuntimeException("error occurred")).given(httpClient).post(BODY_PAYLOAD)
HttpClientFactory httpClientFactory = mock(HttpClientFactory.class)
- given(httpClientFactory.create(new URL(URL), MediaType.APPLICATION_JSON, TargetEntity.AAI)).willReturn(httpClient)
+ given(httpClientFactory.newJsonClient(new URL(URL), TargetEntity.AAI)).willReturn(httpClient)
DelegateExecution delegateExecution = createDelegateExecution()
DummyExceptionUtil exceptionUtil = new DummyExceptionUtil()
HttpClient httpClient = mock(HttpClient.class)
given(httpClient.post(BODY_PAYLOAD)).willReturn(expectedResponse)
HttpClientFactory httpClientFactory = mock(HttpClientFactory.class)
- given(httpClientFactory.create(new URL(URL), MediaType.APPLICATION_JSON, TargetEntity.AAI)).willReturn(httpClient)
+ given(httpClientFactory.newJsonClient(new URL(URL), TargetEntity.AAI)).willReturn(httpClient)
// WHEN
ExternalAPIUtil externalAPIUtil = new ExternalAPIUtil(httpClientFactory, new DummyMsoUtils(UUID_STR), new ExceptionUtil())
import javax.ws.rs.core.UriBuilder;
import org.onap.so.client.HttpClient;
+import org.onap.so.client.HttpClientFactory;
import org.onap.so.utils.TargetEntity;
import com.github.tomakehurst.wiremock.client.ResponseDefinitionBuilder;
e1.printStackTrace();
}
try {
- HttpClient client = new HttpClient(UriBuilder.fromUri(callbackUrl).build().toURL(), "text/xml", TargetEntity.SDNC_ADAPTER);
+ HttpClient client = new HttpClientFactory().newTextXmlClient(
+ UriBuilder.fromUri(callbackUrl).build().toURL(),
+ TargetEntity.SDNC_ADAPTER);
client.post(payLoad);
} catch (Exception e) {
// TODO Auto-generated catch block
import javax.ws.rs.core.UriBuilder;
import org.onap.so.client.HttpClient;
+import org.onap.so.client.HttpClientFactory;
import org.onap.so.logger.MsoLogger;
import org.onap.so.utils.TargetEntity;
}
LOGGER.debug("Sending callback response:" + callbackUrl);
try {
- HttpClient client = new HttpClient(UriBuilder.fromUri(callbackUrl).build().toURL(), "text/xml", TargetEntity.SDNC_ADAPTER);
+ HttpClient client = new HttpClientFactory().newTextXmlClient(
+ UriBuilder.fromUri(callbackUrl).build().toURL(),
+ TargetEntity.SDNC_ADAPTER);
client.post(payLoad);
} catch (Exception e) {
LOGGER.debug("Exception :",e);
import javax.ws.rs.core.UriBuilder;
import org.onap.so.client.HttpClient;
+import org.onap.so.client.HttpClientFactory;
import org.onap.so.logger.MsoLogger;
import org.onap.so.utils.TargetEntity;
}
LOGGER.debug("Sending callback response to url: " + callbackUrl);
try {
- HttpClient client = new HttpClient(UriBuilder.fromUri(callbackUrl).build().toURL(), "text/xml", TargetEntity.SDNC_ADAPTER);
+ HttpClient client = new HttpClientFactory().newTextXmlClient(
+ UriBuilder.fromUri(callbackUrl).build().toURL(),
+ TargetEntity.SDNC_ADAPTER);
Response response = client.post(payLoad);
LOGGER.debug("Successfully posted callback? Status: " + response.getStatus());
} catch (Exception e) {
import javax.ws.rs.core.UriBuilder;
import org.onap.so.client.HttpClient;
+import org.onap.so.client.HttpClientFactory;
import org.onap.so.utils.TargetEntity;
import com.github.tomakehurst.wiremock.client.ResponseDefinitionBuilder;
}
try {
- HttpClient client = new HttpClient(UriBuilder.fromUri(callbackUrl).build().toURL(), "text/xml", TargetEntity.VNF_ADAPTER);
+ HttpClient client = new HttpClientFactory().newTextXmlClient(
+ UriBuilder.fromUri(callbackUrl).build().toURL(),
+ TargetEntity.VNF_ADAPTER);
client.post(payLoad);
} catch (Exception e) {
// TODO Auto-generated catch block
import javax.ws.rs.core.UriBuilder;
import org.onap.so.client.HttpClient;
+import org.onap.so.client.HttpClientFactory;
import org.onap.so.logger.MsoLogger;
import org.onap.so.utils.TargetEntity;
}
LOGGER.debug("Sending callback response to url: " + callbackUrl);
try {
- HttpClient client = new HttpClient(UriBuilder.fromUri(callbackUrl).build().toURL(), "text/xml", TargetEntity.VNF_ADAPTER);
+ HttpClient client = new HttpClientFactory().newTextXmlClient(
+ UriBuilder.fromUri(callbackUrl).build().toURL(),
+ TargetEntity.VNF_ADAPTER);
Response response = client.post(payLoad);
LOGGER.debug("Successfully posted callback? Status: " + response.getStatus());
//System.err.println("Successfully posted callback:" + result.getStatus());
import javax.ws.rs.core.UriBuilder;
import org.onap.so.client.HttpClient;
+import org.onap.so.client.HttpClientFactory;
import org.onap.so.logger.MsoLogger;
import org.onap.so.utils.TargetEntity;
}
try {
- HttpClient client = new HttpClient(UriBuilder.fromUri(callbackUrl).build().toURL(), "text/xml", TargetEntity.VNF_ADAPTER);
+ HttpClient client = new HttpClientFactory().newTextXmlClient(
+ UriBuilder.fromUri(callbackUrl).build().toURL(),
+ TargetEntity.VNF_ADAPTER);
client.post(payLoad);
} catch (Exception e) {
// TODO Auto-generated catch block
import javax.ws.rs.core.UriBuilder;
import org.onap.so.client.HttpClient;
+import org.onap.so.client.HttpClientFactory;
import org.onap.so.logger.MsoLogger;
import org.onap.so.utils.TargetEntity;
}
try {
- HttpClient client = new HttpClient(UriBuilder.fromUri(callbackUrl).build().toURL(), "text/xml", TargetEntity.VNF_ADAPTER);
+ HttpClient client = new HttpClientFactory().newTextXmlClient(
+ UriBuilder.fromUri(callbackUrl).build().toURL(),
+ TargetEntity.VNF_ADAPTER);
client.post(payLoad);
} catch (Exception e) {
LOGGER.debug("Exception :",e);
import javax.ws.rs.core.UriBuilder;
import org.onap.so.client.HttpClient;
+import org.onap.so.client.HttpClientFactory;
import org.onap.so.logger.MsoLogger;
import org.onap.so.utils.TargetEntity;
}
try {
- HttpClient client = new HttpClient(UriBuilder.fromUri(callbackUrl).build().toURL(), "text/xml", TargetEntity.VNF_ADAPTER);
+ HttpClient client = new HttpClientFactory().newTextXmlClient(
+ UriBuilder.fromUri(callbackUrl).build().toURL(),
+ TargetEntity.VNF_ADAPTER);
client.post(payLoad);
} catch (Exception e) {
System.out.println("catch error in - request.post() ");
import javax.ws.rs.core.UriBuilder;
import org.onap.so.client.HttpClient;
+import org.onap.so.client.HttpClientFactory;
import org.onap.so.logger.MsoLogger;
import org.onap.so.utils.TargetEntity;
}
try {
- HttpClient client = new HttpClient(UriBuilder.fromUri(callbackUrl).build().toURL(), "text/xml", TargetEntity.VNF_ADAPTER);
+ HttpClient client = new HttpClientFactory().newTextXmlClient(
+ UriBuilder.fromUri(callbackUrl).build().toURL(),
+ TargetEntity.VNF_ADAPTER);
client.post(payLoad);
} catch (Exception e) {
System.out.println("catch error in - request.post() ");
package org.onap.so.bpmn.infrastructure.scripts
+import org.onap.so.client.HttpClientFactory
import org.onap.so.client.aai.AAIObjectType
import org.onap.so.client.aai.entities.uri.AAIResourceUri
import org.onap.so.client.aai.entities.uri.AAIUriFactory;
import org.onap.so.bpmn.common.scripts.ExceptionUtil
import org.onap.so.bpmn.core.json.JsonUtils
import org.onap.so.client.HttpClient
-import org.onap.so.logger.MessageEnum
import org.onap.so.logger.MsoLogger
import org.onap.so.bpmn.core.UrnPropertiesReader
-import groovy.json.*
import javax.ws.rs.core.Response
import org.onap.so.utils.TargetEntity
// Get the Basic Auth credentials for the VFCAdapter, username is 'bpel', auth is '07a7159d3bf51a0e53be7a8f89699be7'
// user 'bepl' authHeader is the same with mso.db.auth
String basicAuthValuedb = UrnPropertiesReader.getVariable("mso.db.auth", execution)
- HttpClient httpClient = new HttpClient(url, "application/json", TargetEntity.VNF_ADAPTER)
+ HttpClient httpClient = new HttpClientFactory().newJsonClient(url, TargetEntity.VNF_ADAPTER)
httpClient.addAdditionalHeader("Accept", "application/json")
httpClient.addAdditionalHeader("Authorization", basicAuthValuedb)
* ============LICENSE_END=========================================================
*/
-package org.onap.so.bpmn.infrastructure.scripts;
+package org.onap.so.bpmn.infrastructure.scripts
-import groovy.xml.XmlUtil
-import groovy.json.*
import org.onap.so.bpmn.core.UrnPropertiesReader
import org.onap.so.bpmn.core.json.JsonUtils
import org.onap.so.client.HttpClient
+import org.onap.so.client.HttpClientFactory
import org.onap.so.logger.MsoLogger
-import org.onap.so.logger.MessageEnum
-
import org.onap.so.bpmn.common.scripts.AbstractServiceTaskProcessor
import org.onap.so.bpmn.common.scripts.ExceptionUtil
import org.onap.so.bpmn.common.scripts.NetworkUtils
import org.onap.so.bpmn.core.WorkflowException
import org.onap.so.utils.TargetEntity
-import java.util.UUID;
import javax.ws.rs.core.Response
import org.camunda.bpm.engine.delegate.BpmnError
import org.camunda.bpm.engine.delegate.DelegateExecution
-import org.apache.commons.lang3.*
-import org.apache.commons.codec.binary.Base64;
-import org.springframework.web.util.UriUtils
/**
* This groovy class supports the <class>DoCreateNetworkInstance.bpmn</class> process.
execution.setVariable(Prefix + "urlRollbackPoNetwork", urlRollbackPoNetwork)
URL url = new URL(urlRollbackPoNetwork)
- HttpClient httpClient = new HttpClient(url, "application/xml", TargetEntity.OPENSTACK_ADAPTER)
+ HttpClient httpClient = new HttpClientFactory().newXmlClient(url, TargetEntity.OPENSTACK_ADAPTER)
httpClient.addAdditionalHeader("Authorization", execution.getVariable("BasicAuthHeaderValuePO"))
Response response = httpClient.delete(rollbackNetworkRequest)
package org.onap.so.bpmn.infrastructure.scripts
+import org.onap.so.client.HttpClientFactory
import org.onap.so.client.aai.AAIObjectType
import org.onap.so.client.aai.entities.uri.AAIResourceUri
import org.onap.so.client.aai.entities.uri.AAIUriFactory;
import org.onap.so.utils.TargetEntity
-import groovy.json.*
import javax.ws.rs.core.Response
/**
// Get the Basic Auth credentials for the VFCAdapter, username is 'bpel', auth is '07a7159d3bf51a0e53be7a8f89699be7'
// user 'bepl' authHeader is the same with mso.db.auth
String basicAuthValuedb = UrnPropertiesReader.getVariable("mso.db.auth", execution)
- HttpClient httpClient = new HttpClient(url, "application/json", TargetEntity.VNF_ADAPTER)
+ HttpClient httpClient = new HttpClientFactory().newJsonClient(url, TargetEntity.VNF_ADAPTER)
httpClient.addAdditionalHeader("Accept", "application/json")
httpClient.addAdditionalHeader("Authorization", basicAuthValuedb)
package org.onap.so.bpmn.infrastructure.scripts
import org.onap.so.bpmn.common.scripts.CatalogDbUtilsFactory
+import org.onap.so.client.HttpClientFactory
import javax.ws.rs.core.MediaType
import javax.ws.rs.core.Response
import org.onap.so.bpmn.core.UrnPropertiesReader
import org.onap.so.bpmn.core.WorkflowException
import org.onap.so.bpmn.core.domain.VnfResource
-import org.onap.so.bpmn.core.json.DecomposeJsonUtil
import org.onap.so.bpmn.core.json.JsonUtils
import org.onap.so.client.HttpClient
import org.onap.so.client.aai.AAIObjectPlurals
JsonUtils jsonUtil = new JsonUtils()
SDNCAdapterUtils sdncAdapterUtils = new SDNCAdapterUtils(this)
CatalogDbUtils catalogDbUtils = new CatalogDbUtilsFactory().create()
+ private final HttpClientFactory httpClientFactory = new HttpClientFactory()
/**
* Validates the request message and sets up the workflow.
String endPoint = aaiUriUtil.createAaiUri(uri)
try {
- HttpClient client = new HttpClient(new URL(endPoint), MediaType.APPLICATION_XML, TargetEntity.AAI)
+ HttpClient client = httpClientFactory.newXmlClient(new URL(endPoint), TargetEntity.AAI)
client.addAdditionalHeader('X-TransactionId', UUID.randomUUID().toString())
client.addAdditionalHeader('X-FromAppId', 'MSO')
client.addAdditionalHeader('Content-Type', MediaType.APPLICATION_XML)
AAIResourceUri uri = AAIUriFactory.createResourceUri(AAIObjectPlurals.VF_MODULE, vnfId).queryParam("vf-module-name",vfModuleName)
String endPoint = aaiUriUtil.createAaiUri(uri)
- HttpClient client = new HttpClient(new URL(endPoint), MediaType.APPLICATION_XML, TargetEntity.AAI)
+ HttpClient client = httpClientFactory.newXmlClient(new URL(endPoint), TargetEntity.AAI)
client.addAdditionalHeader('X-TransactionId', UUID.randomUUID().toString())
client.addAdditionalHeader('X-FromAppId', 'MSO')
client.addAdditionalHeader('Content-Type', MediaType.APPLICATION_XML)
*/
package org.onap.so.bpmn.infrastructure.scripts
-import org.onap.so.logger.MsoLogger
-
-import static org.apache.commons.lang3.StringUtils.*;
-
-import javax.ws.rs.core.Response
-import javax.xml.parsers.DocumentBuilder
-import javax.xml.parsers.DocumentBuilderFactory
-
-import org.apache.commons.lang3.*
+import groovy.json.JsonOutput
+import groovy.json.JsonSlurper
+import org.apache.commons.lang3.StringUtils
import org.camunda.bpm.engine.delegate.BpmnError
import org.camunda.bpm.engine.delegate.DelegateExecution
import org.json.JSONArray
import org.json.JSONObject
-
import org.onap.so.bpmn.common.scripts.AbstractServiceTaskProcessor
import org.onap.so.bpmn.common.scripts.ExceptionUtil
import org.onap.so.bpmn.common.scripts.MsoUtils
+import org.onap.so.bpmn.core.UrnPropertiesReader
import org.onap.so.bpmn.core.WorkflowException
import org.onap.so.bpmn.core.domain.Resource
import org.onap.so.bpmn.core.domain.ServiceDecomposition
-import org.onap.so.bpmn.core.UrnPropertiesReader
-
-import org.onap.so.utils.TargetEntity
import org.onap.so.bpmn.core.json.JsonUtils
import org.onap.so.client.HttpClient
+import org.onap.so.client.HttpClientFactory
+import org.onap.so.logger.MsoLogger
+import org.onap.so.utils.TargetEntity
import org.springframework.web.util.UriUtils
import org.w3c.dom.Document
-import org.w3c.dom.Element
import org.w3c.dom.Node
-import org.w3c.dom.NodeList
import org.xml.sax.InputSource
-import groovy.json.*
+import javax.ws.rs.core.Response
+import javax.xml.parsers.DocumentBuilder
+import javax.xml.parsers.DocumentBuilderFactory
+
+import static org.apache.commons.lang3.StringUtils.isBlank
/**
* This groovy class supports the <class>DoDeleteE2EServiceInstance.bpmn</class> process.
String serviceAaiPath = "${aai_endpoint}${urlLink}"
URL url = new URL(serviceAaiPath)
- HttpClient client = new HttpClient(url, "application/xml", TargetEntity.AAI)
+ HttpClient client = new HttpClientFactory().newXmlClient(url, TargetEntity.AAI)
Response response = client.get()
import org.onap.so.bpmn.core.WorkflowException
import org.onap.so.bpmn.core.json.JsonUtils
import org.onap.so.client.HttpClient
+import org.onap.so.client.HttpClientFactory
import org.onap.so.client.aai.AAIObjectType
import org.onap.so.client.aai.entities.AAIResultWrapper
import org.onap.so.client.aai.entities.Relationships
String vnfAdapterRequest = execution.getVariable(Prefix + "deleteNetworkRequest")
URL url = new URL(vnfAdapterUrl)
- HttpClient httpClient = new HttpClient(url, "application/xml", TargetEntity.OPENSTACK_ADAPTER)
+ HttpClient httpClient = new HttpClientFactory().newXmlClient(url, TargetEntity.OPENSTACK_ADAPTER)
httpClient.addAdditionalHeader("Authorization", execution.getVariable("BasicAuthHeaderValuePO"))
Response response = httpClient.delete(vnfAdapterRequest)
import org.onap.so.bpmn.common.scripts.ExceptionUtil
import org.onap.so.bpmn.core.json.JsonUtils
import org.onap.so.client.HttpClient
+import org.onap.so.client.HttpClientFactory
import org.onap.so.client.aai.AAIObjectType
import org.onap.so.client.aai.entities.uri.AAIResourceUri
import org.onap.so.client.aai.entities.uri.AAIUriFactory
-import org.onap.so.logger.MessageEnum
import org.onap.so.logger.MsoLogger
import org.onap.so.utils.TargetEntity
import org.onap.so.bpmn.core.UrnPropertiesReader
ExceptionUtil exceptionUtil = new ExceptionUtil()
JsonUtils jsonUtil = new JsonUtils()
+ private final HttpClientFactory httpClientFactory = new HttpClientFactory()
/**
* Pre Process the BPMN Flow Request
// Get the Basic Auth credentials for the VFCAdapter, username is 'bpel', auth is '07a7159d3bf51a0e53be7a8f89699be7'
// user 'bepl' authHeader is the same with mso.db.auth
String basicAuthValuedb = UrnPropertiesReader.getVariable("mso.db.auth", execution)
- HttpClient httpClient = new HttpClient(url, "application/json", TargetEntity.VNF_ADAPTER)
+ HttpClient httpClient = httpClientFactory.newJsonClient(url, TargetEntity.VNF_ADAPTER)
httpClient.addAdditionalHeader("Accept", "application/json")
httpClient.addAdditionalHeader("Authorization", basicAuthValuedb)
// Get the Basic Auth credentials for the VFCAdapter, username is 'bpel', auth is '07a7159d3bf51a0e53be7a8f89699be7'
// user 'bepl' authHeader is the same with mso.db.auth
String basicAuthValuedb = UrnPropertiesReader.getVariable("mso.db.auth", execution)
- HttpClient httpClient = new HttpClient(url, "application/json", TargetEntity.VNF_ADAPTER)
+ HttpClient httpClient = httpClientFactory.newJsonClient(url, TargetEntity.VNF_ADAPTER)
httpClient.addAdditionalHeader("Accept", "application/json")
httpClient.addAdditionalHeader("Authorization", basicAuthValuedb)
import org.onap.so.bpmn.core.json.JsonUtils
import org.camunda.bpm.engine.delegate.BpmnError
-import org.camunda.bpm.engine.runtime.Execution
import com.fasterxml.jackson.databind.ObjectMapper
+import org.onap.so.client.HttpClientFactory
+
import javax.ws.rs.core.Response
import org.onap.so.bpmn.infrastructure.vfcmodel.ScaleResource
try{
URL url = new URL(urlString);
- HttpClient httpClient = new HttpClient(url, "application/json", TargetEntity.VNF_ADAPTER)
+ HttpClient httpClient = new HttpClientFactory().newJsonClient(url, TargetEntity.VNF_ADAPTER)
httpClient.addAdditionalHeader("Authorization", "Basic QlBFTENsaWVudDpwYXNzd29yZDEk")
apiResponse = httpClient.post(requestBody)
package org.onap.so.bpmn.infrastructure.scripts
-import static org.apache.commons.lang3.StringUtils.*;
+import org.onap.so.client.HttpClientFactory
-import javax.ws.rs.core.MediaType
import javax.ws.rs.core.Response
import org.camunda.bpm.engine.delegate.BpmnError
import org.camunda.bpm.engine.delegate.DelegateExecution;
import org.onap.so.bpmn.common.scripts.AbstractServiceTaskProcessor
import org.onap.so.bpmn.common.scripts.ExceptionUtil
import org.onap.so.bpmn.common.scripts.MsoUtils
-import org.onap.so.bpmn.core.UrnPropertiesReader
import org.onap.so.bpmn.core.domain.ModelInfo
import org.onap.so.bpmn.core.domain.ModuleResource
import org.onap.so.bpmn.core.domain.VnfResource
import org.onap.so.bpmn.core.json.JsonUtils
import org.onap.so.client.graphinventory.entities.uri.Depth
import org.onap.so.client.HttpClient
-import org.onap.so.client.aai.AAIObjectType;
-import org.onap.so.client.aai.AAIResourcesClient
+import org.onap.so.client.aai.AAIObjectType
import org.onap.so.client.aai.entities.uri.AAIResourceUri
import org.onap.so.client.aai.entities.uri.AAIUriFactory;
import org.onap.so.logger.MessageEnum
import org.onap.so.logger.MsoLogger
import org.onap.so.utils.TargetEntity
-import org.springframework.web.util.UriUtils;
/**
* This class supports the VID Flow
msoLogger.debug("AAI endPoint: " + endPoint)
try {
- HttpClient client = new HttpClient(new URL(endPoint), MediaType.APPLICATION_XML, TargetEntity.AAI)
+ HttpClient client = new HttpClientFactory().newXmlClient(new URL(endPoint), TargetEntity.AAI)
client.addAdditionalHeader('X-TransactionId', UUID.randomUUID().toString())
client.addAdditionalHeader('X-FromAppId', 'MSO')
client.addAdditionalHeader('Content-Type', 'application/xml')
protected final Logger log = LoggerFactory.getLogger(HttpClient.class);
private TargetEntity targetEntity;
- public HttpClient(URL host, String contentType, TargetEntity targetEntity) {
+
+ HttpClient(URL host, String contentType, TargetEntity targetEntity) {
super(host, contentType);
this.targetEntity = targetEntity;
-
}
@Override
package org.onap.so.client;
import java.net.URL;
+import javax.ws.rs.core.MediaType;
import org.onap.so.utils.TargetEntity;
public class HttpClientFactory {
- public HttpClient create(URL host, String contentType, TargetEntity targetEntity) {
- return new HttpClient(host, contentType, targetEntity);
+ public HttpClient newJsonClient(URL host, TargetEntity targetEntity) {
+ return new HttpClient(host, MediaType.APPLICATION_JSON, targetEntity);
+ }
+
+ public HttpClient newXmlClient(URL host, TargetEntity targetEntity) {
+ return new HttpClient(host, MediaType.APPLICATION_XML, targetEntity);
+ }
+
+ public HttpClient newTextXmlClient(URL host, TargetEntity targetEntity) {
+ return new HttpClient(host, MediaType.TEXT_XML, targetEntity);
}
}
import static com.github.tomakehurst.wiremock.client.WireMock.verify;
import static com.github.tomakehurst.wiremock.core.WireMockConfiguration.wireMockConfig;
+import com.github.tomakehurst.wiremock.junit.WireMockRule;
import java.net.MalformedURLException;
import java.net.URL;
-
import org.junit.Rule;
import org.junit.Test;
import org.onap.so.utils.TargetEntity;
-import com.github.tomakehurst.wiremock.junit.WireMockRule;
-
public class HttpClientTest{
+ private final HttpClientFactory httpClientFactory = new HttpClientFactory();
@Rule
public WireMockRule wireMockRule = new WireMockRule(wireMockConfig().dynamicHttpsPort());
- @Test(expected = Test.None.class)
+ @Test
public void testPost_success() throws MalformedURLException{
stubFor(post(urlEqualTo("/services/sdnc/post"))
.withBody("")));
URL url = new URL("http://localhost:" + wireMockConfig().portNumber() + "/services/sdnc/post");
- HttpClient client = new HttpClient(url, "application/json", TargetEntity.BPMN);
+ HttpClient client = httpClientFactory.newJsonClient(url, TargetEntity.BPMN);
client.addBasicAuthHeader("97FF88AB352DA16E00DDD81E3876431DEF8744465DACA489EB3B3BE1F10F63EDA1715E626D0A4827A3E19CD88421BF", "123");
client.addAdditionalHeader("Accept", "application/json");
verify(exactly(1), postRequestedFor(urlEqualTo("/services/sdnc/post")));
}
- @Test(expected = Test.None.class)
+ @Test
public void testPost_nullHeader() throws MalformedURLException{
stubFor(post(urlEqualTo("/services/sdnc/post"))
.withBody("")));
URL url = new URL("http://localhost:" + wireMockConfig().portNumber() + "/services/sdnc/post");
- HttpClient client = new HttpClient(url, "application/json", TargetEntity.BPMN);
+ HttpClient client = httpClientFactory.newJsonClient(url, TargetEntity.BPMN);
client.addAdditionalHeader("Accept", "application/json");
client.addAdditionalHeader("id", null);
.withHeader("Accept", equalTo("application/json")));
}
- @Test(expected = Test.None.class)
+ @Test
public void testPost_nullBasicAuth() throws MalformedURLException{
stubFor(post(urlEqualTo("/services/sdnc/post"))
.withBody("")));
URL url = new URL("http://localhost:" + wireMockConfig().portNumber() + "/services/sdnc/post");
- HttpClient client = new HttpClient(url, "application/json", TargetEntity.BPMN);
+ HttpClient client = httpClientFactory.newJsonClient(url, TargetEntity.BPMN);
client.addBasicAuthHeader("", "12345");
client.addAdditionalHeader("Accept", "application/json");
@RunWith(MockitoJUnitRunner.class)
public class RestClientTest {
-
+
+ private final HttpClientFactory httpClientFactory = new HttpClientFactory();
@Mock
private RestProperties props;
-
-
+
+
@Test
public void retries() throws Exception {
RestClient spy = buildSpy();
}
private RestClient buildSpy() throws MalformedURLException, IllegalArgumentException, UriBuilderException {
- RestClient client = new HttpClient(UriBuilder.fromUri("http://localhost/test").build().toURL(), "application/json", TargetEntity.BPMN);
+ RestClient client = httpClientFactory
+ .newJsonClient(UriBuilder.fromUri("http://localhost/test").build().toURL(), TargetEntity.BPMN);
return spy(client);
}
package org.onap.so.apihandlerinfra.tenantisolation.helpers;
import java.net.URL;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.UUID;
import javax.ws.rs.core.Response;
import javax.ws.rs.core.UriBuilder;
import org.onap.so.apihandlerinfra.exceptions.ValidateException;
import org.onap.so.apihandlerinfra.logging.ErrorLoggerInfo;
import org.onap.so.client.HttpClient;
+import org.onap.so.client.HttpClientFactory;
import org.onap.so.logger.MessageEnum;
import org.onap.so.logger.MsoLogger;
import org.onap.so.utils.CryptoUtils;
private static String MESSAGE_UNDEFINED_ERROR = "Undefined Error Message!";
private static String MESSAGE_UNEXPECTED_FORMAT = "Unexpected response format from SDC.";
+ private final HttpClientFactory httpClientFactory = new HttpClientFactory();
@Value("${mso.sdc.endpoint}")
private String sdcEndpoint;
URL url = new URL(urlString);
- HttpClient httpClient = new HttpClient(url, "application/json", TargetEntity.SDC);
+ HttpClient httpClient = httpClientFactory.newJsonClient(url, TargetEntity.SDC);
httpClient.addBasicAuthHeader(sdcClientAuth, msoKey);
Response apiResponse = setHttpPostResponse(httpClient, jsonPayload);