コード例 #1
0
        /// <summary>
        /// Get example function.
        /// </summary>
        /// <returns></returns>
        public object GetExamples()
        {
            PrecipitationInput example = new PrecipitationInput()
            {
                Source       = "nldas",
                DateTimeSpan = new DateTimeSpan()
                {
                    StartDate = new DateTime(2015, 01, 01),
                    EndDate   = new DateTime(2015, 01, 08)
                },
                Geometry = new TimeSeriesGeometry()
                {
                    Point = new PointCoordinate()
                    {
                        Latitude  = 33.925673,
                        Longitude = -83.355723
                    },
                    Timezone = new Timezone()
                    {
                        Name   = "EST",
                        Offset = -5,
                        DLS    = true
                    }
                }
            };

            return(example);
        }
コード例 #2
0
        public ITimeSeriesOutput POST([FromBody] PrecipitationInput precipInput)
        {
            WSPrecipitation   precip  = new WSPrecipitation();
            ITimeSeriesOutput results = precip.GetPrecipitation(precipInput);

            results.Metadata = Utilities.Metadata.AddToMetadata("request_url", this.Request.Path, results.Metadata);
            return(results);
        }
コード例 #3
0
        public async Task <IActionResult> POST([FromBody] PrecipitationInput precipInput)
        {
            WSPrecipitation   precip  = new WSPrecipitation();
            ITimeSeriesOutput results = await precip.GetPrecipitation(precipInput);

            results.Metadata = Utilities.Metadata.AddToMetadata("request_url", this.Request.Path, results.Metadata);
            return(new ObjectResult(results));
        }
コード例 #4
0
        public async Task ValidRequests(string precipInputString, int expected)
        {
            string             endpoint = "api/hydrology/precipitation";
            PrecipitationInput input    = JsonConvert.DeserializeObject <PrecipitationInput>(precipInputString);

            input.TemporalResolution = "daily";
            Debug.WriteLine("Integration Test: Precipitation controller; Endpoint: " + endpoint + "; Data source: " + input.Source);
            var response = await _client.PostAsync(
                endpoint,
                new StringContent(JsonConvert.SerializeObject(input), Encoding.UTF8, "application/json"));

            response.EnsureSuccessStatusCode();
            var result = await response.Content.ReadAsStringAsync();

            Assert.NotNull(result);
            TimeSeriesOutput resultObj = JsonConvert.DeserializeObject <TimeSeriesOutput>(result);

            Assert.Equal(expected, resultObj.Data.Count);
        }
コード例 #5
0
        /// <summary>
        /// Get example function.
        /// </summary>
        /// <returns></returns>
        public object GetExamples()
        {
            PrecipitationInput example = new PrecipitationInput()
            {
                Source       = "nldas",
                DateTimeSpan = new DateTimeSpan()
                {
                    StartDate      = new DateTime(2015, 01, 01),
                    EndDate        = new DateTime(2015, 01, 08),
                    DateTimeFormat = "yyyy-MM-dd HH"
                },
                Geometry = new TimeSeriesGeometry()
                {
                    Description = "EPA Athens Office",
                    Point       = new PointCoordinate()
                    {
                        Latitude  = 33.925673,
                        Longitude = -83.355723
                    },
                    GeometryMetadata = new Dictionary <string, string>()
                    {
                        { "City", "Athens" },
                        { "State", "Georgia" },
                        { "Country", "United States" }
                    },
                    Timezone = new Timezone()
                    {
                        Name   = "EST",
                        Offset = -5,
                        DLS    = false
                    }
                },
                DataValueFormat    = "E3",
                TemporalResolution = "default",
                TimeLocalized      = true,
                Units        = "default",
                OutputFormat = "json"
            };

            return(example);
        }