2 * ============LICENSE_START=======================================================
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
11 * http://www.apache.org/licenses/LICENSE-2.0
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=========================================================
21 package org.onap.so.adapters.vnf;
25 import javax.jws.WebMethod;
26 import javax.jws.WebParam;
27 import javax.jws.WebParam.Mode;
28 import javax.jws.WebService;
29 import javax.xml.bind.annotation.XmlElement;
30 import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
31 import javax.xml.ws.Holder;
32 import org.onap.so.adapters.vnf.exceptions.VnfAlreadyExists;
33 import org.onap.so.adapters.vnf.exceptions.VnfException;
34 import org.onap.so.entity.MsoRequest;
35 import org.onap.so.openstack.beans.VnfRollback;
36 import org.onap.so.openstack.beans.VnfStatus;
37 import org.onap.so.openstack.mappers.MapAdapter;
39 @WebService(name = "VnfAdapter", targetNamespace = "http://org.onap.so/vnf")
40 public interface MsoVnfAdapter {
42 * This is the "Create VNF" Web Service Endpoint definition.
45 public void createVnf(@WebParam(name = "cloudSiteId") @XmlElement(required = true) String cloudSiteId,
46 @WebParam(name = "cloudOwner") @XmlElement(required = false) String cloudOwner,
47 @WebParam(name = "tenantId") @XmlElement(required = true) String tenantId,
48 @WebParam(name = "vnfType") @XmlElement(required = true) String vnfType,
49 @WebParam(name = "vnfVersion") @XmlElement(required = false) String vnfVersion,
50 @WebParam(name = "vnfName") @XmlElement(required = true) String vnfName,
51 @WebParam(name = "requestType") @XmlElement(required = false) String requestType,
52 @WebParam(name = "volumeGroupHeatStackId") @XmlElement(required = false) String volumeGroupHeatStackId,
53 @WebParam(name = "inputs") @XmlJavaTypeAdapter(MapAdapter.class) Map<String, Object> inputs,
54 @WebParam(name = "failIfExists") Boolean failIfExists, @WebParam(name = "backout") Boolean backout,
55 @WebParam(name = "enableBridge") Boolean enableBridge, @WebParam(name = "request") MsoRequest msoRequest,
56 @WebParam(name = "vnfId", mode = Mode.OUT) Holder<String> vnfId,
57 @WebParam(name = "outputs", mode = Mode.OUT) Holder<Map<String, String>> outputs,
58 @WebParam(name = "rollback", mode = Mode.OUT) Holder<VnfRollback> rollback)
59 throws VnfException, VnfAlreadyExists;
62 public void updateVnf(@WebParam(name = "cloudSiteId") @XmlElement(required = true) String cloudSiteId,
63 @WebParam(name = "cloudOwner") @XmlElement(required = false) String cloudOwner,
64 @WebParam(name = "tenantId") @XmlElement(required = true) String tenantId,
65 @WebParam(name = "vnfType") @XmlElement(required = true) String vnfType,
66 @WebParam(name = "vnfVersion") @XmlElement(required = false) String vnfVersion,
67 @WebParam(name = "vnfName") @XmlElement(required = true) String vnfName,
68 @WebParam(name = "requestType") @XmlElement(required = false) String requestType,
69 @WebParam(name = "volumeGroupHeatStackId") @XmlElement(required = false) String volumeGroupHeatStackId,
70 @WebParam(name = "inputs") @XmlJavaTypeAdapter(MapAdapter.class) Map<String, Object> inputs,
71 @WebParam(name = "request") MsoRequest msoRequest,
72 @WebParam(name = "outputs", mode = Mode.OUT) Holder<Map<String, String>> outputs,
73 @WebParam(name = "rollback", mode = Mode.OUT) Holder<VnfRollback> rollback) throws VnfException;
76 public void queryVnf(@WebParam(name = "cloudSiteId") @XmlElement(required = true) String cloudSiteId,
77 @WebParam(name = "cloudOwner") @XmlElement(required = false) String cloudOwner,
78 @WebParam(name = "tenantId") @XmlElement(required = true) String tenantId,
79 @WebParam(name = "vnfName") @XmlElement(required = true) String vnfName,
80 @WebParam(name = "request") MsoRequest msoRequest,
81 @WebParam(name = "vnfExists", mode = Mode.OUT) Holder<Boolean> vnfExists,
82 @WebParam(name = "vnfId", mode = Mode.OUT) Holder<String> vnfId,
83 @WebParam(name = "status", mode = Mode.OUT) Holder<VnfStatus> status,
84 @WebParam(name = "outputs", mode = Mode.OUT) Holder<Map<String, String>> outputs) throws VnfException;
87 public void deleteVnf(@WebParam(name = "cloudSiteId") @XmlElement(required = true) String cloudSiteId,
88 @WebParam(name = "cloudOwner") @XmlElement(required = false) String cloudOwner,
89 @WebParam(name = "tenantId") @XmlElement(required = true) String tenantId,
90 @WebParam(name = "vnfName") @XmlElement(required = true) String vnfName,
91 @WebParam(name = "request") MsoRequest msoRequest) throws VnfException;
95 public void rollbackVnf(@WebParam(name = "rollback") @XmlElement(required = true) VnfRollback rollback)
99 public void createVfModule(@WebParam(name = "cloudSiteId") @XmlElement(required = true) String cloudSiteId,
100 @WebParam(name = "cloudOwner") @XmlElement(required = false) String cloudOwner,
101 @WebParam(name = "tenantId") @XmlElement(required = true) String tenantId,
102 @WebParam(name = "vnfType") @XmlElement(required = true) String vnfType,
103 @WebParam(name = "vnfVersion") @XmlElement(required = false) String vnfVersion,
104 @WebParam(name = "genericVnfId") @XmlElement(required = true) String genericVnfId,
105 @WebParam(name = "vnfName") @XmlElement(required = true) String vnfName,
106 @WebParam(name = "vfModuleId") @XmlElement(required = true) String vfModuleId,
107 @WebParam(name = "requestType") @XmlElement(required = false) String requestType,
108 @WebParam(name = "volumeGroupHeatStackId") @XmlElement(required = false) String volumeGroupHeatStackId,
109 @WebParam(name = "baseVfHeatStackId") @XmlElement(required = false) String baseVfHeatStackId,
110 @WebParam(name = "modelCustomizationUuid") @XmlElement(required = false) String modelCustomizationUuid,
111 @WebParam(name = "inputs") @XmlJavaTypeAdapter(MapAdapter.class) Map<String, Object> inputs,
112 @WebParam(name = "failIfExists") Boolean failIfExists, @WebParam(name = "backout") Boolean backout,
113 @WebParam(name = "enableBridge") Boolean enableBridge, @WebParam(name = "request") MsoRequest msoRequest,
114 @WebParam(name = "vnfId", mode = Mode.OUT) Holder<String> vnfId,
115 @WebParam(name = "outputs", mode = Mode.OUT) Holder<Map<String, String>> outputs,
116 @WebParam(name = "rollback", mode = Mode.OUT) Holder<VnfRollback> rollback)
117 throws VnfException, VnfAlreadyExists;
120 public void deleteVfModule(@WebParam(name = "cloudSiteId") @XmlElement(required = true) String cloudSiteId,
121 @WebParam(name = "cloudOwner") @XmlElement(required = false) String cloudOwner,
122 @WebParam(name = "tenantId") @XmlElement(required = true) String tenantId,
123 @WebParam(name = "vfName") @XmlElement(required = true) String vfName,
124 @WebParam(name = "request") MsoRequest msoRequest,
125 @WebParam(name = "vfModuleOutputs", mode = Mode.OUT) Holder<Map<String, String>> vfModuleOutputs)
129 public void updateVfModule(@WebParam(name = "cloudSiteId") @XmlElement(required = true) String cloudSiteId,
130 @WebParam(name = "cloudOwner") @XmlElement(required = false) String cloudOwner,
131 @WebParam(name = "tenantId") @XmlElement(required = true) String tenantId,
132 @WebParam(name = "vnfType") @XmlElement(required = true) String vnfType,
133 @WebParam(name = "vnfVersion") @XmlElement(required = false) String vnfVersion,
134 @WebParam(name = "vnfName") @XmlElement(required = true) String vnfName,
135 @WebParam(name = "requestType") @XmlElement(required = false) String requestType,
136 @WebParam(name = "volumeGroupHeatStackId") @XmlElement(required = false) String volumeGroupHeatStackId,
137 @WebParam(name = "baseVfHeatStackId") @XmlElement(required = false) String baseVfHeatStackId,
138 @WebParam(name = "vfModuleStackId") @XmlElement(required = false) String vfModuleStackId,
139 @WebParam(name = "modelCustomizationUuid") @XmlElement(required = false) String modelCustomizationUuid,
140 @WebParam(name = "inputs") @XmlJavaTypeAdapter(MapAdapter.class) Map<String, Object> inputs,
141 @WebParam(name = "request") MsoRequest msoRequest,
142 @WebParam(name = "outputs", mode = Mode.OUT) Holder<Map<String, String>> outputs,
143 @WebParam(name = "rollback", mode = Mode.OUT) Holder<VnfRollback> rollback) throws VnfException;
146 public void healthCheck();