コード例 #1
0
        public GetFollowersParameters(IGetFollowersParameters parameters) : base(parameters)
        {
            GetUsersPageSize = TwitterLimits.DEFAULTS.USERS_GET_USERS_MAX_SIZE;

            if (parameters == null)
            {
                return;
            }

            SkipStatus       = parameters.SkipStatus;
            IncludeEntities  = parameters.IncludeEntities;
            GetUsersPageSize = parameters.GetUsersPageSize;
        }
コード例 #2
0
        public void Validate(IGetFollowersParameters parameters)
        {
            _usersClientRequiredParametersValidator.Validate(parameters);

            Validate(parameters as IGetFollowerIdsParameters);

            var maxUserPerPage = Limits.USERS_GET_USERS_MAX_SIZE;

            if (parameters.GetUsersPageSize > maxUserPerPage)
            {
                throw new TwitterArgumentLimitException($"{nameof(parameters)}.{nameof(parameters.GetUsersPageSize)}", maxUserPerPage, nameof(Limits.USERS_GET_USERS_MAX_SIZE), "user ids");
            }
        }
コード例 #3
0
        public IMultiLevelCursorIterator <long, IUser> GetFollowersIterator(IGetFollowersParameters parameters)
        {
            var followerPageIterator = _usersRequester.GetFollowerIdsIterator(parameters);

            var maxPageSize = _client.ClientSettings.Limits.USERS_GET_USERS_MAX_SIZE;

            if (parameters.GetUsersPageSize > maxPageSize)
            {
                throw new TwitterArgumentLimitException($"{nameof(parameters)}.{nameof(parameters.GetUsersPageSize)}", maxPageSize, nameof(_client.ClientSettings.Limits.USERS_GET_USERS_MAX_SIZE),
                                                        "page size");
            }

            return(_multiLevelCursorIteratorFactory.CreateUserMultiLevelIterator(_client, followerPageIterator, maxPageSize));
        }
コード例 #4
0
 public void Validate(IGetFollowersParameters parameters)
 {
     _usersClientParametersValidator.Validate(parameters);
 }
コード例 #5
0
 public void Validate(IGetFollowersParameters parameters)
 {
     Validate(parameters as IGetFollowerIdsParameters);
 }
コード例 #6
0
        public async Task <IUser[]> GetFollowers(IGetFollowersParameters parameters)
        {
            var iterator = GetFollowersIterator(parameters);

            return((await iterator.NextPage().ConfigureAwait(false)).ToArray());
        }