Merge from ecomp 718fd196 - Modern UI
[vid.git] / vid-webpack-master / src / app / shared / storeUtil / utils / network / network.actions.ts
1 import {Action, ActionCreator} from "redux";
2 import {NetworkInstance} from "../../../models/networkInstance";
3 import {ActionOnFirstLevel} from "../firstLevel/firstLevel.actions";
4
5
6 export enum NetworkActions {
7   UPDATE_NETWORK_INSTANCE = "UPDATE_NETWORK_INSTANCE",
8   UPDATE_NETWORK_FUNCTION  = 'UPDATE_NETWORK_FUNCTION',
9   CREATE_NETWORK_INSTANCE = 'CREATE_NETWORK_INSTANCE',
10   DELETE_ACTION_NETWORK_INSTANCE = "DELETE_ACTION_NETWORK_INSTANCE",
11   UNDO_DELETE_ACTION_NETWORK_INSTANCE = "UNDO_DELETE_ACTION_NETWORK_INSTANCE",
12   UPDATE_NETWORK_POSITION = "UPDATE_NETWORK_POSITION"
13
14 }
15
16
17 export interface UpdateNetworkPosition extends Action {
18   node: any,
19   instanceId : string,
20   networkStoreKey?: string;
21 }
22
23 export interface UpdateNetworkInstanceAction extends Action {
24   networkInstance?: NetworkInstance;
25   networkModelName?: string;
26   serviceUuid?: string;
27   networkStoreKey?:string;
28 }
29
30 export interface UpdateNetworkCollectionFunction extends Action {
31   networksAccordingToNetworkCollection: any;
32   network_function: any;
33 }
34
35 export interface CreateNetworkInstanceAction extends Action {
36   networkInstance?: NetworkInstance;
37   networkModelName?: string;
38   serviceUuid?: string;
39   networkStoreKey?:string;
40 }
41
42
43
44 export const updateNetworkInstance: ActionCreator<UpdateNetworkInstanceAction> = (networkInstance, networkfModelName, serviceUuid, networkStoreKey) => ({
45   type: NetworkActions.UPDATE_NETWORK_INSTANCE,
46   networkInstance: networkInstance,
47   networkModelName: networkfModelName,
48   serviceUuid: serviceUuid,
49   networkStoreKey : networkStoreKey
50 });
51
52
53 export const updateNetworkCollectionFunction: ActionCreator<UpdateNetworkCollectionFunction> = (ncf, networksAccordingToNetworkCollection) => ({
54   type: NetworkActions.UPDATE_NETWORK_FUNCTION,
55   networksAccordingToNetworkCollection: networksAccordingToNetworkCollection["results"],
56   network_function: ncf
57 });
58
59 export const createNetworkInstance: ActionCreator<CreateNetworkInstanceAction> = (networkInstance, networkModelName, serviceUuid, networkStoreKey) => ({
60   type: NetworkActions.CREATE_NETWORK_INSTANCE,
61   networkInstance: networkInstance,
62   networkModelName: networkModelName,
63   serviceUuid: serviceUuid,
64   networkStoreKey : networkStoreKey
65 });
66
67
68 export const deleteActionNetworkInstance: ActionCreator<ActionOnFirstLevel> = (networkStoreKey, serviceId) => ({
69   type: NetworkActions.DELETE_ACTION_NETWORK_INSTANCE,
70   firstLevelName: 'networks',
71   storeKey: networkStoreKey,
72   serviceId: serviceId
73 });
74
75 export const undoDeleteActionNetworkInstance: ActionCreator<ActionOnFirstLevel> = (networkStoreKey, serviceId) => ({
76   type: NetworkActions.UNDO_DELETE_ACTION_NETWORK_INSTANCE,
77   firstLevelName: 'networks',
78   storeKey: networkStoreKey,
79   serviceId: serviceId
80 });
81
82
83 export const updateNetworkPosition: ActionCreator<UpdateNetworkPosition> = (node, instanceId, networkStoreKey) => ({
84   type: NetworkActions.UPDATE_NETWORK_POSITION,
85   node: node,
86   instanceId: instanceId,
87   networkStoreKey : networkStoreKey
88 });
89
90