public void Validate(IGetUserListMembershipsParameters parameters)
        {
            if (parameters == null)
            {
                throw new ArgumentNullException(nameof(parameters));
            }

            _userQueryValidator.ThrowIfUserCannotBeIdentified(parameters.User);
        }
Beispiel #2
0
        public ITwitterIterator <ITwitterList> GetUserListMembershipsIterator(IGetUserListMembershipsParameters parameters)
        {
            var iterator = _twitterListsRequester.GetUserListMembershipsIterator(parameters);

            return(new TwitterIteratorProxy <ITwitterResult <ITwitterListCursorQueryResultDTO>, ITwitterList>(iterator, pageResult =>
            {
                var listDtos = pageResult.Model.TwitterLists;
                return listDtos?.Select(dto => _client.Factories.CreateTwitterList(dto)).ToArray();
            }));
        }
Beispiel #3
0
        public void Validate(IGetUserListMembershipsParameters parameters)
        {
            _twitterListsClientRequiredParametersValidator.Validate(parameters);

            var maxPageSize = Limits.LISTS_GET_USER_MEMBERSHIPS_MAX_PAGE_SIZE;

            if (parameters.PageSize > maxPageSize)
            {
                throw new TwitterArgumentLimitException($"{nameof(parameters)}.{nameof(parameters.PageSize)}", maxPageSize, nameof(Limits.LISTS_GET_USER_MEMBERSHIPS_MAX_PAGE_SIZE), "page size");
            }
        }
Beispiel #4
0
        public string GetUserListMembershipsQuery(IGetUserListMembershipsParameters parameters)
        {
            var query = new StringBuilder(Resources.List_GetUserMemberships);

            _userQueryParameterGenerator.AppendUser(query, parameters.User);
            _queryParameterGenerator.AppendCursorParameters(query, parameters);
            query.AddParameterToQuery("filter_to_owned_lists", parameters.OnlyRetrieveAccountLists);

            query.AddFormattedParameterToQuery(parameters.FormattedCustomQueryParameters);

            return(query.ToString());
        }
Beispiel #5
0
 public void Validate(IGetUserListMembershipsParameters parameters)
 {
     _twitterListsClientParametersValidator.Validate(parameters);
 }
Beispiel #6
0
 public Task <ITwitterResult <ITwitterListCursorQueryResultDTO> > GetUserListMembershipsAsync(IGetUserListMembershipsParameters parameters, ITwitterRequest request)
 {
     request.Query.Url        = _listsQueryGenerator.GetUserListMembershipsQuery(parameters);
     request.Query.HttpMethod = HttpMethod.GET;
     return(_twitterAccessor.ExecuteRequestAsync <ITwitterListCursorQueryResultDTO>(request));
 }
Beispiel #7
0
        public async Task <ITwitterList[]> GetUserListMembershipsAsync(IGetUserListMembershipsParameters parameters)
        {
            var iterator = GetUserListMembershipsIterator(parameters);

            return((await iterator.NextPageAsync().ConfigureAwait(false)).ToArray());
        }
Beispiel #8
0
 public static IEnumerable <ITwitterList> GetUserListMemberships(IUserIdentifier userIdentifier, IGetUserListMembershipsParameters parameters = null)
 {
     return(TwitterListController.GetUserListsMemberships(userIdentifier, parameters));
 }
Beispiel #9
0
        // Get Memberships

        public static IEnumerable <ITwitterList> GetUserListMemberships(string username, IGetUserListMembershipsParameters parameters = null)
        {
            return(TwitterListController.GetUserListsMemberships(new UserIdentifier(username), parameters));
        }
Beispiel #10
0
 public GetUserListMembershipsParameters(IGetUserListMembershipsParameters parameters) : base(parameters)
 {
     User = parameters?.User;
 }
Beispiel #11
0
        public ITwitterPageIterator <ITwitterResult <ITwitterListCursorQueryResultDTO> > GetUserListMembershipsIterator(IGetUserListMembershipsParameters parameters)
        {
            _validator.Validate(parameters);

            var request = TwitterClient.CreateRequest();

            request.ExecutionContext.Converters = JsonQueryConverterRepository.Converters;
            return(_twitterListController.GetUserListMembershipsIterator(parameters, request));
        }
        public ITwitterPageIterator <ITwitterResult <ITwitterListCursorQueryResultDTO> > GetUserListMembershipsIterator(IGetUserListMembershipsParameters parameters, ITwitterRequest request)
        {
            return(_pageCursorIteratorFactories.Create(parameters, cursor =>
            {
                var cursoredParameters = new GetUserListMembershipsParameters(parameters)
                {
                    Cursor = cursor
                };

                return _twitterListQueryExecutor.GetUserListMembershipsAsync(cursoredParameters, new TwitterRequest(request));
            }));
        }
Beispiel #13
0
        public IEnumerable <ITwitterList> GetUserListsMemberships(IUserIdentifier userIdentifier, IGetUserListMembershipsParameters parameters)
        {
            var queryParameters = new GetUserListMembershipsQueryParameters(userIdentifier);

            if (parameters != null)
            {
                queryParameters.Parameters = parameters;
            }

            return(GetUserListsMemberships(queryParameters));
        }