public async Task<IEnumerable<IGalleryItem>> SearchGalleryAsync(string query,
GallerySortOrder? sort = GallerySortOrder.Time,
TimeWindow? window = TimeWindow.All, int? page = null)
{
if (string.IsNullOrWhiteSpace(query))
throw new ArgumentNullException(nameof(query));
sort = sort ?? GallerySortOrder.Time;
window = window ?? TimeWindow.All;
var sortValue = $"{sort}".ToLower();
var windowValue = $"{window}".ToLower();
var url = $"gallery/search/{sortValue}/{windowValue}/{page}";
url = RequestBuilder.SearchGalleryRequest(url, query);
using (var request = RequestBuilder.CreateRequest(HttpMethod.Get, url))
{
var searchResults = await SendRequestAsync<IEnumerable<GalleryItem>>(request).ConfigureAwait(false);
return searchResults;
}
}
}