aboutsummaryrefslogtreecommitdiffstats
path: root/bpmn/MSOInfrastructureBPMN/src/main/java
diff options
context:
space:
mode:
Diffstat (limited to 'bpmn/MSOInfrastructureBPMN/src/main/java')
-rw-r--r--bpmn/MSOInfrastructureBPMN/src/main/java/org/openecomp/mso/bpmn/infrastructure/workflow/serviceTask/SdncOperationTaskYangToolsImpl.java68
-rw-r--r--bpmn/MSOInfrastructureBPMN/src/main/java/org/openecomp/mso/bpmn/infrastructure/workflow/serviceTask/client/builder/AbstractBuilder.java80
-rw-r--r--bpmn/MSOInfrastructureBPMN/src/main/java/org/openecomp/mso/bpmn/infrastructure/workflow/serviceTask/client/builder/NetworkTopologyRequestBodyBuilder.java147
3 files changed, 72 insertions, 223 deletions
diff --git a/bpmn/MSOInfrastructureBPMN/src/main/java/org/openecomp/mso/bpmn/infrastructure/workflow/serviceTask/SdncOperationTaskYangToolsImpl.java b/bpmn/MSOInfrastructureBPMN/src/main/java/org/openecomp/mso/bpmn/infrastructure/workflow/serviceTask/SdncOperationTaskYangToolsImpl.java
deleted file mode 100644
index 25727bdcd0..0000000000
--- a/bpmn/MSOInfrastructureBPMN/src/main/java/org/openecomp/mso/bpmn/infrastructure/workflow/serviceTask/SdncOperationTaskYangToolsImpl.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP - SO
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.mso.bpmn.infrastructure.workflow.serviceTask;
-
-import okhttp3.RequestBody;
-import okhttp3.ResponseBody;
-import org.camunda.bpm.engine.delegate.DelegateExecution;
-import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.generic.resource.rev170824.NetworkTopologyOperationOutput;
-import org.openecomp.mso.bpmn.core.WorkflowException;
-import org.openecomp.mso.bpmn.infrastructure.workflow.serviceTask.client.GenericResourceApi;
-import org.openecomp.mso.bpmn.infrastructure.workflow.serviceTask.client.builder.NetworkTopologyRequestBodyBuilder;
-import org.openecomp.mso.requestsdb.RequestsDbConstant;
-import org.openecomp.mso.yangDecoder.transform.api.ITransformJava2StringService;
-import org.openecomp.mso.yangDecoder.transform.impl.TransfromJava2StringFactory;
-
-import java.util.Map;
-
-/**
- * Created by 10112215 on 2017/9/20.
- */
-public class SdncOperationTaskYangToolsImpl extends AbstractSdncOperationTask {
-
- public void sendRestrequestAndHandleResponse(DelegateExecution execution,
- Map<String, String> inputs,
- GenericResourceApi genericResourceApiClient) throws Exception {
- updateProgress(execution, null, null, "40", "sendRestrequestAndHandleResponse begin!");
- NetworkTopologyRequestBodyBuilder builder = new NetworkTopologyRequestBodyBuilder();
- RequestBody body = builder.build(execution, inputs);
- updateProgress(execution, null, null, "50", "RequestBody build finished!");
- ResponseBody responseBody = genericResourceApiClient.postNetworkTopologyOperation(body).execute().body();
- updateProgress(execution, null, null, "90", "sendRestrequestAndHandleResponse finished!");
- saveResponse(execution, responseBody);
- }
-
- private void saveResponse(DelegateExecution execution, ResponseBody responseBody) throws Exception {
- ITransformJava2StringService java2jsonService = TransfromJava2StringFactory.getJava2jsonService();
- NetworkTopologyOperationOutput output = (NetworkTopologyOperationOutput) java2jsonService.
- transformRpcDataObjectFromString(NetworkTopologyRequestBodyBuilder.URI_PATH, responseBody.string());
- String responseCode = output.getResponseCode();
- if (!"200".equals(responseCode)) {
- String processKey = getProcessKey(execution);
- int errorCode = Integer.valueOf(responseCode);
- String errorMessage = output.getResponseMessage();
- WorkflowException workflowException = new WorkflowException(processKey, errorCode, errorMessage);
- execution.setVariable("SDNCA_SuccessIndicator", workflowException);
- updateProgress(execution, RequestsDbConstant.Status.ERROR, String.valueOf(errorCode), null, errorMessage);
- throw new Exception("");
- }
- }
-}
diff --git a/bpmn/MSOInfrastructureBPMN/src/main/java/org/openecomp/mso/bpmn/infrastructure/workflow/serviceTask/client/builder/AbstractBuilder.java b/bpmn/MSOInfrastructureBPMN/src/main/java/org/openecomp/mso/bpmn/infrastructure/workflow/serviceTask/client/builder/AbstractBuilder.java
index 91b95df1b2..41fa8f250a 100644
--- a/bpmn/MSOInfrastructureBPMN/src/main/java/org/openecomp/mso/bpmn/infrastructure/workflow/serviceTask/client/builder/AbstractBuilder.java
+++ b/bpmn/MSOInfrastructureBPMN/src/main/java/org/openecomp/mso/bpmn/infrastructure/workflow/serviceTask/client/builder/AbstractBuilder.java
@@ -22,8 +22,6 @@ package org.openecomp.mso.bpmn.infrastructure.workflow.serviceTask.client.builde
import org.apache.commons.lang3.StringUtils;
import org.camunda.bpm.engine.delegate.DelegateExecution;
-import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.generic.resource.rev170824.request.information.RequestInformation;
-import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.generic.resource.rev170824.sdnc.request.header.SdncRequestHeader;
import org.openecomp.mso.bpmn.infrastructure.workflow.serviceTask.SdncUnderlayVpnPreprocessTask;
import org.openecomp.mso.bpmn.infrastructure.workflow.serviceTask.client.entity.OnapModelInformationEntity;
import org.openecomp.mso.bpmn.infrastructure.workflow.serviceTask.client.entity.ParamEntity;
@@ -36,35 +34,101 @@ import java.util.List;
import java.util.Map;
import java.util.UUID;
+//import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.generic.resource.rev170824.request.information.RequestInformation;
+//import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.generic.resource.rev170824.sdnc.request.header.SdncRequestHeader;
+
/**
* Created by 10112215 on 2017/9/20.
*/
public abstract class AbstractBuilder<IN, OUT> {
+ public static enum RequestAction {
+ CreateNetworkInstance(0, "CreateNetworkInstance"),
+ ActivateNetworkInstance(1, "ActivateNetworkInstance"),
+ CreateServiceInstance(2, "CreateServiceInstance"),
+ DeleteServiceInstance(3, "DeleteServiceInstance"),
+ DeleteNetworkInstance(4, "DeleteNetworkInstance"),
+ CreateVnfInstance(5, "CreateVnfInstance"),
+ ActivateVnfInstance(6, "ActivateVnfInstance"),
+ DeleteVnfInstance(7, "DeleteVnfInstance"),
+ CreateVfModuleInstance(8, "CreateVfModuleInstance"),
+ ActivateVfModuleInstance(9, "ActivateVfModuleInstance"),
+ DeleteVfModuleInstance(10, "DeleteVfModuleInstance"),
+ CreateContrailRouteInstance(11, "CreateContrailRouteInstance"),
+ DeleteContrailRouteInstance(12, "DeleteContrailRouteInstance"),
+ CreateSecurityZoneInstance(13, "CreateSecurityZoneInstance"),
+ DeleteSecurityZoneInstance(14, "DeleteSecurityZoneInstance");
+
+ String name;
+ int value;
+
+ private RequestAction(int value, String name) {
+ this.value = value;
+ this.name = name;
+ }
+
+ public String getName() {
+ return this.name;
+ }
+
+ public int getIntValue() {
+ return this.value;
+ }
+ }
+
+ public enum SvcAction {
+ Reserve(0, "reserve"),
+ Assign(1, "assign"),
+ Activate(2, "activate"),
+ Delete(3, "delete"),
+ Changeassign(4, "changeassign"),
+ Changedelete(5, "changedelete"),
+ Rollback(6, "rollback"),
+ Deactivate(7, "deactivate"),
+ Unassign(8, "unassign"),
+ Create(9, "create");
+
+ String name;
+ int value;
+
+ private SvcAction(int value, String name) {
+ this.value = value;
+ this.name = name;
+ }
+
+ public String getName() {
+ return this.name;
+ }
+
+ public int getIntValue() {
+ return this.value;
+ }
+ }
+
protected String requestId = null;
abstract OUT build(DelegateExecution execution, IN input) throws Exception;
protected String getRequestActoin(DelegateExecution execution) {
- String action = RequestInformation.RequestAction.CreateNetworkInstance.name();
+ String action = /*RequestInformation.*/RequestAction.CreateNetworkInstance.name();
String operType = getOperType(execution);
if (!StringUtils.isBlank(operType)) {
if (RequestsDbConstant.OperationType.DELETE.equals(operType)) {
- action = RequestInformation.RequestAction.DeleteNetworkInstance.name();
+ action = /*RequestInformation.*/RequestAction.DeleteNetworkInstance.name();
} else if (RequestsDbConstant.OperationType.CREATE.equals(operType)) {
- action = RequestInformation.RequestAction.CreateNetworkInstance.name();
+ action = /*RequestInformation.*/RequestAction.CreateNetworkInstance.name();
}
}
return action;
}
protected String getOperationType(DelegateExecution execution) {
- String action = SdncRequestHeader.SvcAction.Create.name();
+ String action = /*SdncRequestHeader.*/SvcAction.Create.name();
String operType = getOperType(execution);
if (!StringUtils.isBlank(operType)) {
if (RequestsDbConstant.OperationType.DELETE.equals(operType)) {
- action = SdncRequestHeader.SvcAction.Delete.name();
+ action = /*SdncRequestHeader.*/SvcAction.Delete.name();
} else if (RequestsDbConstant.OperationType.CREATE.equals(operType)) {
- action = SdncRequestHeader.SvcAction.Create.name();
+ action = /*SdncRequestHeader.*/SvcAction.Create.name();
}
}
return action;
diff --git a/bpmn/MSOInfrastructureBPMN/src/main/java/org/openecomp/mso/bpmn/infrastructure/workflow/serviceTask/client/builder/NetworkTopologyRequestBodyBuilder.java b/bpmn/MSOInfrastructureBPMN/src/main/java/org/openecomp/mso/bpmn/infrastructure/workflow/serviceTask/client/builder/NetworkTopologyRequestBodyBuilder.java
deleted file mode 100644
index d5ba528911..0000000000
--- a/bpmn/MSOInfrastructureBPMN/src/main/java/org/openecomp/mso/bpmn/infrastructure/workflow/serviceTask/client/builder/NetworkTopologyRequestBodyBuilder.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP - SO
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.mso.bpmn.infrastructure.workflow.serviceTask.client.builder;
-
-import okhttp3.RequestBody;
-import org.apache.commons.lang3.StringUtils;
-import org.camunda.bpm.engine.delegate.DelegateExecution;
-import org.json.JSONObject;
-import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.generic.resource.rev170824.NetworkTopologyOperationInput;
-import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.generic.resource.rev170824.NetworkTopologyOperationInputBuilder;
-import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.generic.resource.rev170824.network.request.input.NetworkRequestInputBuilder;
-import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.generic.resource.rev170824.network.request.input.network.request.input.NetworkInputParametersBuilder;
-import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.generic.resource.rev170824.param.Param;
-import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.generic.resource.rev170824.param.ParamBuilder;
-import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.generic.resource.rev170824.param.ParamKey;
-import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.generic.resource.rev170824.request.information.RequestInformation;
-import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.generic.resource.rev170824.request.information.RequestInformationBuilder;
-import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.generic.resource.rev170824.sdnc.request.header.SdncRequestHeader;
-import org.opendaylight.yang.gen.v1.org.onap.sdnc.northbound.generic.resource.rev170824.sdnc.request.header.SdncRequestHeaderBuilder;
-import org.openecomp.mso.yangDecoder.transform.api.ITransformJava2StringService;
-import org.openecomp.mso.yangDecoder.transform.impl.TransfromJava2StringFactory;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-/**
- * Created by 10112215 on 2017/9/20.
- */
-public class NetworkTopologyRequestBodyBuilder extends AbstractBuilder<Map<String, String>, RequestBody> {
-
- public static final String URI_PATH = "GENERIC-RESOURCE-API:network-topology-operation";
- public static final SdncRequestHeader.SvcAction SVC_DEFAULT_ACTION = SdncRequestHeader.SvcAction.Create;
- public static final String SVC_REQUEST_ID = "MSO";
- public static final String SDC_ACTION = "SDC_ACTION";
- public static final RequestInformation.RequestAction REQUEST_ACTION = RequestInformation.RequestAction.CreateNetworkInstance;
- protected static ITransformJava2StringService java2jsonService;
-
- static
- {
- try {
- java2jsonService = TransfromJava2StringFactory.getJava2jsonService();
- } catch (Exception e) {
- e.printStackTrace();
- java2jsonService = null;
- }
- }
-
- @Override
- public RequestBody build(DelegateExecution execution, Map<String, String> input) throws Exception {
- NetworkTopologyOperationInput sdncInput = getSdncInput(input);
- RequestBody body = getRequestBody(sdncInput);
- return body;
- }
-
- protected String getJsonInput(NetworkTopologyOperationInput sdncInput) throws Exception {
- return java2jsonService.transformRpcDataObjectToString(URI_PATH, sdncInput);
- }
-
- private RequestBody getRequestBody(NetworkTopologyOperationInput sdncInput) throws Exception {
- String jsonString = getJsonInput(sdncInput);
- String json = (new JSONObject(jsonString)).toString();
- return RequestBody.create(okhttp3.MediaType.parse("application/json; charset=utf-8"),json);
- }
-
- protected NetworkTopologyOperationInput getSdncInput(Map<String, String> inputs) {
- NetworkTopologyOperationInputBuilder networkTopologyOperationInputBuilder = new NetworkTopologyOperationInputBuilder();
- {
- loadSdncRequestHeader(inputs, networkTopologyOperationInputBuilder);
- loadRequestInformation(networkTopologyOperationInputBuilder);
- loadNetworkInputParameters(inputs, networkTopologyOperationInputBuilder);
- }
- return networkTopologyOperationInputBuilder.build();
- }
-
- private void loadNetworkInputParameters(Map<String, String> inputs, NetworkTopologyOperationInputBuilder networkTopologyOperationInputBuilder) {
- NetworkRequestInputBuilder networkRequestInputBuilder = new NetworkRequestInputBuilder();
- {
- NetworkInputParametersBuilder networkInputParametersBuilder = new NetworkInputParametersBuilder();
- {
- List<Param> paramList = getParamList(inputs);
- networkInputParametersBuilder.setParam(paramList);
- }
- networkRequestInputBuilder.setNetworkInputParameters(networkInputParametersBuilder.build());
- }
- networkTopologyOperationInputBuilder.setNetworkRequestInput(networkRequestInputBuilder.build());
- }
-
- private void loadRequestInformation(NetworkTopologyOperationInputBuilder networkTopologyOperationInputBuilder) {
- RequestInformationBuilder requestInformationBuilder = new RequestInformationBuilder();
- {
- requestInformationBuilder.setRequestId(SVC_REQUEST_ID);
- requestInformationBuilder.setRequestAction(REQUEST_ACTION);
- }
- networkTopologyOperationInputBuilder.setRequestInformation(requestInformationBuilder.build());
- }
-
- private void loadSdncRequestHeader(Map<String, String> inputs, NetworkTopologyOperationInputBuilder networkTopologyOperationInputBuilder) {
- SdncRequestHeaderBuilder sdncRequestHeaderBuilder = new SdncRequestHeaderBuilder();
- {
- sdncRequestHeaderBuilder.setSvcRequestId(SVC_REQUEST_ID);
- SdncRequestHeader.SvcAction svcAction = SVC_DEFAULT_ACTION;
- String action = inputs.get(SDC_ACTION);
- if (!StringUtils.isBlank(action)) {
- if (action.toLowerCase().contains("delete")) {
- svcAction = SdncRequestHeader.SvcAction.Delete;
- } else if (action.toLowerCase().contains("create")) {
- svcAction = SdncRequestHeader.SvcAction.Create;
- }
- }
- sdncRequestHeaderBuilder.setSvcAction(svcAction);
- }
- networkTopologyOperationInputBuilder.setSdncRequestHeader(sdncRequestHeaderBuilder.build());
- }
-
- private List<Param> getParamList(Map<String, String> inputs) {
- List<Param> paramList = new ArrayList<>();
- if (inputs != null && !inputs.isEmpty()) {
- inputs.keySet().forEach(key -> {
- ParamBuilder paramBuilder = new ParamBuilder();
- paramBuilder.setName(key);
- paramBuilder.setValue(inputs.get(key));
- paramBuilder.setKey(new ParamKey(key));
- paramList.add(paramBuilder.build());
- });
- }
- return paramList;
- }
-}