2 * ============LICENSE_START=======================================================
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
13 * http://www.apache.org/licenses/LICENSE-2.0
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.
21 * ECOMP is a trademark and service mark of AT&T Intellectual Property.
22 * ============LICENSE_END=========================================================
26 * NOTE: This file is auto-generated and should not be changed manually.
28 package org.openecomp.appc.client.lcm.api;
30 import org.openecomp.appc.client.lcm.model.AuditOutput;
31 import org.openecomp.appc.client.lcm.model.AuditInput;
32 import org.openecomp.appc.client.lcm.model.CheckLockOutput;
33 import org.openecomp.appc.client.lcm.model.CheckLockInput;
34 import org.openecomp.appc.client.lcm.model.ConfigBackupOutput;
35 import org.openecomp.appc.client.lcm.model.ConfigBackupInput;
36 import org.openecomp.appc.client.lcm.model.ConfigBackupDeleteOutput;
37 import org.openecomp.appc.client.lcm.model.ConfigBackupDeleteInput;
38 import org.openecomp.appc.client.lcm.model.ConfigExportOutput;
39 import org.openecomp.appc.client.lcm.model.ConfigExportInput;
40 import org.openecomp.appc.client.lcm.model.ConfigModifyOutput;
41 import org.openecomp.appc.client.lcm.model.ConfigModifyInput;
42 import org.openecomp.appc.client.lcm.model.ConfigRestoreOutput;
43 import org.openecomp.appc.client.lcm.model.ConfigRestoreInput;
44 import org.openecomp.appc.client.lcm.model.ConfigScaleoutOutput;
45 import org.openecomp.appc.client.lcm.model.ConfigScaleoutInput;
46 import org.openecomp.appc.client.lcm.model.ConfigureOutput;
47 import org.openecomp.appc.client.lcm.model.ConfigureInput;
48 import org.openecomp.appc.client.lcm.model.EvacuateOutput;
49 import org.openecomp.appc.client.lcm.model.EvacuateInput;
50 import org.openecomp.appc.client.lcm.model.HealthCheckOutput;
51 import org.openecomp.appc.client.lcm.model.HealthCheckInput;
52 import org.openecomp.appc.client.lcm.model.LiveUpgradeOutput;
53 import org.openecomp.appc.client.lcm.model.LiveUpgradeInput;
54 import org.openecomp.appc.client.lcm.model.LockOutput;
55 import org.openecomp.appc.client.lcm.model.LockInput;
56 import org.openecomp.appc.client.lcm.model.MigrateOutput;
57 import org.openecomp.appc.client.lcm.model.MigrateInput;
58 import org.openecomp.appc.client.lcm.model.RebuildOutput;
59 import org.openecomp.appc.client.lcm.model.RebuildInput;
60 import org.openecomp.appc.client.lcm.model.RestartOutput;
61 import org.openecomp.appc.client.lcm.model.RestartInput;
62 import org.openecomp.appc.client.lcm.model.RollbackOutput;
63 import org.openecomp.appc.client.lcm.model.RollbackInput;
64 import org.openecomp.appc.client.lcm.model.SnapshotOutput;
65 import org.openecomp.appc.client.lcm.model.SnapshotInput;
66 import org.openecomp.appc.client.lcm.model.SoftwareUploadOutput;
67 import org.openecomp.appc.client.lcm.model.SoftwareUploadInput;
68 import org.openecomp.appc.client.lcm.model.StartOutput;
69 import org.openecomp.appc.client.lcm.model.StartInput;
70 import org.openecomp.appc.client.lcm.model.StopOutput;
71 import org.openecomp.appc.client.lcm.model.StopInput;
72 import org.openecomp.appc.client.lcm.model.SyncOutput;
73 import org.openecomp.appc.client.lcm.model.SyncInput;
74 import org.openecomp.appc.client.lcm.model.TerminateOutput;
75 import org.openecomp.appc.client.lcm.model.TerminateInput;
76 import org.openecomp.appc.client.lcm.model.TestOutput;
77 import org.openecomp.appc.client.lcm.model.TestInput;
78 import org.openecomp.appc.client.lcm.model.UnlockOutput;
79 import org.openecomp.appc.client.lcm.model.UnlockInput;
80 import org.openecomp.appc.RPC;
81 import org.openecomp.appc.client.lcm.exceptions.AppcClientException;
84 * Defines the services and request/response requirements for the ECOMP APP-C
87 @javax.annotation.Generated(value = {
88 "templates/client-kit/open-api-to-java.ftl" }, date = "2017-05-04T20:09:01.723+05:30", comments = "Auto-generated from Open API specification")
89 public interface LifeCycleManagerStateful {
92 * The Audit command compares the configuration of the VNF associated with the
93 * current request against the configuration that is stored in APPC's
94 * configuration store. A successful Audit means that the current VNF
95 * configuration matches the APPC stored configuration. A failed Audit indicates
96 * that the request configuration is different from the stored configuration.
97 * This command can be applied to any VNF type. The only restriction is that a
98 * particular VNF should be able to support the interface for Reading
99 * Configuration using existing adapters and use the following protocols: CLI,
100 * RestConf and XML. The Audit action does not require any payload parameters
104 * @throws AppcClientException
105 * - throw AppcClientException
107 @RPC(name = "audit", outputType = AuditOutput.class)
108 AuditOutput audit(AuditInput auditInput) throws AppcClientException;
111 * The Audit command compares the configuration of the VNF associated with the
112 * current request against the configuration that is stored in APPC's
113 * configuration store. A successful Audit means that the current VNF
114 * configuration matches the APPC stored configuration. A failed Audit indicates
115 * that the request configuration is different from the stored configuration.
116 * This command can be applied to any VNF type. The only restriction is that a
117 * particular VNF should be able to support the interface for Reading
118 * Configuration using existing adapters and use the following protocols: CLI,
119 * RestConf and XML. The Audit action does not require any payload parameters
124 * - callback implementation
125 * @throws AppcClientException
126 * - throw AppcClientException
128 @RPC(name = "audit", outputType = AuditOutput.class)
129 void audit(AuditInput auditInput, ResponseHandler<AuditOutput> listener) throws AppcClientException;
132 * The CheckLock command returns true if the specified VNF is locked, false if
133 * not. A CheckLock command is deemed successful if the processing completes
134 * without error, whether the VNF is locked or not. The command returns only a
135 * single response with a final status. The APPC also locks the target VNF
136 * during any command processing, so a VNF can have a locked status even if no
137 * Lock command has been explicitly called. The CheckLock command returns a
138 * specific response structure that extends the default LCM response. The
139 * CheckLock action does not require any payload parameters
141 * @param checkLockInput
143 * @throws AppcClientException
144 * - throw AppcClientException
146 @RPC(name = "check-lock", outputType = CheckLockOutput.class)
147 CheckLockOutput checkLock(CheckLockInput checkLockInput) throws AppcClientException;
150 * The CheckLock command returns true if the specified VNF is locked, false if
151 * not. A CheckLock command is deemed successful if the processing completes
152 * without error, whether the VNF is locked or not. The command returns only a
153 * single response with a final status. The APPC also locks the target VNF
154 * during any command processing, so a VNF can have a locked status even if no
155 * Lock command has been explicitly called. The CheckLock command returns a
156 * specific response structure that extends the default LCM response. The
157 * CheckLock action does not require any payload parameters
159 * @param checkLockInput
162 * - callback implementation
163 * @throws AppcClientException
164 * - throw AppcClientException
166 @RPC(name = "check-lock", outputType = CheckLockOutput.class)
167 void checkLock(CheckLockInput checkLockInput, ResponseHandler<CheckLockOutput> listener) throws AppcClientException;
170 * An operation to Backup configurations of a virtual network function (or VM)
172 * @param configBackupInput
174 * @throws AppcClientException
175 * - throw AppcClientException
177 @RPC(name = "config-backup", outputType = ConfigBackupOutput.class)
178 ConfigBackupOutput configBackup(ConfigBackupInput configBackupInput) throws AppcClientException;
181 * An operation to Backup configurations of a virtual network function (or VM)
183 * @param configBackupInput
186 * - callback implementation
187 * @throws AppcClientException
188 * - throw AppcClientException
190 @RPC(name = "config-backup", outputType = ConfigBackupOutput.class)
191 void configBackup(ConfigBackupInput configBackupInput, ResponseHandler<ConfigBackupOutput> listener)
192 throws AppcClientException;
195 * An operation to Delete backup configurations of a virtual network function
198 * @param configBackupDeleteInput
200 * @throws AppcClientException
201 * - throw AppcClientException
203 @RPC(name = "config-backup-delete", outputType = ConfigBackupDeleteOutput.class)
204 ConfigBackupDeleteOutput configBackupDelete(ConfigBackupDeleteInput configBackupDeleteInput)
205 throws AppcClientException;
208 * An operation to Delete backup configurations of a virtual network function
211 * @param configBackupDeleteInput
214 * - callback implementation
215 * @throws AppcClientException
216 * - throw AppcClientException
218 @RPC(name = "config-backup-delete", outputType = ConfigBackupDeleteOutput.class)
219 void configBackupDelete(ConfigBackupDeleteInput configBackupDeleteInput,
220 ResponseHandler<ConfigBackupDeleteOutput> listener) throws AppcClientException;
223 * An operation to Export configurations of a virtual network function (or VM)
225 * @param configExportInput
227 * @throws AppcClientException
228 * - throw AppcClientException
230 @RPC(name = "config-export", outputType = ConfigExportOutput.class)
231 ConfigExportOutput configExport(ConfigExportInput configExportInput) throws AppcClientException;
234 * An operation to Export configurations of a virtual network function (or VM)
236 * @param configExportInput
239 * - callback implementation
240 * @throws AppcClientException
241 * - throw AppcClientException
243 @RPC(name = "config-export", outputType = ConfigExportOutput.class)
244 void configExport(ConfigExportInput configExportInput, ResponseHandler<ConfigExportOutput> listener)
245 throws AppcClientException;
248 * Use the ModifyConfig command when a full configuration cycle is either not
249 * required or is considered too costly. The ModifyConfig LCM action affects
250 * only a subset of the total configuration data of a VNF. The set of
251 * configuration parameters to be affected is a subset of the total
252 * configuration data of the target VNF type. The payload block must contain the
253 * configuration parameters to be modified and their values. A successful modify
254 * returns a success response. A failed modify returns a failure response and
255 * the specific failure messages in the response payload block
257 * @param configModifyInput
259 * @throws AppcClientException
260 * - throw AppcClientException
262 @RPC(name = "config-modify", outputType = ConfigModifyOutput.class)
263 ConfigModifyOutput configModify(ConfigModifyInput configModifyInput) throws AppcClientException;
266 * Use the ModifyConfig command when a full configuration cycle is either not
267 * required or is considered too costly. The ModifyConfig LCM action affects
268 * only a subset of the total configuration data of a VNF. The set of
269 * configuration parameters to be affected is a subset of the total
270 * configuration data of the target VNF type. The payload block must contain the
271 * configuration parameters to be modified and their values. A successful modify
272 * returns a success response. A failed modify returns a failure response and
273 * the specific failure messages in the response payload block
275 * @param configModifyInput
278 * - callback implementation
279 * @throws AppcClientException
280 * - throw AppcClientException
282 @RPC(name = "config-modify", outputType = ConfigModifyOutput.class)
283 void configModify(ConfigModifyInput configModifyInput, ResponseHandler<ConfigModifyOutput> listener)
284 throws AppcClientException;
287 * An operation to restore the configurations of a virtual network function (or
290 * @param configRestoreInput
292 * @throws AppcClientException
293 * - throw AppcClientException
295 @RPC(name = "config-restore", outputType = ConfigRestoreOutput.class)
296 ConfigRestoreOutput configRestore(ConfigRestoreInput configRestoreInput) throws AppcClientException;
299 * An operation to restore the configurations of a virtual network function (or
302 * @param configRestoreInput
305 * - callback implementation
306 * @throws AppcClientException
307 * - throw AppcClientException
309 @RPC(name = "config-restore", outputType = ConfigRestoreOutput.class)
310 void configRestore(ConfigRestoreInput configRestoreInput, ResponseHandler<ConfigRestoreOutput> listener)
311 throws AppcClientException;
314 * An operation to scaleout the configurations of a virtual network function (or
317 * @param configScaleoutInput
319 * @throws AppcClientException
320 * - throw AppcClientException
322 @RPC(name = "config-scaleout", outputType = ConfigScaleoutOutput.class)
323 ConfigScaleoutOutput configScaleout(ConfigScaleoutInput configScaleoutInput) throws AppcClientException;
326 * An operation to scaleout the configurations of a virtual network function (or
329 * @param configScaleoutInput
332 * - callback implementation
333 * @throws AppcClientException
334 * - throw AppcClientException
336 @RPC(name = "config-scaleout", outputType = ConfigScaleoutOutput.class)
337 void configScaleout(ConfigScaleoutInput configScaleoutInput, ResponseHandler<ConfigScaleoutOutput> listener)
338 throws AppcClientException;
341 * An operation to configure the configurations of a virtual network function
344 * @param configureInput
346 * @throws AppcClientException
347 * - throw AppcClientException
349 @RPC(name = "configure", outputType = ConfigureOutput.class)
350 ConfigureOutput configure(ConfigureInput configureInput) throws AppcClientException;
353 * An operation to configure the configurations of a virtual network function
356 * @param configureInput
359 * - callback implementation
360 * @throws AppcClientException
361 * - throw AppcClientException
363 @RPC(name = "configure", outputType = ConfigureOutput.class)
364 void configure(ConfigureInput configureInput, ResponseHandler<ConfigureOutput> listener) throws AppcClientException;
367 * An operation to evacuate a virtual network function (or VM)
369 * @param evacuateInput
371 * @throws AppcClientException
372 * - throw AppcClientException
374 @RPC(name = "evacuate", outputType = EvacuateOutput.class)
375 EvacuateOutput evacuate(EvacuateInput evacuateInput) throws AppcClientException;
378 * An operation to evacuate a virtual network function (or VM)
380 * @param evacuateInput
383 * - callback implementation
384 * @throws AppcClientException
385 * - throw AppcClientException
387 @RPC(name = "evacuate", outputType = EvacuateOutput.class)
388 void evacuate(EvacuateInput evacuateInput, ResponseHandler<EvacuateOutput> listener) throws AppcClientException;
391 * This command runs a VNF health check and returns the result. A health check
392 * is VNF-specific. For a complex VNF, APPC initiates further subordinate health
395 * @param healthCheckInput
397 * @throws AppcClientException
398 * - throw AppcClientException
400 @RPC(name = "health-check", outputType = HealthCheckOutput.class)
401 HealthCheckOutput healthCheck(HealthCheckInput healthCheckInput) throws AppcClientException;
404 * This command runs a VNF health check and returns the result. A health check
405 * is VNF-specific. For a complex VNF, APPC initiates further subordinate health
408 * @param healthCheckInput
411 * - callback implementation
412 * @throws AppcClientException
413 * - throw AppcClientException
415 @RPC(name = "health-check", outputType = HealthCheckOutput.class)
416 void healthCheck(HealthCheckInput healthCheckInput, ResponseHandler<HealthCheckOutput> listener)
417 throws AppcClientException;
420 * The LiveUpgrade LCM action upgrades the target VNF to a new version without
421 * interrupting VNF operation. A successful upgrade returns a success status. A
422 * failed upgrade returns a failure code and the failure messages in the
423 * response payload block. The payload includes the IP of the location that
424 * hosts the new software version installer file and the new software version.
425 * Connections or operations that are active at the time of the LiveUpgrade
426 * action request will not be interrupted by the action and, therefore, the
427 * action may take a significant amount of time to run. A LiveUpgrade is defined
428 * as non-disruptive; it is the responsibility of the VNF to handle disruptions
431 * @param liveUpgradeInput
433 * @throws AppcClientException
434 * - throw AppcClientException
436 @RPC(name = "live-upgrade", outputType = LiveUpgradeOutput.class)
437 LiveUpgradeOutput liveUpgrade(LiveUpgradeInput liveUpgradeInput) throws AppcClientException;
440 * The LiveUpgrade LCM action upgrades the target VNF to a new version without
441 * interrupting VNF operation. A successful upgrade returns a success status. A
442 * failed upgrade returns a failure code and the failure messages in the
443 * response payload block. The payload includes the IP of the location that
444 * hosts the new software version installer file and the new software version.
445 * Connections or operations that are active at the time of the LiveUpgrade
446 * action request will not be interrupted by the action and, therefore, the
447 * action may take a significant amount of time to run. A LiveUpgrade is defined
448 * as non-disruptive; it is the responsibility of the VNF to handle disruptions
451 * @param liveUpgradeInput
454 * - callback implementation
455 * @throws AppcClientException
456 * - throw AppcClientException
458 @RPC(name = "live-upgrade", outputType = LiveUpgradeOutput.class)
459 void liveUpgrade(LiveUpgradeInput liveUpgradeInput, ResponseHandler<LiveUpgradeOutput> listener)
460 throws AppcClientException;
463 * Use the Lock command to ensure exclusive access during a series of critical
464 * LCM commands. The Lock action will return a successful result if the VNF is
465 * not already locked or if it was locked with the same request-id, otherwise
466 * the action returns a response with a reject status code. When a VNF is
467 * locked, any subsequent sequential commands with same request-id will be
468 * accepted. Commands associated with other request-ids will be rejected. The
469 * Lock command returns only one final response with the status of the request
470 * processing. The APPC also locks the target VNF during any command processing.
471 * If a lock action is then requested on that VNF, it will be rejected because
472 * the VNF was already locked, even though no actual lock command was explicitly
477 * @throws AppcClientException
478 * - throw AppcClientException
480 @RPC(name = "lock", outputType = LockOutput.class)
481 LockOutput lock(LockInput lockInput) throws AppcClientException;
484 * Use the Lock command to ensure exclusive access during a series of critical
485 * LCM commands. The Lock action will return a successful result if the VNF is
486 * not already locked or if it was locked with the same request-id, otherwise
487 * the action returns a response with a reject status code. When a VNF is
488 * locked, any subsequent sequential commands with same request-id will be
489 * accepted. Commands associated with other request-ids will be rejected. The
490 * Lock command returns only one final response with the status of the request
491 * processing. The APPC also locks the target VNF during any command processing.
492 * If a lock action is then requested on that VNF, it will be rejected because
493 * the VNF was already locked, even though no actual lock command was explicitly
499 * - callback implementation
500 * @throws AppcClientException
501 * - throw AppcClientException
503 @RPC(name = "lock", outputType = LockOutput.class)
504 void lock(LockInput lockInput, ResponseHandler<LockOutput> listener) throws AppcClientException;
507 * Migrates a running target VFC from its current AIC host to another. A
508 * destination AIC node will be selected by relying on AIC internal rules to
509 * migrate. A successful Migrate action returns a success response and the new
510 * AIC node identity in the response payload block. A failed Migrate action
511 * returns a failure and the failure messages in the response payload block
513 * @param migrateInput
515 * @throws AppcClientException
516 * - throw AppcClientException
518 @RPC(name = "migrate", outputType = MigrateOutput.class)
519 MigrateOutput migrate(MigrateInput migrateInput) throws AppcClientException;
522 * Migrates a running target VFC from its current AIC host to another. A
523 * destination AIC node will be selected by relying on AIC internal rules to
524 * migrate. A successful Migrate action returns a success response and the new
525 * AIC node identity in the response payload block. A failed Migrate action
526 * returns a failure and the failure messages in the response payload block
528 * @param migrateInput
531 * - callback implementation
532 * @throws AppcClientException
533 * - throw AppcClientException
535 @RPC(name = "migrate", outputType = MigrateOutput.class)
536 void migrate(MigrateInput migrateInput, ResponseHandler<MigrateOutput> listener) throws AppcClientException;
539 * Recreates a target VFC instance to a known, stable state. A successful
540 * rebuild returns a success response and the rebuild details in the response
541 * payload block. A failed rebuild returns a failure and the failure messages in
542 * the response payload block
544 * @param rebuildInput
546 * @throws AppcClientException
547 * - throw AppcClientException
549 @RPC(name = "rebuild", outputType = RebuildOutput.class)
550 RebuildOutput rebuild(RebuildInput rebuildInput) throws AppcClientException;
553 * Recreates a target VFC instance to a known, stable state. A successful
554 * rebuild returns a success response and the rebuild details in the response
555 * payload block. A failed rebuild returns a failure and the failure messages in
556 * the response payload block
558 * @param rebuildInput
561 * - callback implementation
562 * @throws AppcClientException
563 * - throw AppcClientException
565 @RPC(name = "rebuild", outputType = RebuildOutput.class)
566 void rebuild(RebuildInput rebuildInput, ResponseHandler<RebuildOutput> listener) throws AppcClientException;
569 * An operation to restart a virtual network function (or VM)
571 * @param restartInput
573 * @throws AppcClientException
574 * - throw AppcClientException
576 @RPC(name = "restart", outputType = RestartOutput.class)
577 RestartOutput restart(RestartInput restartInput) throws AppcClientException;
580 * An operation to restart a virtual network function (or VM)
582 * @param restartInput
585 * - callback implementation
586 * @throws AppcClientException
587 * - throw AppcClientException
589 @RPC(name = "restart", outputType = RestartOutput.class)
590 void restart(RestartInput restartInput, ResponseHandler<RestartOutput> listener) throws AppcClientException;
593 * Sets a VNF to the previous version of the configuration without explicitly
594 * invoking the configuration set name. This command is used when the
595 * configuration was successful, but the health-check was not. A successful
596 * rollback returns a success status when the restart process has completed. A
597 * failed or a partially failed (for a complex VNF) rollback returns a failure
598 * and the failure messages in the response payload block. This command can be
599 * applied to any VNF type. The only restriction is that the particular VNF
600 * should be built based on the generic heap stack
602 * @param rollbackInput
604 * @throws AppcClientException
605 * - throw AppcClientException
607 @RPC(name = "rollback", outputType = RollbackOutput.class)
608 RollbackOutput rollback(RollbackInput rollbackInput) throws AppcClientException;
611 * Sets a VNF to the previous version of the configuration without explicitly
612 * invoking the configuration set name. This command is used when the
613 * configuration was successful, but the health-check was not. A successful
614 * rollback returns a success status when the restart process has completed. A
615 * failed or a partially failed (for a complex VNF) rollback returns a failure
616 * and the failure messages in the response payload block. This command can be
617 * applied to any VNF type. The only restriction is that the particular VNF
618 * should be built based on the generic heap stack
620 * @param rollbackInput
623 * - callback implementation
624 * @throws AppcClientException
625 * - throw AppcClientException
627 @RPC(name = "rollback", outputType = RollbackOutput.class)
628 void rollback(RollbackInput rollbackInput, ResponseHandler<RollbackOutput> listener) throws AppcClientException;
631 * Creates a snapshot of a VNF, or VM. The Snapshot command returns a customized
632 * response containing a reference to the newly created snapshot instance if the
633 * action is successful. This command can be applied to any VNF type. The only
634 * restriction is that the particular VNF should be built based on the generic
637 * @param snapshotInput
639 * @throws AppcClientException
640 * - throw AppcClientException
642 @RPC(name = "snapshot", outputType = SnapshotOutput.class)
643 SnapshotOutput snapshot(SnapshotInput snapshotInput) throws AppcClientException;
646 * Creates a snapshot of a VNF, or VM. The Snapshot command returns a customized
647 * response containing a reference to the newly created snapshot instance if the
648 * action is successful. This command can be applied to any VNF type. The only
649 * restriction is that the particular VNF should be built based on the generic
652 * @param snapshotInput
655 * - callback implementation
656 * @throws AppcClientException
657 * - throw AppcClientException
659 @RPC(name = "snapshot", outputType = SnapshotOutput.class)
660 void snapshot(SnapshotInput snapshotInput, ResponseHandler<SnapshotOutput> listener) throws AppcClientException;
663 * This LCM command uploads the file that contains a new software version to the
666 * @param softwareUploadInput
668 * @throws AppcClientException
669 * - throw AppcClientException
671 @RPC(name = "software-upload", outputType = SoftwareUploadOutput.class)
672 SoftwareUploadOutput softwareUpload(SoftwareUploadInput softwareUploadInput) throws AppcClientException;
675 * This LCM command uploads the file that contains a new software version to the
678 * @param softwareUploadInput
681 * - callback implementation
682 * @throws AppcClientException
683 * - throw AppcClientException
685 @RPC(name = "software-upload", outputType = SoftwareUploadOutput.class)
686 void softwareUpload(SoftwareUploadInput softwareUploadInput, ResponseHandler<SoftwareUploadOutput> listener)
687 throws AppcClientException;
690 * An operation to start a virtual network function (or VM)
694 * @throws AppcClientException
695 * - throw AppcClientException
697 @RPC(name = "start", outputType = StartOutput.class)
698 StartOutput start(StartInput startInput) throws AppcClientException;
701 * An operation to start a virtual network function (or VM)
706 * - callback implementation
707 * @throws AppcClientException
708 * - throw AppcClientException
710 @RPC(name = "start", outputType = StartOutput.class)
711 void start(StartInput startInput, ResponseHandler<StartOutput> listener) throws AppcClientException;
714 * Stop a target VNF or VNFC. A successful stop returns a success response. For
715 * a multi-component stop to be considered successful, all component stop
716 * actions must succeed. A failed stop returns a failure and the failure
717 * messages in the response payload block
721 * @throws AppcClientException
722 * - throw AppcClientException
724 @RPC(name = "stop", outputType = StopOutput.class)
725 StopOutput stop(StopInput stopInput) throws AppcClientException;
728 * Stop a target VNF or VNFC. A successful stop returns a success response. For
729 * a multi-component stop to be considered successful, all component stop
730 * actions must succeed. A failed stop returns a failure and the failure
731 * messages in the response payload block
736 * - callback implementation
737 * @throws AppcClientException
738 * - throw AppcClientException
740 @RPC(name = "stop", outputType = StopOutput.class)
741 void stop(StopInput stopInput, ResponseHandler<StopOutput> listener) throws AppcClientException;
744 * The Sync action updates the current configuration in the APPC store with the
745 * running configuration from the device. A successful Sync returns a success
746 * status. A failed Sync returns a failure response status and failure messages
747 * in the response payload block. This command can be applied to any VNF type.
748 * The only restriction is that a particular VNF should be able to support the
749 * interface for Reading Configuration using existing adapters and use the
750 * following protocols: CLI, RestConf and XML
754 * @throws AppcClientException
755 * - throw AppcClientException
757 @RPC(name = "sync", outputType = SyncOutput.class)
758 SyncOutput sync(SyncInput syncInput) throws AppcClientException;
761 * The Sync action updates the current configuration in the APPC store with the
762 * running configuration from the device. A successful Sync returns a success
763 * status. A failed Sync returns a failure response status and failure messages
764 * in the response payload block. This command can be applied to any VNF type.
765 * The only restriction is that a particular VNF should be able to support the
766 * interface for Reading Configuration using existing adapters and use the
767 * following protocols: CLI, RestConf and XML
772 * - callback implementation
773 * @throws AppcClientException
774 * - throw AppcClientException
776 @RPC(name = "sync", outputType = SyncOutput.class)
777 void sync(SyncInput syncInput, ResponseHandler<SyncOutput> listener) throws AppcClientException;
780 * Terminate a target VNF and release its resources (possibly gracefully).
781 * Specific scripts can be run before termination by placing them under the
782 * Terminate life cycle event. All configuration files related to the target VNF
783 * are deleted. The resources of a terminated VNF that are not managed by APPC,
784 * such as those handled by SDNC or other components, are not handled and remain
785 * the responsibility of their respective managing functions. A successful
786 * Terminate action returns a success response. For a multi-component terminate
787 * to be considered successful, all component Terminate actions must also
788 * succeed. A failed Terminate returns a failure status and the failure messages
789 * in the response payload block
791 * @param terminateInput
793 * @throws AppcClientException
794 * - throw AppcClientException
796 @RPC(name = "terminate", outputType = TerminateOutput.class)
797 TerminateOutput terminate(TerminateInput terminateInput) throws AppcClientException;
800 * Terminate a target VNF and release its resources (possibly gracefully).
801 * Specific scripts can be run before termination by placing them under the
802 * Terminate life cycle event. All configuration files related to the target VNF
803 * are deleted. The resources of a terminated VNF that are not managed by APPC,
804 * such as those handled by SDNC or other components, are not handled and remain
805 * the responsibility of their respective managing functions. A successful
806 * Terminate action returns a success response. For a multi-component terminate
807 * to be considered successful, all component Terminate actions must also
808 * succeed. A failed Terminate returns a failure status and the failure messages
809 * in the response payload block
811 * @param terminateInput
814 * - callback implementation
815 * @throws AppcClientException
816 * - throw AppcClientException
818 @RPC(name = "terminate", outputType = TerminateOutput.class)
819 void terminate(TerminateInput terminateInput, ResponseHandler<TerminateOutput> listener) throws AppcClientException;
822 * The Test LCM action checks a target VNF or VNFC for correct operation. The
823 * functionality of the Test LCM action involves should involve more than a
824 * HealthCheck , it should provide a means for launching a test transaction and
825 * determining if the transaction completed successfully or not. A transaction
826 * launcher microservice will have to be supplied by the VNF and called by APPC.
827 * A successful test returns a success and the results of the test in the
828 * payload block. A failed test returns a failure and specific failure messages
829 * in the payload block
833 * @throws AppcClientException
834 * - throw AppcClientException
836 @RPC(name = "test", outputType = TestOutput.class)
837 TestOutput test(TestInput testInput) throws AppcClientException;
840 * The Test LCM action checks a target VNF or VNFC for correct operation. The
841 * functionality of the Test LCM action involves should involve more than a
842 * HealthCheck , it should provide a means for launching a test transaction and
843 * determining if the transaction completed successfully or not. A transaction
844 * launcher microservice will have to be supplied by the VNF and called by APPC.
845 * A successful test returns a success and the results of the test in the
846 * payload block. A failed test returns a failure and specific failure messages
847 * in the payload block
852 * - callback implementation
853 * @throws AppcClientException
854 * - throw AppcClientException
856 @RPC(name = "test", outputType = TestOutput.class)
857 void test(TestInput testInput, ResponseHandler<TestOutput> listener) throws AppcClientException;
860 * Run the Unlock command to release the lock on a VNF and allow other clients
861 * to perform LCM commands on that VNF. The Unlock command will result in
862 * success if the VNF successfully unlocked or if it was already unlocked,
863 * otherwise commands will be rejected. The Unlock command will only return
864 * success if the VNF was locked with same request-id (on page 6). The Unlock
865 * command returns only one final response with the status of the request
866 * processing. The APPC also locks the target VNF during any command processing.
867 * If an Unlock action is then requested on that VNF with a different
868 * request-id, it will be rejected because the VNF is already locked for another
869 * process, even though no actual lock command was explicitly invoked
873 * @throws AppcClientException
874 * - throw AppcClientException
876 @RPC(name = "unlock", outputType = UnlockOutput.class)
877 UnlockOutput unlock(UnlockInput unlockInput) throws AppcClientException;
880 * Run the Unlock command to release the lock on a VNF and allow other clients
881 * to perform LCM commands on that VNF. The Unlock command will result in
882 * success if the VNF successfully unlocked or if it was already unlocked,
883 * otherwise commands will be rejected. The Unlock command will only return
884 * success if the VNF was locked with same request-id (on page 6). The Unlock
885 * command returns only one final response with the status of the request
886 * processing. The APPC also locks the target VNF during any command processing.
887 * If an Unlock action is then requested on that VNF with a different
888 * request-id, it will be rejected because the VNF is already locked for another
889 * process, even though no actual lock command was explicitly invoked
894 * - callback implementation
895 * @throws AppcClientException
896 * - throw AppcClientException
898 @RPC(name = "unlock", outputType = UnlockOutput.class)
899 void unlock(UnlockInput unlockInput, ResponseHandler<UnlockOutput> listener) throws AppcClientException;