コード例 #1
0
ファイル: Program.cs プロジェクト: oesolberg/GuahdtimGarden
        private static void DoLogicBasedOnWaterLevels(IGuadtimGardenData dataPackage)
        {
            
            if (!dataPackage.ReservoirIsEmpty)
            {
                if (dataPackage.GrowPodIsEmpty)
                {
                    _httpDataDeliverer.SendPumpData(new GuadtimGardenData().PumpOn());
                    while (!dataPackage.ReservoirIsEmpty && !dataPackage.GrowPodIsFull)
                    {

                        _relays.RunPump(1500);
                        //Send some message about pumping for a second?
                        var waterLevelData = _waterLevelSensorController.GetWaterLevelStatus();
                        dataPackage.UpdateWaterLevelData(waterLevelData);


                    }
                    _httpDataDeliverer.SendPumpData(new GuadtimGardenData().PumpOff());
                    _httpDataDeliverer.SendWaterlevelsData(new GuadtimGardenData().SetWaterLevelData(dataPackage));

                }
            }
            else
            {
                //Send some message about the reservoir being empty
                _httpDataDeliverer.SendWaterlevelsData(new GuadtimGardenData().SetWaterLevelData(dataPackage));
            }
        }