Ejemplo n.º 1
0
        public async Task <IActionResult> GetAsync(DateTime?realtime_start, DateTime?realtime_end,
                                                   int?limit, int?offset, string order_by, string sort_order)
        {
            ReleasesResponse result = new ReleasesResponse();

            try
            {
                api.Arguments.ApiKey = appSettings.ApiKey;

                api.Arguments.realtime_start = realtime_start ?? api.Arguments.realtime_start;
                api.Arguments.realtime_end   = realtime_end ?? api.Arguments.realtime_end;
                api.Arguments.limit          = limit ?? api.Arguments.limit;
                api.Arguments.offset         = offset ?? api.Arguments.offset;

                var orderBy = ParseEnum <releases_order_by_values>(order_by);
                api.Arguments.order_by = orderBy ?? api.Arguments.order_by;

                var sortOrder = ParseEnum <sort_order_values>(sort_order);
                api.Arguments.sort_order = sortOrder ?? api.Arguments.sort_order;

                result.container = await api.FetchAsync();

                SetApiValues(api, result);
            }
            catch (Exception exception)
            {
                logger.LogError(exception, "GetReleases failed");
                return(StatusCode(500));
            }

            return(Ok(result));
        }