Beispiel #1
0
        protected override void ExecuteWith(IMoBiContext context)
        {
            _modelSerialization = context.Serialize(_simulationToUpdate.Model);
            _buildConfigurationSerialization = context.Serialize(_simulationToUpdate.MoBiBuildConfiguration);
            context.UnregisterSimulation(_simulationToUpdate);
            context.PublishEvent(new SimulationUnloadEvent(_simulationToUpdate));

            var oldIdCache = getEntityIdCache(_simulationToUpdate);

            _simulationToUpdate.Update(_updatedBuildConfiguration, _newModel);

            updateReferencesToSimulation(context);

            if (_simulationToUpdate.DiagramModel != null)
            {
                replaceDiagramModelNodeIds(_simulationToUpdate.DiagramModel, oldIdCache, getEntityIdCache(_simulationToUpdate));
            }

            context.Register(_simulationToUpdate);
            _wasChanged = _simulationToUpdate.HasChanged;
            _simulationToUpdate.HasChanged = _hasChanged;

            Description = AppConstants.Commands.UpdateCommandDescription(_changedBuildingBlockName, _simulationToUpdate, _changedBuildingBlockType);

            context.PublishEvent(new SimulationReloadEvent(_simulationToUpdate));
        }
        protected override void ExecuteWith(IMoBiContext context)
        {
            context.CurrentProject.RemoveSimulation(_simulation);
            context.UnregisterSimulation(_simulation);
            context.PublishEvent(new SimulationRemovedEvent(_simulation));

            //Do not serialize Results
            _simulation.Results  = null;
            _serializationStream = context.Serialize(_simulation);
        }
 public void should_update_object_registration()
 {
     A.CallTo(() => _context.Register(_simulation)).MustHaveHappened();
     A.CallTo(() => _context.UnregisterSimulation(_simulation)).MustHaveHappened();
 }