public async Task <PagedResource <Currency> > GetAsync(CurrencyRequest request) { Requires.ArgumentNotNull(request, nameof(request)); var root = await _halClient.GetRootAsync().ConfigureAwait(_halClient); return(await _halClient.GetAsync <PagedResource <Currency> >(root.CurrenciesLink, request).ConfigureAwait(_halClient)); }
public async Task <Venue> GetAsync(int venueId, VenueRequest request) { var root = await _halClient.GetRootAsync().ConfigureAwait(_halClient); var venueLink = new Link { HRef = $"{root.VenuesLink.HRef}/{venueId}" }; return(await _halClient.GetAsync <Venue>(venueLink, request).ConfigureAwait(_halClient)); }
public async Task <Event> GetAsync(int eventId, EventRequest request) { Requires.ArgumentNotNull(request, nameof(request)); var root = await _halClient.GetRootAsync().ConfigureAwait(_halClient); var eventsLink = new Link { HRef = $"{root.SelfLink.HRef}/events/{eventId}" }; return(await _halClient.GetAsync <Event>(eventsLink, request).ConfigureAwait(_halClient)); }
public async Task <Listing> GetAsync(int listingId, ListingRequest request) { Requires.ArgumentNotNull(request, nameof(request)); var root = await _halClient.GetRootAsync().ConfigureAwait(_halClient); var listingLink = new Link { HRef = $"{root.SelfLink.HRef}/listings/{listingId}" }; return(await _halClient.GetAsync <Listing>(listingLink, request).ConfigureAwait(_halClient)); }
public async Task <IReadOnlyList <Category> > GetAllGenresAsync(CategoryRequest request) { Requires.ArgumentNotNull(request, nameof(request)); var root = await _halClient.GetRootAsync().ConfigureAwait(_halClient); return(await _halClient.GetAllPagesAsync <Category>(root.GenresLink, request).ConfigureAwait(_halClient)); }
public async Task <User> GetAsync(UserRequest request, CancellationToken cancellationToken) { var root = await _halClient.GetRootAsync().ConfigureAwait(_halClient); return(await _halClient.GetAsync <User>( root.UserLink, request, cancellationToken).ConfigureAwait(_halClient)); }
private async Task <T> GetInternalAsync <T>( string query, SearchResultRequest request, Func <Link, IRequestParameters, Task <T> > getSearchResultsFunc) { Requires.ArgumentNotNull(query, nameof(query)); Requires.ArgumentNotNull(request, nameof(request)); Requires.ArgumentNotNull(getSearchResultsFunc, nameof(getSearchResultsFunc)); var root = await _halClient.GetRootAsync().ConfigureAwait(_halClient); request.Parameters.Add("query", query); return(await getSearchResultsFunc(root.SearchLink, request).ConfigureAwait(_halClient)); }
public static Task <Root> GetRootAsync(this IHalClient client, RootRequest request) { return(client.GetRootAsync <Root>(request)); }
public static Task <Root> GetRootAsync(this IHalClient client) { return(client.GetRootAsync(new RootRequest())); }