Adding new LCM features to the client lib
[appc.git] / appc-client / client-kit / src / main / java / org / onap / appc / client / lcm / api / LifeCycleManagerStateful.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP : APPC
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Copyright (C) 2017 Amdocs
8  * =============================================================================
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  * 
13  *      http://www.apache.org/licenses/LICENSE-2.0
14  * 
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  * 
21  * ECOMP is a trademark and service mark of AT&T Intellectual Property.
22  * ============LICENSE_END=========================================================
23  */
24
25 /*
26  * NOTE: This file is auto-generated and should not be changed manually.
27  */
28 package org.onap.appc.client.lcm.api;
29
30 import org.onap.appc.client.lcm.model.ActionStatusOutput;
31 import org.onap.appc.client.lcm.model.ActionStatusInput;
32 import org.onap.appc.client.lcm.model.AttachVolumeOutput;
33 import org.onap.appc.client.lcm.model.AttachVolumeInput;
34 import org.onap.appc.client.lcm.model.AuditOutput;
35 import org.onap.appc.client.lcm.model.AuditInput;
36 import org.onap.appc.client.lcm.model.CheckLockOutput;
37 import org.onap.appc.client.lcm.model.CheckLockInput;
38 import org.onap.appc.client.lcm.model.ConfigBackupOutput;
39 import org.onap.appc.client.lcm.model.ConfigBackupInput;
40 import org.onap.appc.client.lcm.model.ConfigBackupDeleteOutput;
41 import org.onap.appc.client.lcm.model.ConfigBackupDeleteInput;
42 import org.onap.appc.client.lcm.model.ConfigExportOutput;
43 import org.onap.appc.client.lcm.model.ConfigExportInput;
44 import org.onap.appc.client.lcm.model.ConfigModifyOutput;
45 import org.onap.appc.client.lcm.model.ConfigModifyInput;
46 import org.onap.appc.client.lcm.model.ConfigRestoreOutput;
47 import org.onap.appc.client.lcm.model.ConfigRestoreInput;
48 import org.onap.appc.client.lcm.model.ConfigScaleoutOutput;
49 import org.onap.appc.client.lcm.model.ConfigScaleoutInput;
50 import org.onap.appc.client.lcm.model.ConfigureOutput;
51 import org.onap.appc.client.lcm.model.ConfigureInput;
52 import org.onap.appc.client.lcm.model.DetachVolumeOutput;
53 import org.onap.appc.client.lcm.model.DetachVolumeInput;
54 import org.onap.appc.client.lcm.model.EvacuateOutput;
55 import org.onap.appc.client.lcm.model.EvacuateInput;
56 import org.onap.appc.client.lcm.model.HealthCheckOutput;
57 import org.onap.appc.client.lcm.model.HealthCheckInput;
58 import org.onap.appc.client.lcm.model.LiveUpgradeOutput;
59 import org.onap.appc.client.lcm.model.LiveUpgradeInput;
60 import org.onap.appc.client.lcm.model.LockOutput;
61 import org.onap.appc.client.lcm.model.LockInput;
62 import org.onap.appc.client.lcm.model.MigrateOutput;
63 import org.onap.appc.client.lcm.model.MigrateInput;
64 import org.onap.appc.client.lcm.model.QueryOutput;
65 import org.onap.appc.client.lcm.model.QueryInput;
66 import org.onap.appc.client.lcm.model.QuiesceTrafficOutput;
67 import org.onap.appc.client.lcm.model.QuiesceTrafficInput;
68 import org.onap.appc.client.lcm.model.RebootOutput;
69 import org.onap.appc.client.lcm.model.RebootInput;
70 import org.onap.appc.client.lcm.model.RebuildOutput;
71 import org.onap.appc.client.lcm.model.RebuildInput;
72 import org.onap.appc.client.lcm.model.RestartOutput;
73 import org.onap.appc.client.lcm.model.RestartInput;
74 import org.onap.appc.client.lcm.model.ResumeTrafficOutput;
75 import org.onap.appc.client.lcm.model.ResumeTrafficInput;
76 import org.onap.appc.client.lcm.model.RollbackOutput;
77 import org.onap.appc.client.lcm.model.RollbackInput;
78 import org.onap.appc.client.lcm.model.SnapshotOutput;
79 import org.onap.appc.client.lcm.model.SnapshotInput;
80 import org.onap.appc.client.lcm.model.SoftwareUploadOutput;
81 import org.onap.appc.client.lcm.model.SoftwareUploadInput;
82 import org.onap.appc.client.lcm.model.StartOutput;
83 import org.onap.appc.client.lcm.model.StartInput;
84 import org.onap.appc.client.lcm.model.StartApplicationOutput;
85 import org.onap.appc.client.lcm.model.StartApplicationInput;
86 import org.onap.appc.client.lcm.model.StopOutput;
87 import org.onap.appc.client.lcm.model.StopInput;
88 import org.onap.appc.client.lcm.model.StopApplicationOutput;
89 import org.onap.appc.client.lcm.model.StopApplicationInput;
90 import org.onap.appc.client.lcm.model.SyncOutput;
91 import org.onap.appc.client.lcm.model.SyncInput;
92 import org.onap.appc.client.lcm.model.TerminateOutput;
93 import org.onap.appc.client.lcm.model.TerminateInput;
94 import org.onap.appc.client.lcm.model.TestOutput;
95 import org.onap.appc.client.lcm.model.TestInput;
96 import org.onap.appc.client.lcm.model.UnlockOutput;
97 import org.onap.appc.client.lcm.model.UnlockInput;
98 import org.onap.appc.client.lcm.model.UpgradeBackoutOutput;
99 import org.onap.appc.client.lcm.model.UpgradeBackoutInput;
100 import org.onap.appc.client.lcm.model.UpgradeBackupOutput;
101 import org.onap.appc.client.lcm.model.UpgradeBackupInput;
102 import org.onap.appc.client.lcm.model.UpgradePostCheckOutput;
103 import org.onap.appc.client.lcm.model.UpgradePostCheckInput;
104 import org.onap.appc.client.lcm.model.UpgradePreCheckOutput;
105 import org.onap.appc.client.lcm.model.UpgradePreCheckInput;
106 import org.onap.appc.client.lcm.model.UpgradeSoftwareOutput;
107 import org.onap.appc.client.lcm.model.UpgradeSoftwareInput;
108 import org.onap.appc.client.lcm.exceptions.AppcClientException;
109 import org.onap.appc.RPC;
110
111 /**
112 * Defines the services and request/response requirements for the ECOMP APP-C component.
113 */
114 @javax.annotation.Generated(
115     value = {"client-kit/open-api-to-java.ftl"},
116     date = "2017-11-27T12:27:49.205-06:00",
117     comments = "Auto-generated from Open API specification")
118 public interface LifeCycleManagerStateful {
119
120     /**
121      * An operation to get the current state of the previously submitted LCM request
122      *
123      * @param actionStatusInput - RPC input object
124      */
125     @RPC(name="action-status", outputType=ActionStatusOutput.class)
126     ActionStatusOutput actionStatus(ActionStatusInput actionStatusInput) throws AppcClientException;
127
128     /**
129      * An operation to get the current state of the previously submitted LCM request
130      *
131      * @param actionStatusInput - RPC input object
132      * @return listener - callback implementation
133      */
134     @RPC(name="action-status", outputType=ActionStatusOutput.class)
135     void actionStatus(ActionStatusInput actionStatusInput, ResponseHandler<ActionStatusOutput> listener) throws AppcClientException;
136
137     /**
138      * An operation to attach a cinder volume to a VM
139      *
140      * @param attachVolumeInput - RPC input object
141      */
142     @RPC(name="attach-volume", outputType=AttachVolumeOutput.class)
143     AttachVolumeOutput attachVolume(AttachVolumeInput attachVolumeInput) throws AppcClientException;
144
145     /**
146      * An operation to attach a cinder volume to a VM
147      *
148      * @param attachVolumeInput - RPC input object
149      * @return listener - callback implementation
150      */
151     @RPC(name="attach-volume", outputType=AttachVolumeOutput.class)
152     void attachVolume(AttachVolumeInput attachVolumeInput, ResponseHandler<AttachVolumeOutput> listener) throws AppcClientException;
153
154     /**
155      * An operation to audit the configurations of a virtual network function (or VM)
156      *
157      * @param auditInput - RPC input object
158      */
159     @RPC(name="audit", outputType=AuditOutput.class)
160     AuditOutput audit(AuditInput auditInput) throws AppcClientException;
161
162     /**
163      * An operation to audit the configurations of a virtual network function (or VM)
164      *
165      * @param auditInput - RPC input object
166      * @return listener - callback implementation
167      */
168     @RPC(name="audit", outputType=AuditOutput.class)
169     void audit(AuditInput auditInput, ResponseHandler<AuditOutput> listener) throws AppcClientException;
170
171     /**
172      * An operation to check VNF lock status
173      *
174      * @param checkLockInput - RPC input object
175      */
176     @RPC(name="check-lock", outputType=CheckLockOutput.class)
177     CheckLockOutput checkLock(CheckLockInput checkLockInput) throws AppcClientException;
178
179     /**
180      * An operation to check VNF lock status
181      *
182      * @param checkLockInput - RPC input object
183      * @return listener - callback implementation
184      */
185     @RPC(name="check-lock", outputType=CheckLockOutput.class)
186     void checkLock(CheckLockInput checkLockInput, ResponseHandler<CheckLockOutput> listener) throws AppcClientException;
187
188     /**
189      * An operation to Backup configurations of a virtual network function (or VM)
190      *
191      * @param configBackupInput - RPC input object
192      */
193     @RPC(name="config-backup", outputType=ConfigBackupOutput.class)
194     ConfigBackupOutput configBackup(ConfigBackupInput configBackupInput) throws AppcClientException;
195
196     /**
197      * An operation to Backup configurations of a virtual network function (or VM)
198      *
199      * @param configBackupInput - RPC input object
200      * @return listener - callback implementation
201      */
202     @RPC(name="config-backup", outputType=ConfigBackupOutput.class)
203     void configBackup(ConfigBackupInput configBackupInput, ResponseHandler<ConfigBackupOutput> listener) throws AppcClientException;
204
205     /**
206      * An operation to Delete backup configurations of a virtual network function (or VM)
207      *
208      * @param configBackupDeleteInput - RPC input object
209      */
210     @RPC(name="config-backup-delete", outputType=ConfigBackupDeleteOutput.class)
211     ConfigBackupDeleteOutput configBackupDelete(ConfigBackupDeleteInput configBackupDeleteInput) throws AppcClientException;
212
213     /**
214      * An operation to Delete backup configurations of a virtual network function (or VM)
215      *
216      * @param configBackupDeleteInput - RPC input object
217      * @return listener - callback implementation
218      */
219     @RPC(name="config-backup-delete", outputType=ConfigBackupDeleteOutput.class)
220     void configBackupDelete(ConfigBackupDeleteInput configBackupDeleteInput, ResponseHandler<ConfigBackupDeleteOutput> listener) throws AppcClientException;
221
222     /**
223      * An operation to Export configurations of a virtual network function (or VM)
224      *
225      * @param configExportInput - RPC input object
226      */
227     @RPC(name="config-export", outputType=ConfigExportOutput.class)
228     ConfigExportOutput configExport(ConfigExportInput configExportInput) throws AppcClientException;
229
230     /**
231      * An operation to Export configurations of a virtual network function (or VM)
232      *
233      * @param configExportInput - RPC input object
234      * @return listener - callback implementation
235      */
236     @RPC(name="config-export", outputType=ConfigExportOutput.class)
237     void configExport(ConfigExportInput configExportInput, ResponseHandler<ConfigExportOutput> listener) throws AppcClientException;
238
239     /**
240      * Use the ModifyConfig command when a full configuration cycle is either not required or is considered too costly. The ModifyConfig LCM action affects only a subset of the total configuration data of a VNF. The set of configuration parameters to be affected is a subset of the total configuration data of the target VNF type. The payload Stop Application must contain the configuration parameters to be modified and their values. A successful modify returns a success response. A failed modify returns a failure response and the specific failure messages in the response payload Stop Application
241      *
242      * @param configModifyInput - RPC input object
243      */
244     @RPC(name="config-modify", outputType=ConfigModifyOutput.class)
245     ConfigModifyOutput configModify(ConfigModifyInput configModifyInput) throws AppcClientException;
246
247     /**
248      * Use the ModifyConfig command when a full configuration cycle is either not required or is considered too costly. The ModifyConfig LCM action affects only a subset of the total configuration data of a VNF. The set of configuration parameters to be affected is a subset of the total configuration data of the target VNF type. The payload Stop Application must contain the configuration parameters to be modified and their values. A successful modify returns a success response. A failed modify returns a failure response and the specific failure messages in the response payload Stop Application
249      *
250      * @param configModifyInput - RPC input object
251      * @return listener - callback implementation
252      */
253     @RPC(name="config-modify", outputType=ConfigModifyOutput.class)
254     void configModify(ConfigModifyInput configModifyInput, ResponseHandler<ConfigModifyOutput> listener) throws AppcClientException;
255
256     /**
257      * An operation to restore the configurations of a virtual network function (or VM)
258      *
259      * @param configRestoreInput - RPC input object
260      */
261     @RPC(name="config-restore", outputType=ConfigRestoreOutput.class)
262     ConfigRestoreOutput configRestore(ConfigRestoreInput configRestoreInput) throws AppcClientException;
263
264     /**
265      * An operation to restore the configurations of a virtual network function (or VM)
266      *
267      * @param configRestoreInput - RPC input object
268      * @return listener - callback implementation
269      */
270     @RPC(name="config-restore", outputType=ConfigRestoreOutput.class)
271     void configRestore(ConfigRestoreInput configRestoreInput, ResponseHandler<ConfigRestoreOutput> listener) throws AppcClientException;
272
273     /**
274      * An operation to scaleout the configurations of a virtual network function (or VM)
275      *
276      * @param configScaleoutInput - RPC input object
277      */
278     @RPC(name="config-scaleout", outputType=ConfigScaleoutOutput.class)
279     ConfigScaleoutOutput configScaleout(ConfigScaleoutInput configScaleoutInput) throws AppcClientException;
280
281     /**
282      * An operation to scaleout the configurations of a virtual network function (or VM)
283      *
284      * @param configScaleoutInput - RPC input object
285      * @return listener - callback implementation
286      */
287     @RPC(name="config-scaleout", outputType=ConfigScaleoutOutput.class)
288     void configScaleout(ConfigScaleoutInput configScaleoutInput, ResponseHandler<ConfigScaleoutOutput> listener) throws AppcClientException;
289
290     /**
291      * An operation to configure the configurations of a virtual network function (or VM)
292      *
293      * @param configureInput - RPC input object
294      */
295     @RPC(name="configure", outputType=ConfigureOutput.class)
296     ConfigureOutput configure(ConfigureInput configureInput) throws AppcClientException;
297
298     /**
299      * An operation to configure the configurations of a virtual network function (or VM)
300      *
301      * @param configureInput - RPC input object
302      * @return listener - callback implementation
303      */
304     @RPC(name="configure", outputType=ConfigureOutput.class)
305     void configure(ConfigureInput configureInput, ResponseHandler<ConfigureOutput> listener) throws AppcClientException;
306
307     /**
308      * An operation to detach a cinder volume from a VM
309      *
310      * @param detachVolumeInput - RPC input object
311      */
312     @RPC(name="detach-volume", outputType=DetachVolumeOutput.class)
313     DetachVolumeOutput detachVolume(DetachVolumeInput detachVolumeInput) throws AppcClientException;
314
315     /**
316      * An operation to detach a cinder volume from a VM
317      *
318      * @param detachVolumeInput - RPC input object
319      * @return listener - callback implementation
320      */
321     @RPC(name="detach-volume", outputType=DetachVolumeOutput.class)
322     void detachVolume(DetachVolumeInput detachVolumeInput, ResponseHandler<DetachVolumeOutput> listener) throws AppcClientException;
323
324     /**
325      * An operation to evacuate a virtual network function (or VM)
326      *
327      * @param evacuateInput - RPC input object
328      */
329     @RPC(name="evacuate", outputType=EvacuateOutput.class)
330     EvacuateOutput evacuate(EvacuateInput evacuateInput) throws AppcClientException;
331
332     /**
333      * An operation to evacuate a virtual network function (or VM)
334      *
335      * @param evacuateInput - RPC input object
336      * @return listener - callback implementation
337      */
338     @RPC(name="evacuate", outputType=EvacuateOutput.class)
339     void evacuate(EvacuateInput evacuateInput, ResponseHandler<EvacuateOutput> listener) throws AppcClientException;
340
341     /**
342      * An operation to perform health check of vSCP prior its upgrading
343      *
344      * @param healthCheckInput - RPC input object
345      */
346     @RPC(name="health-check", outputType=HealthCheckOutput.class)
347     HealthCheckOutput healthCheck(HealthCheckInput healthCheckInput) throws AppcClientException;
348
349     /**
350      * An operation to perform health check of vSCP prior its upgrading
351      *
352      * @param healthCheckInput - RPC input object
353      * @return listener - callback implementation
354      */
355     @RPC(name="health-check", outputType=HealthCheckOutput.class)
356     void healthCheck(HealthCheckInput healthCheckInput, ResponseHandler<HealthCheckOutput> listener) throws AppcClientException;
357
358     /**
359      * An operation to perform upgrade of vSCP
360      *
361      * @param liveUpgradeInput - RPC input object
362      */
363     @RPC(name="live-upgrade", outputType=LiveUpgradeOutput.class)
364     LiveUpgradeOutput liveUpgrade(LiveUpgradeInput liveUpgradeInput) throws AppcClientException;
365
366     /**
367      * An operation to perform upgrade of vSCP
368      *
369      * @param liveUpgradeInput - RPC input object
370      * @return listener - callback implementation
371      */
372     @RPC(name="live-upgrade", outputType=LiveUpgradeOutput.class)
373     void liveUpgrade(LiveUpgradeInput liveUpgradeInput, ResponseHandler<LiveUpgradeOutput> listener) throws AppcClientException;
374
375     /**
376      * An operation to perform VNF lock operation
377      *
378      * @param lockInput - RPC input object
379      */
380     @RPC(name="lock", outputType=LockOutput.class)
381     LockOutput lock(LockInput lockInput) throws AppcClientException;
382
383     /**
384      * An operation to perform VNF lock operation
385      *
386      * @param lockInput - RPC input object
387      * @return listener - callback implementation
388      */
389     @RPC(name="lock", outputType=LockOutput.class)
390     void lock(LockInput lockInput, ResponseHandler<LockOutput> listener) throws AppcClientException;
391
392     /**
393      * An operation to migrate a virtual network function (or VM)
394      *
395      * @param migrateInput - RPC input object
396      */
397     @RPC(name="migrate", outputType=MigrateOutput.class)
398     MigrateOutput migrate(MigrateInput migrateInput) throws AppcClientException;
399
400     /**
401      * An operation to migrate a virtual network function (or VM)
402      *
403      * @param migrateInput - RPC input object
404      * @return listener - callback implementation
405      */
406     @RPC(name="migrate", outputType=MigrateOutput.class)
407     void migrate(MigrateInput migrateInput, ResponseHandler<MigrateOutput> listener) throws AppcClientException;
408
409     /**
410      * An operation to query the status of a targe VNF. Returns information on each VM, including state (active or standby) and status (healthy or unhealthy)
411      *
412      * @param queryInput - RPC input object
413      */
414     @RPC(name="query", outputType=QueryOutput.class)
415     QueryOutput query(QueryInput queryInput) throws AppcClientException;
416
417     /**
418      * An operation to query the status of a targe VNF. Returns information on each VM, including state (active or standby) and status (healthy or unhealthy)
419      *
420      * @param queryInput - RPC input object
421      * @return listener - callback implementation
422      */
423     @RPC(name="query", outputType=QueryOutput.class)
424     void query(QueryInput queryInput, ResponseHandler<QueryOutput> listener) throws AppcClientException;
425
426     /**
427      * An operation to stop traffic gracefully on the VF. It stops traffic gracefully without stopping the application
428      *
429      * @param quiesceTrafficInput - RPC input object
430      */
431     @RPC(name="quiesce-traffic", outputType=QuiesceTrafficOutput.class)
432     QuiesceTrafficOutput quiesceTraffic(QuiesceTrafficInput quiesceTrafficInput) throws AppcClientException;
433
434     /**
435      * An operation to stop traffic gracefully on the VF. It stops traffic gracefully without stopping the application
436      *
437      * @param quiesceTrafficInput - RPC input object
438      * @return listener - callback implementation
439      */
440     @RPC(name="quiesce-traffic", outputType=QuiesceTrafficOutput.class)
441     void quiesceTraffic(QuiesceTrafficInput quiesceTrafficInput, ResponseHandler<QuiesceTrafficOutput> listener) throws AppcClientException;
442
443     /**
444      * An operation to reboot a specified virtual machine (VM)
445      *
446      * @param rebootInput - RPC input object
447      */
448     @RPC(name="reboot", outputType=RebootOutput.class)
449     RebootOutput reboot(RebootInput rebootInput) throws AppcClientException;
450
451     /**
452      * An operation to reboot a specified virtual machine (VM)
453      *
454      * @param rebootInput - RPC input object
455      * @return listener - callback implementation
456      */
457     @RPC(name="reboot", outputType=RebootOutput.class)
458     void reboot(RebootInput rebootInput, ResponseHandler<RebootOutput> listener) throws AppcClientException;
459
460     /**
461      * An operation to rebuild a virtual network function (or VM)
462      *
463      * @param rebuildInput - RPC input object
464      */
465     @RPC(name="rebuild", outputType=RebuildOutput.class)
466     RebuildOutput rebuild(RebuildInput rebuildInput) throws AppcClientException;
467
468     /**
469      * An operation to rebuild a virtual network function (or VM)
470      *
471      * @param rebuildInput - RPC input object
472      * @return listener - callback implementation
473      */
474     @RPC(name="rebuild", outputType=RebuildOutput.class)
475     void rebuild(RebuildInput rebuildInput, ResponseHandler<RebuildOutput> listener) throws AppcClientException;
476
477     /**
478      * An operation to restart a virtual network function (or VM)
479      *
480      * @param restartInput - RPC input object
481      */
482     @RPC(name="restart", outputType=RestartOutput.class)
483     RestartOutput restart(RestartInput restartInput) throws AppcClientException;
484
485     /**
486      * An operation to restart a virtual network function (or VM)
487      *
488      * @param restartInput - RPC input object
489      * @return listener - callback implementation
490      */
491     @RPC(name="restart", outputType=RestartOutput.class)
492     void restart(RestartInput restartInput, ResponseHandler<RestartOutput> listener) throws AppcClientException;
493
494     /**
495      * An operation to resume traffic gracefully on the VF. It resumes traffic gracefully without stopping the application
496      *
497      * @param resumeTrafficInput - RPC input object
498      */
499     @RPC(name="resume-traffic", outputType=ResumeTrafficOutput.class)
500     ResumeTrafficOutput resumeTraffic(ResumeTrafficInput resumeTrafficInput) throws AppcClientException;
501
502     /**
503      * An operation to resume traffic gracefully on the VF. It resumes traffic gracefully without stopping the application
504      *
505      * @param resumeTrafficInput - RPC input object
506      * @return listener - callback implementation
507      */
508     @RPC(name="resume-traffic", outputType=ResumeTrafficOutput.class)
509     void resumeTraffic(ResumeTrafficInput resumeTrafficInput, ResponseHandler<ResumeTrafficOutput> listener) throws AppcClientException;
510
511     /**
512      * An operation to rollback to particular snapshot of a virtual network function (or VM)
513      *
514      * @param rollbackInput - RPC input object
515      */
516     @RPC(name="rollback", outputType=RollbackOutput.class)
517     RollbackOutput rollback(RollbackInput rollbackInput) throws AppcClientException;
518
519     /**
520      * An operation to rollback to particular snapshot of a virtual network function (or VM)
521      *
522      * @param rollbackInput - RPC input object
523      * @return listener - callback implementation
524      */
525     @RPC(name="rollback", outputType=RollbackOutput.class)
526     void rollback(RollbackInput rollbackInput, ResponseHandler<RollbackOutput> listener) throws AppcClientException;
527
528     /**
529      * An operation to create a snapshot of a virtual network function (or VM)
530      *
531      * @param snapshotInput - RPC input object
532      */
533     @RPC(name="snapshot", outputType=SnapshotOutput.class)
534     SnapshotOutput snapshot(SnapshotInput snapshotInput) throws AppcClientException;
535
536     /**
537      * An operation to create a snapshot of a virtual network function (or VM)
538      *
539      * @param snapshotInput - RPC input object
540      * @return listener - callback implementation
541      */
542     @RPC(name="snapshot", outputType=SnapshotOutput.class)
543     void snapshot(SnapshotInput snapshotInput, ResponseHandler<SnapshotOutput> listener) throws AppcClientException;
544
545     /**
546      * An operation to upload a new version of vSCP image to vSCP for updating it
547      *
548      * @param softwareUploadInput - RPC input object
549      */
550     @RPC(name="software-upload", outputType=SoftwareUploadOutput.class)
551     SoftwareUploadOutput softwareUpload(SoftwareUploadInput softwareUploadInput) throws AppcClientException;
552
553     /**
554      * An operation to upload a new version of vSCP image to vSCP for updating it
555      *
556      * @param softwareUploadInput - RPC input object
557      * @return listener - callback implementation
558      */
559     @RPC(name="software-upload", outputType=SoftwareUploadOutput.class)
560     void softwareUpload(SoftwareUploadInput softwareUploadInput, ResponseHandler<SoftwareUploadOutput> listener) throws AppcClientException;
561
562     /**
563      * An operation to start a virtual network function (or VM)
564      *
565      * @param startInput - RPC input object
566      */
567     @RPC(name="start", outputType=StartOutput.class)
568     StartOutput start(StartInput startInput) throws AppcClientException;
569
570     /**
571      * An operation to start a virtual network function (or VM)
572      *
573      * @param startInput - RPC input object
574      * @return listener - callback implementation
575      */
576     @RPC(name="start", outputType=StartOutput.class)
577     void start(StartInput startInput, ResponseHandler<StartOutput> listener) throws AppcClientException;
578
579     /**
580      * An operation to perform VNF Start Application operation
581      *
582      * @param startApplicationInput - RPC input object
583      */
584     @RPC(name="start-application", outputType=StartApplicationOutput.class)
585     StartApplicationOutput startApplication(StartApplicationInput startApplicationInput) throws AppcClientException;
586
587     /**
588      * An operation to perform VNF Start Application operation
589      *
590      * @param startApplicationInput - RPC input object
591      * @return listener - callback implementation
592      */
593     @RPC(name="start-application", outputType=StartApplicationOutput.class)
594     void startApplication(StartApplicationInput startApplicationInput, ResponseHandler<StartApplicationOutput> listener) throws AppcClientException;
595
596     /**
597      * An operation to stop the configurations of a virtual network function (or VM)
598      *
599      * @param stopInput - RPC input object
600      */
601     @RPC(name="stop", outputType=StopOutput.class)
602     StopOutput stop(StopInput stopInput) throws AppcClientException;
603
604     /**
605      * An operation to stop the configurations of a virtual network function (or VM)
606      *
607      * @param stopInput - RPC input object
608      * @return listener - callback implementation
609      */
610     @RPC(name="stop", outputType=StopOutput.class)
611     void stop(StopInput stopInput, ResponseHandler<StopOutput> listener) throws AppcClientException;
612
613     /**
614      * An operation to Stop Application traffic to a virtual network function
615      *
616      * @param stopApplicationInput - RPC input object
617      */
618     @RPC(name="stop-application", outputType=StopApplicationOutput.class)
619     StopApplicationOutput stopApplication(StopApplicationInput stopApplicationInput) throws AppcClientException;
620
621     /**
622      * An operation to Stop Application traffic to a virtual network function
623      *
624      * @param stopApplicationInput - RPC input object
625      * @return listener - callback implementation
626      */
627     @RPC(name="stop-application", outputType=StopApplicationOutput.class)
628     void stopApplication(StopApplicationInput stopApplicationInput, ResponseHandler<StopApplicationOutput> listener) throws AppcClientException;
629
630     /**
631      * An operation to sync the configurations of a virtual network function (or VM)
632      *
633      * @param syncInput - RPC input object
634      */
635     @RPC(name="sync", outputType=SyncOutput.class)
636     SyncOutput sync(SyncInput syncInput) throws AppcClientException;
637
638     /**
639      * An operation to sync the configurations of a virtual network function (or VM)
640      *
641      * @param syncInput - RPC input object
642      * @return listener - callback implementation
643      */
644     @RPC(name="sync", outputType=SyncOutput.class)
645     void sync(SyncInput syncInput, ResponseHandler<SyncOutput> listener) throws AppcClientException;
646
647     /**
648      * An operation to terminate the configurations of a virtual network function (or VM)
649      *
650      * @param terminateInput - RPC input object
651      */
652     @RPC(name="terminate", outputType=TerminateOutput.class)
653     TerminateOutput terminate(TerminateInput terminateInput) throws AppcClientException;
654
655     /**
656      * An operation to terminate the configurations of a virtual network function (or VM)
657      *
658      * @param terminateInput - RPC input object
659      * @return listener - callback implementation
660      */
661     @RPC(name="terminate", outputType=TerminateOutput.class)
662     void terminate(TerminateInput terminateInput, ResponseHandler<TerminateOutput> listener) throws AppcClientException;
663
664     /**
665      * An operation to test the configurations of a virtual network function (or VM)
666      *
667      * @param testInput - RPC input object
668      */
669     @RPC(name="test", outputType=TestOutput.class)
670     TestOutput test(TestInput testInput) throws AppcClientException;
671
672     /**
673      * An operation to test the configurations of a virtual network function (or VM)
674      *
675      * @param testInput - RPC input object
676      * @return listener - callback implementation
677      */
678     @RPC(name="test", outputType=TestOutput.class)
679     void test(TestInput testInput, ResponseHandler<TestOutput> listener) throws AppcClientException;
680
681     /**
682      * An operation to perform VNF unlock operation
683      *
684      * @param unlockInput - RPC input object
685      */
686     @RPC(name="unlock", outputType=UnlockOutput.class)
687     UnlockOutput unlock(UnlockInput unlockInput) throws AppcClientException;
688
689     /**
690      * An operation to perform VNF unlock operation
691      *
692      * @param unlockInput - RPC input object
693      * @return listener - callback implementation
694      */
695     @RPC(name="unlock", outputType=UnlockOutput.class)
696     void unlock(UnlockInput unlockInput, ResponseHandler<UnlockOutput> listener) throws AppcClientException;
697
698     /**
699      * An operation does a backout after an UpgradeSoftware is completed (either successfully or unsuccessfully).
700      *
701      * @param upgradeBackoutInput - RPC input object
702      */
703     @RPC(name="upgrade-backout", outputType=UpgradeBackoutOutput.class)
704     UpgradeBackoutOutput upgradeBackout(UpgradeBackoutInput upgradeBackoutInput) throws AppcClientException;
705
706     /**
707      * An operation does a backout after an UpgradeSoftware is completed (either successfully or unsuccessfully).
708      *
709      * @param upgradeBackoutInput - RPC input object
710      * @return listener - callback implementation
711      */
712     @RPC(name="upgrade-backout", outputType=UpgradeBackoutOutput.class)
713     void upgradeBackout(UpgradeBackoutInput upgradeBackoutInput, ResponseHandler<UpgradeBackoutOutput> listener) throws AppcClientException;
714
715     /**
716      * An operation to do full backup of the VNF data prior to an upgrade.
717      *
718      * @param upgradeBackupInput - RPC input object
719      */
720     @RPC(name="upgrade-backup", outputType=UpgradeBackupOutput.class)
721     UpgradeBackupOutput upgradeBackup(UpgradeBackupInput upgradeBackupInput) throws AppcClientException;
722
723     /**
724      * An operation to do full backup of the VNF data prior to an upgrade.
725      *
726      * @param upgradeBackupInput - RPC input object
727      * @return listener - callback implementation
728      */
729     @RPC(name="upgrade-backup", outputType=UpgradeBackupOutput.class)
730     void upgradeBackup(UpgradeBackupInput upgradeBackupInput, ResponseHandler<UpgradeBackupOutput> listener) throws AppcClientException;
731
732     /**
733      * An operation to check the VNF upgrade has been successful completed and all processes are running properly.
734      *
735      * @param upgradePostCheckInput - RPC input object
736      */
737     @RPC(name="upgrade-post-check", outputType=UpgradePostCheckOutput.class)
738     UpgradePostCheckOutput upgradePostCheck(UpgradePostCheckInput upgradePostCheckInput) throws AppcClientException;
739
740     /**
741      * An operation to check the VNF upgrade has been successful completed and all processes are running properly.
742      *
743      * @param upgradePostCheckInput - RPC input object
744      * @return listener - callback implementation
745      */
746     @RPC(name="upgrade-post-check", outputType=UpgradePostCheckOutput.class)
747     void upgradePostCheck(UpgradePostCheckInput upgradePostCheckInput, ResponseHandler<UpgradePostCheckOutput> listener) throws AppcClientException;
748
749     /**
750      * An operation to check that the VNF has the correct software version needed for a software upgrade.
751      *
752      * @param upgradePreCheckInput - RPC input object
753      */
754     @RPC(name="upgrade-pre-check", outputType=UpgradePreCheckOutput.class)
755     UpgradePreCheckOutput upgradePreCheck(UpgradePreCheckInput upgradePreCheckInput) throws AppcClientException;
756
757     /**
758      * An operation to check that the VNF has the correct software version needed for a software upgrade.
759      *
760      * @param upgradePreCheckInput - RPC input object
761      * @return listener - callback implementation
762      */
763     @RPC(name="upgrade-pre-check", outputType=UpgradePreCheckOutput.class)
764     void upgradePreCheck(UpgradePreCheckInput upgradePreCheckInput, ResponseHandler<UpgradePreCheckOutput> listener) throws AppcClientException;
765
766     /**
767      * An operation to upgrade the target VNF to a new version and expected that the VNF is in a quiesced status .
768      *
769      * @param upgradeSoftwareInput - RPC input object
770      */
771     @RPC(name="upgrade-software", outputType=UpgradeSoftwareOutput.class)
772     UpgradeSoftwareOutput upgradeSoftware(UpgradeSoftwareInput upgradeSoftwareInput) throws AppcClientException;
773
774     /**
775      * An operation to upgrade the target VNF to a new version and expected that the VNF is in a quiesced status .
776      *
777      * @param upgradeSoftwareInput - RPC input object
778      * @return listener - callback implementation
779      */
780     @RPC(name="upgrade-software", outputType=UpgradeSoftwareOutput.class)
781     void upgradeSoftware(UpgradeSoftwareInput upgradeSoftwareInput, ResponseHandler<UpgradeSoftwareOutput> listener) throws AppcClientException;
782
783 }