fcd78069d3b3dc5367f3653d1e932559980179d6
[so.git] / adapters / mso-vnf-adapter / src / main / java / org / openecomp / mso / adapters / vnf / MsoVnfAdapterAsync.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * OPENECOMP - MSO
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.openecomp.mso.adapters.vnf;
22
23
24 import javax.jws.Oneway;
25 import javax.jws.WebMethod;
26 import javax.jws.WebParam;
27 import javax.jws.WebService;
28 import javax.xml.bind.annotation.XmlElement;
29
30 import org.openecomp.mso.entity.MsoRequest;
31 import org.openecomp.mso.openstack.beans.VnfRollback;
32 import java.util.Map;
33
34 /**
35  * This webservice defines the Asynchronous versions of VNF adapter calls.
36  * The notification messages for final responses are documented elsewhere
37  * (by the client service WSDL).
38  *
39  */
40 @WebService (name="VnfAdapterAsync", targetNamespace="http://org.openecomp.mso/vnfA")
41 public interface MsoVnfAdapterAsync
42 {
43         /**
44          * This is the "Create VNF" Web Service Endpoint definition.
45          */
46         @WebMethod
47         @Oneway
48         public void createVnfA (@WebParam(name="cloudSiteId") @XmlElement(required=true) String cloudSiteId,
49                                                         @WebParam(name="tenantId") @XmlElement(required=true) String tenantId,
50                                                         @WebParam(name="vnfType") @XmlElement(required=true) String vnfType,
51                                                         @WebParam(name="vnfVersion") @XmlElement(required=false) String vnfVersion,
52                                                         @WebParam(name="vnfName") @XmlElement(required=true) String vnfName,
53                                                         @WebParam(name="requestType") @XmlElement(required=false) String requestType,
54                                                         @WebParam(name="volumeGroupHeatStackId") @XmlElement(required=false) String volumeGroupHeatStackId,
55                                                         @WebParam(name="inputs") Map<String,String> inputs,
56                                                         @WebParam(name="failIfExists") Boolean failIfExists,
57                                                         @WebParam(name="backout") Boolean backout,
58                                                         @WebParam(name="messageId") @XmlElement(required=true) String messageId,
59                                                         @WebParam(name="request") MsoRequest msoRequest,
60                                                         @WebParam(name="notificationUrl") @XmlElement(required=true) String notificationUrl );
61         
62         @WebMethod
63         @Oneway
64         public void updateVnfA (@WebParam(name="cloudSiteId") @XmlElement(required=true) String cloudSiteId,
65                                                         @WebParam(name="tenantId") @XmlElement(required=true) String tenantId,
66                                                         @WebParam(name="vnfType") @XmlElement(required=true) String vnfType,
67                                                         @WebParam(name="vnfVersion") @XmlElement(required=false) String vnfVersion,
68                                                         @WebParam(name="vnfName") @XmlElement(required=true) String vnfName,
69                                                         @WebParam(name="requestType") @XmlElement(required=false) String requestType,
70                                                         @WebParam(name="volumeGroupHeatStackId") @XmlElement(required=false) String volumeGroupHeatStackId,
71                                                         @WebParam(name="inputs") Map<String,String> inputs,
72                                                         @WebParam(name="messageId") @XmlElement(required=true) String messageId,
73                                                         @WebParam(name="request") MsoRequest msoRequest,
74                                                         @WebParam(name="notificationUrl") @XmlElement(required=true) String notificationUrl );
75                                                         
76         @WebMethod
77         @Oneway
78         public void queryVnfA (@WebParam(name="cloudSiteId") @XmlElement(required=true) String cloudSiteId,
79                                                         @WebParam(name="tenantId") @XmlElement(required=true) String tenantId,
80                                                         @WebParam(name="vnfName") @XmlElement(required=true) String vnfName,
81                                                         @WebParam(name="messageId") @XmlElement(required=true) String messageId,
82                                                         @WebParam(name="request") MsoRequest msoRequest,
83                                                         @WebParam(name="notificationUrl") @XmlElement(required=true) String notificationUrl );
84
85         @WebMethod
86         @Oneway
87         public void deleteVnfA (@WebParam(name="cloudSiteId") @XmlElement(required=true) String cloudSiteId,
88                                                         @WebParam(name="tenantId") @XmlElement(required=true) String tenantId,
89                                                         @WebParam(name="vnfName") @XmlElement(required=true) String vnfName,
90                                                         @WebParam(name="messageId") @XmlElement(required=true) String messageId,
91                                                         @WebParam(name="request") MsoRequest msoRequest,
92                                                         @WebParam(name="notificationUrl") @XmlElement(required=true) String notificationUrl );
93
94         @WebMethod
95         @Oneway
96         public void rollbackVnfA (@WebParam(name="rollback") @XmlElement(required=true) VnfRollback rollback,
97                                                 @WebParam(name="messageId") @XmlElement(required=true) String messageId,
98                                                 @WebParam(name="notificationUrl") @XmlElement(required=true) String notificationUrl );
99
100         
101         @WebMethod
102         public void healthCheckA ();
103 }