Esempio n. 1
0
 public ControllerStateHistory CreateStateHistory(ControllerStateInformation controllerStateInformation)
 {
     return(new ControllerStateHistory()
     {
         ControllerStateInformationId = controllerStateInformation.Id
     });
 }
Esempio n. 2
0
        public void AddAdapters(List <IMqttAdapter> adapters)
        {
            using (var ctx = new SqliteContext())
            {
                foreach (var adapter in adapters)
                {
                    var controller = _modelFactory.CreateController();
                    controller.Identifier = adapter.Identifier;
                    controller.Type       = adapter.Type;
                    controller.InitializationArguments = _jsonSerializerService.Serialize(adapter.GetInitializationArguments());

                    foreach (var state in adapter.GetPossibleStates())
                    {
                        var stateModel = new ControllerStateInformation();
                        stateModel.State            = state.State;
                        stateModel.PowerConsumption = state.PowerConsumption;
                        stateModel.Controller       = controller;

                        ctx.Add(stateModel);
                    }

                    ctx.Add(controller);
                }

                ctx.SaveChanges();
            }
        }
        public ControllerStateHistory ActivateState(ISqLiteContext ctx, ControllerStateInformation controllerStateInformation, DateTime startTime)
        {
            var history = _entityFactory.CreateStateHistory(controllerStateInformation, startTime);

            ctx.Add(history);

            return(history);
        }
Esempio n. 4
0
        public ControllerStateHistory CreateStateHistory(ControllerStateInformation controllerStateInformation, DateTime startTime)
        {
            var history = CreateStateHistory(controllerStateInformation);

            history.StartTime = startTime;

            return(history);
        }
Esempio n. 5
0
 public void UpdateState(ControllerStateInformation newState, DateTime timestamp, ControllerStateInformation oldState)
 {
     using (var ctx = _repositoryService.GetContext())
     {
         if (oldState != null)
         {
         }
     }
 }
Esempio n. 6
0
        void InsertControllerState(ISqLiteContext ctx, Controller controller, IControllerState controllerState)
        {
            var stateModel = new ControllerStateInformation();

            stateModel.State            = controllerState.State;
            stateModel.PowerConsumption = controllerState.PowerConsumption;
            stateModel.Controller       = controller;

            ctx.Add(stateModel);
        }
        public DateTime TerminateState(ISqLiteContext ctx, ControllerStateInformation state)
        {
            var terminateDate = DateTime.UtcNow;

            var history = ctx.ControllerStateHistory.FirstOrDefault(h => h.ControllerStateInformationId == state.Id && h.EndTime == DateTime.MinValue);

            if (history != null)
            {
                history.EndTime = terminateDate;
            }

            return(terminateDate);
        }