public void Initialize(PlantPower plPo) { this.pP = plPo; this.pollenGauge = plPo.pollenGauge; this.waterGauge = plPo.waterGauge; this.pollenReserve = plPo.pollenReserve; this.waterReserve = plPo.waterReserve; }
public bool TrySendPlantPower(PlantPower plantPower) { try { _apiClient.PutPlantPower(plantPower); return true; } catch { return false; } }
public void Initialize(PlantPower plant, float newWaterAmount, float newPollenAmount) { this.plant = plant; this.waterAmount = newWaterAmount; this.pollenAmount = newPollenAmount; }
public void Initialize(PlantPower plant) { this.plant = plant; }
private bool trySendPlantPower(PlantPower plantPower, string filePath) { if (!_plantPowerService.TrySendPlantPower(plantPower)) { _logger.ErrorFormat("PlantPower won't be updated from : {0}", filePath); return false; } _logger.InfoFormat("DONE sending PlantPower Date: {0} Power:{1} from file {2}", plantPower.UtcUpdatedDateTime, plantPower.Power, filePath); return true; }
private void sendPlantPower(PlantPower plantPower, string filePath) { trySendPlantPower(plantPower, filePath); }
private List<PlantPower> getPlantPowerList(IList<Meter> meterList) { var plantPowerList = new List<PlantPower>(); Logger.Debug(String.Format("MeterList has {0} distinct elements", meterList.Count)); List<DateTime> dateList = new List<DateTime>(); dateList=meterList.Distinct().Select(x=>x.startDate).Distinct().ToList(); dateList=dateList.Concat(meterList.Distinct().Select(x=>x.endDate).Distinct()).ToList(); Logger.Debug(String.Format("DateList has {0} distinct elements", dateList.Count)); for (int i=0; i<dateList.Count-1;i++) { PlantPower plantPower = new PlantPower(); var totalPower = 0.0; foreach (var meter in meterList.OrderBy(x => x.startDate)) { //Logger.Debug(String.Format("startDate:{0}, EndDate{1}", dateList[i], dateList[i + 1])); if (meter.startDate <= dateList[i] && meter.endDate >= dateList[i+1]) { plantPower.IdPlant = meter.IdPlant; plantPower.startDate = dateList[i]; plantPower.endDate = dateList[i + 1]; totalPower += meter.Power * 1000; } } plantPower.Power = Math.Round(totalPower, 5); Logger.Debug(String.Format("IdPlant: {0},Startdate: {1}, EndDate: {2}, Power: {3}", plantPower.IdPlant, plantPower.startDate,plantPower.endDate,plantPower.Power)); plantPowerList.Add(plantPower); } return plantPowerList; }
public void PutPlantPower(PlantPower plantPower) { _logger.DebugFormat("Converting to JSON plantPower"); var plantPowerObjects = JsonConvert.SerializeObject(plantPower); plantPowerObjects = string.Format("{0}", plantPowerObjects); _logger.DebugFormat("PlantPowerconverted. Result: {0}", plantPowerObjects); Uri uri = new Uri(_info.PlantPowerUri); WebRequest webRequest = WebRequest.Create(uri); webRequest.Method = "PUT"; webRequest.ContentType = "application/json"; webRequest.ContentLength = Encoding.GetEncoding("utf-8").GetBytes(plantPowerObjects).Length; using (var streamWriter = new StreamWriter(webRequest.GetRequestStream())) { streamWriter.Write(plantPowerObjects); } HttpStatusCode code; using (var response = (HttpWebResponse)webRequest.GetResponse()) { code = response.StatusCode; response.GetResponseStream(); } if (code != HttpStatusCode.NoContent) throw new InvalidOperationException(string.Format("Web Api returned code {0}.", code)); }