public async Task <List <ClanWarLog> > GetWarLogsAsync(string clanTag, ClanWarLogFilter clanWarLogFilter = null)
        {
            Ensure.ArgumentNotNullOrEmptyString(clanTag, nameof(clanTag));

            var apiResponse = await GetWarLogsResponseAsync(clanTag, clanWarLogFilter);

            return(apiResponse.GetModel());
        }
        public async Task <ApiResponse <List <ClanWarLog> > > GetWarLogsResponseAsync(string clanTag, ClanWarLogFilter clanWarLogFilter = null)
        {
            Ensure.ArgumentNotNullOrEmptyString(clanTag, nameof(clanTag));

            var apiResponse = await _restApiClient.GetApiResponseAsync <List <ClanWarLog> >(UrlPathBuilder.GetClanWarLogUrl(clanTag), clanWarLogFilter?.ToQueryParams());

            return(apiResponse);
        }
Exemple #3
0
        public async Task <IApiResponse <PagedClanWarLogs> > GetWarLogResponseAsync(string clanTag, ClanWarLogFilter clanWarLogFilter = null)
        {
            Ensure.ArgumentNotNullOrEmptyString(clanTag, nameof(clanTag));

            if (clanWarLogFilter?.After != null && clanWarLogFilter.Before != null)
            {
                throw new InvalidOperationException("Only after or before can be specified for a request, not both.");
            }

            IApiResponse <PagedClanWarLogs> apiResponse = await RestApiClient.GetApiResponseAsync <PagedClanWarLogs>(UrlPathBuilder.GetWarlogUrl(clanTag),
                                                                                                                     clanWarLogFilter?.ToQueryParams());

            return(apiResponse);
        }
Exemple #4
0
        public async Task <PagedClanWarLogs> GetWarLogAsync(string clanTag, ClanWarLogFilter clanWarLogFilter = null)
        {
            IApiResponse <PagedClanWarLogs> apiResponse = await GetWarLogResponseAsync(clanTag, clanWarLogFilter);

            return(apiResponse.Model);
        }