summaryrefslogtreecommitdiffstats
path: root/appc-dispatcher
diff options
context:
space:
mode:
Diffstat (limited to 'appc-dispatcher')
-rw-r--r--appc-dispatcher/appc-command-executor/appc-command-executor-core/src/main/java/org/openecomp/appc/executor/impl/CommandTaskFactory.java16
-rw-r--r--appc-dispatcher/appc-dispatcher-common/domain-model-lib/src/main/java/org/openecomp/appc/domainmodel/lcm/OperationType.java29
-rw-r--r--appc-dispatcher/appc-dispatcher-common/domain-model-lib/src/main/java/org/openecomp/appc/domainmodel/lcm/VNFOperation.java66
-rw-r--r--appc-dispatcher/appc-request-handler/appc-request-handler-core/src/main/java/org/openecomp/appc/requesthandler/conv/Converter.java10
4 files changed, 81 insertions, 40 deletions
diff --git a/appc-dispatcher/appc-command-executor/appc-command-executor-core/src/main/java/org/openecomp/appc/executor/impl/CommandTaskFactory.java b/appc-dispatcher/appc-command-executor/appc-command-executor-core/src/main/java/org/openecomp/appc/executor/impl/CommandTaskFactory.java
index c5590f961..5a7550cc4 100644
--- a/appc-dispatcher/appc-command-executor/appc-command-executor-core/src/main/java/org/openecomp/appc/executor/impl/CommandTaskFactory.java
+++ b/appc-dispatcher/appc-command-executor/appc-command-executor-core/src/main/java/org/openecomp/appc/executor/impl/CommandTaskFactory.java
@@ -70,15 +70,13 @@ public class CommandTaskFactory {
if(ActionLevel.VM.equals(actionLevel)){
return new LCMReadonlyCommandTask(runtimeContext,requestHandler,workflowManager);
}
- if (VNFOperation.Sync.toString().equals(action) ||
- VNFOperation.Audit.toString().equals(action) ||
- VNFOperation.ConfigBackup.toString().equals(action) ||
- VNFOperation.ConfigBackupDelete.toString().equals(action) ||
- VNFOperation.ConfigExport.toString().equals(action)){
- return new LCMReadonlyCommandTask(runtimeContext,requestHandler,workflowManager);
- }else {
- return new LCMCommandTask(runtimeContext,requestHandler,workflowManager,
- lifecyclemanager);
+ switch (runtimeContext.getRequestContext().getAction().getOperationType()){
+ case ReadOnly:
+ case OperationStatusUpdate:
+ return new LCMReadonlyCommandTask(runtimeContext,requestHandler,workflowManager);
+ default:
+ return new LCMCommandTask(runtimeContext,requestHandler,workflowManager,
+ lifecyclemanager);
}
}
diff --git a/appc-dispatcher/appc-dispatcher-common/domain-model-lib/src/main/java/org/openecomp/appc/domainmodel/lcm/OperationType.java b/appc-dispatcher/appc-dispatcher-common/domain-model-lib/src/main/java/org/openecomp/appc/domainmodel/lcm/OperationType.java
new file mode 100644
index 000000000..becca04b6
--- /dev/null
+++ b/appc-dispatcher/appc-dispatcher-common/domain-model-lib/src/main/java/org/openecomp/appc/domainmodel/lcm/OperationType.java
@@ -0,0 +1,29 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APPC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Copyright (C) 2017 Amdocs
+ * =============================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * ECOMP is a trademark and service mark of AT&T Intellectual Property.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.appc.domainmodel.lcm;
+
+public enum OperationType {
+ ReadOnly,BuiltIn,OrchestrationStatusUpdate,OperationStatusUpdate
+}
diff --git a/appc-dispatcher/appc-dispatcher-common/domain-model-lib/src/main/java/org/openecomp/appc/domainmodel/lcm/VNFOperation.java b/appc-dispatcher/appc-dispatcher-common/domain-model-lib/src/main/java/org/openecomp/appc/domainmodel/lcm/VNFOperation.java
index 3cf0e2f6d..316b5acb7 100644
--- a/appc-dispatcher/appc-dispatcher-common/domain-model-lib/src/main/java/org/openecomp/appc/domainmodel/lcm/VNFOperation.java
+++ b/appc-dispatcher/appc-dispatcher-common/domain-model-lib/src/main/java/org/openecomp/appc/domainmodel/lcm/VNFOperation.java
@@ -25,35 +25,39 @@
package org.openecomp.appc.domainmodel.lcm;
public enum VNFOperation {
-
- Configure, Test, HealthCheck, Start, Terminate, Restart, Rebuild, Stop, ConfigModify,
- ConfigScaleOut,ConfigRestore,Backup, Snapshot,
- SoftwareUpload, LiveUpgrade, Rollback, Sync, Audit, Test_lic, Migrate, Evacuate,ConfigBackup,ConfigBackupDelete,ConfigExport,
- Lock(true), Unlock(true), CheckLock(true);
-
- private boolean builtIn;
-
- VNFOperation(boolean builtIn) {
- this.builtIn = builtIn;
- }
-
- VNFOperation() {
- this(false);
- }
-
- /**
- * Operations handled directly by the RequestHandler without further call to DG are built-in operations.
- */
- public boolean isBuiltIn() {
- return builtIn;
- }
-
- public static VNFOperation findByString(String operationName) {
- for(VNFOperation operation: VNFOperation.values()) {
- if(operation.name().equals(operationName)) {
- return operation;
- }
- }
- return null;
- }
+ Configure, Test, HealthCheck, Start, Terminate, Restart, Rebuild, Stop, ConfigModify,
+ ConfigScaleOut,ConfigRestore,Backup, Snapshot,
+ SoftwareUpload, LiveUpgrade, Rollback, Test_lic, Migrate, Evacuate,StopApplication, StartApplication,
+ Sync(OperationType.ReadOnly), Audit(OperationType.ReadOnly),
+ ConfigBackup(OperationType.ReadOnly),ConfigBackupDelete(OperationType.ReadOnly),ConfigExport(OperationType.ReadOnly),
+ Lock(OperationType.BuiltIn), Unlock(OperationType.BuiltIn), CheckLock(OperationType.BuiltIn);
+
+ private OperationType operationType;
+
+ VNFOperation(OperationType operationType){
+ this.operationType=operationType;
+ }
+
+ VNFOperation() {
+ this.operationType=OperationType.OrchestrationStatusUpdate;
+ }
+ /**
+ * Operations handled directly by the RequestHandler without further call to DG are built-in operations.
+ */
+ public boolean isBuiltIn() {
+ return this.operationType.equals(OperationType.BuiltIn);
+ }
+
+ public OperationType getOperationType() {
+ return operationType;
+ }
+
+ public static VNFOperation findByString(String operationName) {
+ for(VNFOperation operation: VNFOperation.values()) {
+ if(operation.name().equals(operationName)) {
+ return operation;
+ }
+ }
+ return null;
+ }
}
diff --git a/appc-dispatcher/appc-request-handler/appc-request-handler-core/src/main/java/org/openecomp/appc/requesthandler/conv/Converter.java b/appc-dispatcher/appc-request-handler/appc-request-handler-core/src/main/java/org/openecomp/appc/requesthandler/conv/Converter.java
index 48091d3f3..aaa9933ed 100644
--- a/appc-dispatcher/appc-request-handler/appc-request-handler-core/src/main/java/org/openecomp/appc/requesthandler/conv/Converter.java
+++ b/appc-dispatcher/appc-request-handler/appc-request-handler-core/src/main/java/org/openecomp/appc/requesthandler/conv/Converter.java
@@ -213,6 +213,16 @@ public class Converter {
((StartOutputBuilder)outObj).setCommonHeader(commonHeader);
((StartOutputBuilder)outObj).setStatus(status);
return outObj;
+ case StopApplication:
+ outObj = new StopApplicationOutputBuilder();
+ ((StopApplicationOutputBuilder)outObj).setCommonHeader(commonHeader);
+ ((StopApplicationOutputBuilder)outObj).setStatus(status);
+ return outObj;
+ case StartApplication:
+ outObj = new StartApplicationOutputBuilder();
+ ((StartApplicationOutputBuilder)outObj).setCommonHeader(commonHeader);
+ ((StartApplicationOutputBuilder)outObj).setStatus(status);
+ return outObj;
default:
throw new IllegalArgumentException(action+" action is not supported");
}