summaryrefslogtreecommitdiffstats
path: root/vid-webpack-master/src/app/shared/storeUtil/utils/vfModule/vfModule.reducers.ts
diff options
context:
space:
mode:
authorEinat Vinouze <einat.vinouze@intl.att.com>2019-08-27 16:01:01 +0300
committerIttay Stern <ittay.stern@att.com>2019-09-09 07:01:36 +0000
commite1f7974f0badbd4440d5b7ea5f1b1cb2d4973818 (patch)
tree46be9cdc44cbb475527bc3c43df23d16f7579d29 /vid-webpack-master/src/app/shared/storeUtil/utils/vfModule/vfModule.reducers.ts
parente25b88b5a7a0f3bf63ca7160a441b53145484bcc (diff)
Adding feature: Replace vfmodule
Issue-ID: VID-603 Change-Id: I59068a0979d6fb733e4243c8f78921f396dc9d17 Signed-off-by: Einat Vinouze <einat.vinouze@intl.att.com> Signed-off-by: Amichai Hemli <amichai.hemli@intl.att.com> Signed-off-by: Ittay Stern <ittay.stern@att.com>
Diffstat (limited to 'vid-webpack-master/src/app/shared/storeUtil/utils/vfModule/vfModule.reducers.ts')
-rw-r--r--vid-webpack-master/src/app/shared/storeUtil/utils/vfModule/vfModule.reducers.ts37
1 files changed, 36 insertions, 1 deletions
diff --git a/vid-webpack-master/src/app/shared/storeUtil/utils/vfModule/vfModule.reducers.ts b/vid-webpack-master/src/app/shared/storeUtil/utils/vfModule/vfModule.reducers.ts
index 05319c0fb..a7aadba41 100644
--- a/vid-webpack-master/src/app/shared/storeUtil/utils/vfModule/vfModule.reducers.ts
+++ b/vid-webpack-master/src/app/shared/storeUtil/utils/vfModule/vfModule.reducers.ts
@@ -3,7 +3,7 @@ import * as _ from "lodash";
import {
CreateVFModuleInstanceAction, DeleteActionVfModuleInstanceAction,
DeleteVfModuleInstanceAction, UndoDeleteActionVfModuleInstanceAction, UpdateVFModluePosition,
- UpdateVFModuleInstanceAction,
+ UpdateVFModuleInstanceAction, UpgradeVfModuleInstanceAction,
VfModuleActions
} from "./vfModule.actions";
import {ServiceInstance} from "../../../models/serviceInstance";
@@ -26,6 +26,7 @@ export function vfModuleReducer(state: ServiceState , action: Action) : ServiceS
let vfModulesMap = newState.serviceInstance[serviceUuid].vnfs[vnfStoreKey].vfModules[vfModuleId] || new VfModuleMap();
let randomId = generateId();
+ vfInstance.action = ServiceInstanceActions.Create;
vfModulesMap[vfModuleId + randomId] = vfInstance;
updateUniqueNames(null, vfInstance.instanceName, newState.serviceInstance[serviceUuid]);
updateUniqueNames(null, vfInstance.volumeGroupName, newState.serviceInstance[serviceUuid]);
@@ -110,6 +111,40 @@ export function vfModuleReducer(state: ServiceState , action: Action) : ServiceS
newState.serviceInstance[serviceUuid].vnfs[updateVFModluePosition.vnfStoreKey].vfModules[modelName][dynamicModelName].position = updateVFModluePosition.node.position;
return newState;
}
+
+ case VfModuleActions.UPGRADE_VFMODULE : {
+ let clonedState = _.cloneDeep(state);
+ const upgradeAction = (<UpgradeVfModuleInstanceAction>action);
+ let oldAction = clonedState
+ .serviceInstance[upgradeAction.serviceId]
+ .vnfs[upgradeAction.vnfStoreKey]
+ .vfModules[upgradeAction.modelName][upgradeAction.dynamicModelName]
+ .action;
+ if(!_.isNil(oldAction) && oldAction.includes("Upgrade")) {
+ return clonedState;
+ }
+ clonedState.serviceInstance[upgradeAction.serviceId]
+ .vnfs[upgradeAction.vnfStoreKey]
+ .vfModules[upgradeAction.modelName][upgradeAction.dynamicModelName]
+ .action = (`${oldAction}_Upgrade`) as ServiceInstanceActions;
+ return clonedState;
+ }
+ case VfModuleActions.UNDO_UPGRADE_VFMODULE_ACTION : {
+ let clonedState = _.cloneDeep(state);
+ const upgradeAction = (<UpgradeVfModuleInstanceAction>action);
+ let oldAction = clonedState
+ .serviceInstance[upgradeAction.serviceId]
+ .vnfs[upgradeAction.vnfStoreKey]
+ .vfModules[upgradeAction.modelName][upgradeAction.dynamicModelName]
+ .action;
+ if(!_.isNil(oldAction) && oldAction.includes("Upgrade")) {
+ clonedState.serviceInstance[upgradeAction.serviceId]
+ .vnfs[upgradeAction.vnfStoreKey]
+ .vfModules[upgradeAction.modelName][upgradeAction.dynamicModelName]
+ .action = ServiceInstanceActions.None;
+ }
+ return clonedState;
+ }
}
}