diff --git a/src/data-managers/simulation-models-data-manager.js b/src/data-managers/simulation-models-data-manager.js index 79e6c4e..5496268 100644 --- a/src/data-managers/simulation-models-data-manager.js +++ b/src/data-managers/simulation-models-data-manager.js @@ -20,5 +20,31 @@ ******************************************************************************/ import RestDataManager from './rest-data-manager'; +import AppDispatcher from '../app-dispatcher'; -export default new RestDataManager('simulationModel', '/models'); +class SimulationModelDataManager extends RestDataManager { + constructor() { + super('simulationModel', '/models'); + + this.onLoad = this.onModelsLoad; + } + + onModelsLoad(data) { + if (!Array.isArray(data)) + data = [ data ]; + + for (let model of data) + this.loadModelData(model); + } + + loadModelData(model) { + AppDispatcher.dispatch({ + type: 'simulatorData/prepare', + inputLength: parseInt(model.inputLength, 10), + outputLength: parseInt(model.outputLength, 10), + id: model.simulator + }); + } +} + +export default new SimulationModelDataManager(); diff --git a/src/data-managers/simulations-data-manager.js b/src/data-managers/simulations-data-manager.js index 4ded924..d5fdfde 100644 --- a/src/data-managers/simulations-data-manager.js +++ b/src/data-managers/simulations-data-manager.js @@ -20,35 +20,5 @@ ******************************************************************************/ import RestDataManager from './rest-data-manager'; -import AppDispatcher from '../app-dispatcher'; -class SimulationsDataManager extends RestDataManager { - constructor() { - super('simulation', '/simulations', [ '_id', 'name', 'projects', 'models' ]); - - this.onLoad = this.onSimulationsLoad; - } - - onSimulationsLoad(data) { - if (Array.isArray(data)) { - for (let simulation of data) { - this.loadSimulationData(simulation); - } - } else { - this.loadSimulationData(data); - } - } - - loadSimulationData(simulation) { - for (let model of simulation.models) { - AppDispatcher.dispatch({ - type: 'simulatorData/prepare', - inputLength: parseInt(model.inputLength, 10), - outputLength: parseInt(model.outputLength, 10), - id: model.simulator - }); - } - } -} - -export default new SimulationsDataManager(); +export default new RestDataManager('simulation', '/simulations', [ '_id', 'name', 'projects', 'models' ]);