Пример #1
0
        public void Record(decimal temperature)
        {
            Guard.Against.OutOfRange(temperature, nameof(temperature), -273, Decimal.MaxValue);

            var @event = TemperatureRecorded.Create(
                Id,
                temperature
                );

            Enqueue(@event);
            Apply(@event);
        }
    public void Record(decimal temperature)
    {
        if (temperature < -273)
        {
            throw new ArgumentOutOfRangeException(nameof(temperature));
        }

        var @event = TemperatureRecorded.Create(
            Id,
            temperature
            );

        Enqueue(@event);
        Apply(@event);
    }
        public void Handle(TemperatureRecorded @event)
        {
            var request = new RestRequest("api/v1/handle-temperature-recorded", Method.POST);

            request.AddHeader("x-functions-key", API_KEY);

            request.AddJsonBody(new {
                City        = @event.City,
                Temperature = @event.Temperature,
                Date        = @event.TimeStamp.Date.ToString("yyyy-MM-dd")
            });

            var response = _httpClient.Execute(request);

            if (response.StatusCode != System.Net.HttpStatusCode.OK)
            {
                throw new ApplicationException("Error while handle Event");
            }
        }
 public void Apply(TemperatureRecorded @event)
 {
     Mesurements.Add(@event.Temperature);
     LastRecorded = @event.MeasuredAt;
 }