import org.onap.so.bpmn.core.domain.Subscriber
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.db.catalog.beans.HomingInstance
-import javax.ws.rs.core.UriBuilder
-import org.onap.so.bpmn.common.util.OofInfraUtils
+import org.onap.so.utils.TargetEntity
+import org.springframework.http.HttpEntity
+import org.springframework.http.HttpHeaders
+import org.springframework.http.HttpMethod
+import org.springframework.http.ResponseEntity
+import org.springframework.http.client.BufferingClientHttpRequestFactory
+import org.springframework.http.client.HttpComponentsClientHttpRequestFactory
+import org.springframework.web.client.RestTemplate
+import org.springframework.web.util.UriComponentsBuilder
+
+import javax.ws.rs.core.MediaType
+import javax.ws.rs.core.Response
+import javax.xml.ws.http.HTTPException
+
import static org.onap.so.bpmn.common.scripts.GenericUtils.*
class OofUtils {
ExceptionUtil exceptionUtil = new ExceptionUtil()
JsonUtils jsonUtil = new JsonUtils()
- OofInfraUtils oofInfraUtils = new OofInfraUtils()
private AbstractServiceTaskProcessor utils
*
* @return void
*/
- Void createCloudSite(CloudSite cloudSite, DelegateExecution execution) {
- oofInfraUtils.createCloudSite(cloudSite, execution)
- }
+ Void createCloudSiteCatalogDb(CloudSite cloudSite, DelegateExecution execution) {
+
+ String endpoint = UrnPropertiesReader.getVariable("mso.catalog.db.spring.endpoint", execution)
+ String auth = UrnPropertiesReader.getVariable("mso.db.auth", execution)
+ String uri = "/cloudSite"
+
+ 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())
+ int responseCode = response.getStatus()
+ logDebug("CatalogDB response code is: " + responseCode, isDebugEnabled)
+ String syncResponse = response.readEntity(String.class)
+ logDebug("CatalogDB response is: " + syncResponse, isDebugEnabled)
+
+ if(responseCode != 202){
+ exceptionUtil.buildAndThrowWorkflowException(execution, responseCode, "Received a Bad Sync Response from CatalogDB.")
+ }
+ }
+
/**
* This method creates a HomingInstance in catalog database.
*
Void createHomingInstance(HomingInstance homingInstance, DelegateExecution execution) {
oofInfraUtils.createHomingInstance(homingInstance, execution)
}
-
String getMsbHost(DelegateExecution execution) {
String msbHost = UrnPropertiesReader.getVariable("mso.msb.host", execution, "msb-iag.onap")