Ejemplo n.º 1
0
        public Task <ITwitterResult <ITweetDTO> > PublishRetweetAsync(IPublishRetweetParameters parameters, ITwitterRequest request)
        {
            var query = _tweetQueryGenerator.GetPublishRetweetQuery(parameters, request.ExecutionContext.TweetMode);

            request.Query.Url        = query;
            request.Query.HttpMethod = HttpMethod.POST;
            return(_twitterAccessor.ExecuteRequestAsync <ITweetDTO>(request));
        }
Ejemplo n.º 2
0
        public void Validate(IPublishRetweetParameters parameters)
        {
            if (parameters == null)
            {
                throw new ArgumentNullException(nameof(parameters));
            }

            ThrowIfTweetCannotBeUsed(parameters.Tweet, $"{nameof(parameters)}.{nameof(parameters.Tweet)}");
        }
Ejemplo n.º 3
0
        public string GetPublishRetweetQuery(IPublishRetweetParameters parameters, ComputedTweetMode tweetMode)
        {
            var tweetId = GetTweetId(parameters.Tweet);
            var query   = new StringBuilder(string.Format(Resources.Tweet_Retweet_Publish, tweetId));

            query.AddParameterToQuery("trim_user", parameters.TrimUser);

            query.AddParameterToQuery("tweet_mode", tweetMode);
            query.AddFormattedParameterToQuery(parameters.FormattedCustomQueryParameters);

            return(query.ToString());
        }
Ejemplo n.º 4
0
        public string GetPublishRetweetQuery(IPublishRetweetParameters parameters, TweetMode?requestTweetMode)
        {
            var tweetId = GetTweetId(parameters.Tweet);
            var query   = new StringBuilder(string.Format(Resources.Tweet_Retweet_Publish, tweetId));

            query.AddParameterToQuery("trim_user", parameters.TrimUser);

            _queryParameterGenerator.AppendTweetModeParameter(query, parameters.TweetMode ?? requestTweetMode);
            query.AddFormattedParameterToQuery(parameters.FormattedCustomQueryParameters);

            return(query.ToString());
        }
Ejemplo n.º 5
0
 public void Validate(IPublishRetweetParameters parameters)
 {
     _tweetsClientParametersValidator.Validate(parameters);
 }
Ejemplo n.º 6
0
 // Retweets - Publish
 public Task <ITwitterResult <ITweetDTO> > PublishRetweet(IPublishRetweetParameters parameters, ITwitterRequest request)
 {
     return(_tweetQueryExecutor.PublishRetweet(parameters, request));
 }
Ejemplo n.º 7
0
 // Retweets - Publish
 public Task <ITwitterResult <ITweetDTO> > PublishRetweetAsync(IPublishRetweetParameters parameters)
 {
     _tweetsClientRequiredParametersValidator.Validate(parameters);
     return(ExecuteRequestAsync(request => _tweetController.PublishRetweetAsync(parameters, request)));
 }
Ejemplo n.º 8
0
        public async Task <ITweet> PublishRetweetAsync(IPublishRetweetParameters parameters)
        {
            var requestResult = await _tweetsRequester.PublishRetweetAsync(parameters).ConfigureAwait(false);

            return(_client.Factories.CreateTweet(requestResult?.Model));
        }