From c47a27b826f7d76410308a4151611a366f9eaf46 Mon Sep 17 00:00:00 2001 From: Georgios Andreadis Date: Fri, 25 Aug 2017 17:48:12 +0200 Subject: Fetch and display datacenter topology --- src/sagas/simulations.js | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 src/sagas/simulations.js (limited to 'src/sagas/simulations.js') diff --git a/src/sagas/simulations.js b/src/sagas/simulations.js new file mode 100644 index 00000000..b699002e --- /dev/null +++ b/src/sagas/simulations.js @@ -0,0 +1,30 @@ +import {call, put} from "redux-saga/effects"; +import {addToStore} from "../actions/objects"; +import {addSimulationSucceeded, deleteSimulationSucceeded} from "../actions/simulations"; +import {addSimulation, deleteSimulation} from "../api/routes/simulations"; + +export function* onSimulationAdd(action) { + try { + const simulation = yield call(addSimulation, {name: action.name}); + yield put(addToStore("simulation", simulation)); + + const authorization = { + simulationId: simulation.id, + userId: action.userId, + authorizationLevel: "OWN" + }; + yield put(addToStore("authorization", authorization)); + yield put(addSimulationSucceeded([authorization.userId, authorization.simulationId])); + } catch (error) { + console.log(error); + } +} + +export function* onSimulationDelete(action) { + try { + yield call(deleteSimulation, action.id); + yield put(deleteSimulationSucceeded(action.id)); + } catch (error) { + console.log(error); + } +} -- cgit v1.2.3