public GetListSubscribersParameters(IGetListSubscribersParameters parameters) : base(parameters) { if (parameters == null) { PageSize = TwitterLimits.DEFAULTS.LISTS_GET_SUBSCRIBERS_MAX_PAGE_SIZE; } }
public ITwitterIterator <IUser> GetListSubscribersIterator(IGetListSubscribersParameters parameters) { var pageIterator = _twitterListsRequester.GetListSubscribersIterator(parameters); return(new TwitterIteratorProxy <ITwitterResult <IUserCursorQueryResultDTO>, IUser>(pageIterator, pageResult => { return _client.Factories.CreateUsers(pageResult?.Model?.Users); })); }
public void Validate(IGetListSubscribersParameters parameters) { if (parameters == null) { throw new ArgumentNullException(nameof(parameters)); } ThrowIfListIdentifierIsNotValid(parameters.List); }
public void Validate(IGetListSubscribersParameters parameters) { _twitterListsClientRequiredParametersValidator.Validate(parameters); var maxPageSize = Limits.LISTS_GET_SUBSCRIBERS_MAX_PAGE_SIZE; if (parameters.PageSize > maxPageSize) { throw new TwitterArgumentLimitException($"{nameof(parameters)}.{nameof(parameters.PageSize)}", maxPageSize, nameof(Limits.LISTS_GET_SUBSCRIBERS_MAX_PAGE_SIZE), "page size"); } }
public string GetListSubscribersQuery(IGetListSubscribersParameters parameters) { var query = new StringBuilder(Resources.List_GetSubscribers); _twitterListQueryParameterGenerator.AppendListIdentifierParameter(query, parameters); _queryParameterGenerator.AppendCursorParameters(query, parameters); query.AddParameterToQuery("include_entities", parameters.IncludeEntities); query.AddParameterToQuery("skip_status", parameters.SkipStatus); query.AddFormattedParameterToQuery(parameters.FormattedCustomQueryParameters); return(query.ToString()); }
public void Validate(IGetListSubscribersParameters parameters) { _twitterListsClientParametersValidator.Validate(parameters); }
public Task <ITwitterResult <IUserCursorQueryResultDTO> > GetListSubscribersAsync(IGetListSubscribersParameters parameters, ITwitterRequest request) { request.Query.Url = _listsQueryGenerator.GetListSubscribersQuery(parameters); request.Query.HttpMethod = HttpMethod.GET; return(_twitterAccessor.ExecuteRequestAsync <IUserCursorQueryResultDTO>(request)); }
public async Task <IUser[]> GetListSubscribersAsync(IGetListSubscribersParameters parameters) { var iterator = GetListSubscribersIterator(parameters); return((await iterator.NextPageAsync().ConfigureAwait(false)).ToArray()); }
public ITwitterPageIterator <ITwitterResult <IUserCursorQueryResultDTO> > GetListSubscribersIterator(IGetListSubscribersParameters parameters) { _validator.Validate(parameters); var request = TwitterClient.CreateRequest(); request.ExecutionContext.Converters = JsonQueryConverterRepository.Converters; return(_twitterListController.GetListSubscribersIterator(parameters, request)); }
public ITwitterPageIterator <ITwitterResult <IUserCursorQueryResultDTO> > GetListSubscribersIterator(IGetListSubscribersParameters parameters, ITwitterRequest request) { return(_pageCursorIteratorFactories.Create(parameters, cursor => { var cursoredParameters = new GetListSubscribersParameters(parameters) { Cursor = cursor }; return _twitterListQueryExecutor.GetListSubscribersAsync(cursoredParameters, new TwitterRequest(request)); })); }