Replaced all tabs with spaces in java and pom.xml
[so.git] / bpmn / MSOCommonBPMN / src / main / java / org / onap / so / bpmn / appc / payload / PayloadClient.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP - SO
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.onap.so.bpmn.appc.payload;
22
23 import java.util.Optional;
24 import org.onap.so.bpmn.appc.payload.beans.ConfigurationParametersHealthCheck;
25 import org.onap.so.bpmn.appc.payload.beans.ConfigurationParametersQuiesce;
26 import org.onap.so.bpmn.appc.payload.beans.ConfigurationParametersResumeTraffic;
27 import org.onap.so.bpmn.appc.payload.beans.ConfigurationParametersUpgrade;
28 import org.onap.so.bpmn.appc.payload.beans.HealthCheckAction;
29 import org.onap.so.bpmn.appc.payload.beans.QuiesceTrafficAction;
30 import org.onap.so.bpmn.appc.payload.beans.RequestParametersHealthCheck;
31 import org.onap.so.bpmn.appc.payload.beans.ResumeTrafficAction;
32 import org.onap.so.bpmn.appc.payload.beans.SnapshotAction;
33 import org.onap.so.bpmn.appc.payload.beans.StartStopAction;
34 import org.onap.so.bpmn.appc.payload.beans.UpgradeAction;
35 import org.onap.so.bpmn.core.json.JsonUtils;
36 import com.fasterxml.jackson.core.JsonProcessingException;
37 import com.fasterxml.jackson.databind.ObjectMapper;
38
39 public class PayloadClient {
40
41     protected static ObjectMapper mapper = new ObjectMapper();
42
43     private PayloadClient() {}
44
45     public static Optional<String> upgradeFormat(Optional<String> payload, String vnfName)
46             throws JsonProcessingException {
47         UpgradeAction payloadResult = new UpgradeAction();
48         ConfigurationParametersUpgrade configParams = new ConfigurationParametersUpgrade();
49         String payloadString = payload.isPresent() ? payload.get() : "";
50         String existingSoftware = JsonUtils.getJsonValue(payloadString, "existing_software_version");
51         String newSoftware = JsonUtils.getJsonValue(payloadString, "new_software_version");
52         configParams.setExistingSoftwareVersion(existingSoftware);
53         configParams.setNewSoftwareVersion(newSoftware);
54         configParams.setVnfName(vnfName);
55         payloadResult.setConfigurationParameters(configParams);
56         return Optional.of(mapper.writeValueAsString(payloadResult));
57     }
58
59     public static Optional<String> resumeTrafficFormat(String vnfName) throws JsonProcessingException {
60         ResumeTrafficAction payloadResult = new ResumeTrafficAction();
61         ConfigurationParametersResumeTraffic configParams = new ConfigurationParametersResumeTraffic();
62         configParams.setVnfName(vnfName);
63         payloadResult.setConfigurationParameters(configParams);
64         return Optional.of(mapper.writeValueAsString(payloadResult));
65     }
66
67     public static Optional<String> quiesceTrafficFormat(Optional<String> payload, String vnfName)
68             throws JsonProcessingException {
69         QuiesceTrafficAction payloadResult = new QuiesceTrafficAction();
70         ConfigurationParametersQuiesce configParams = new ConfigurationParametersQuiesce();
71         String payloadString = payload.isPresent() ? payload.get() : "";
72         String operationsTimeout = JsonUtils.getJsonValue(payloadString, "operations_timeout");
73         configParams.setOperationsTimeout(operationsTimeout);
74         configParams.setVnfName(vnfName);
75         payloadResult.setConfigurationParameters(configParams);
76         return Optional.of(mapper.writeValueAsString(payloadResult));
77     }
78
79     public static Optional<String> startStopFormat(String aicIdentity) throws JsonProcessingException {
80         StartStopAction payloadResult = new StartStopAction();
81         payloadResult.setAicIdentity(aicIdentity);
82         return Optional.of(mapper.writeValueAsString(payloadResult));
83     }
84
85     public static Optional<String> healthCheckFormat(String vnfName, String vnfHostIpAddress)
86             throws JsonProcessingException {
87         HealthCheckAction payloadResult = new HealthCheckAction();
88         RequestParametersHealthCheck requestParams = new RequestParametersHealthCheck();
89         requestParams.setHostIpAddress(vnfHostIpAddress);
90         payloadResult.setRequestParameters(requestParams);
91         return Optional.of((mapper.writeValueAsString(payloadResult)));
92     }
93
94     public static Optional<String> snapshotFormat(String vmId, String identityUrl) throws JsonProcessingException {
95         SnapshotAction payloadResult = new SnapshotAction();
96         payloadResult.setVmId(vmId);
97         payloadResult.setIdentityUrl(identityUrl);
98         return Optional.of(mapper.writeValueAsString(payloadResult));
99     }
100
101 }