class Client::TwitterClient
Public Class Methods
new(options)
click to toggle source
# File lib/favt/client.rb, line 16 def initialize(options) yaml_file = options["config_file"] || "config.yaml" @render = options["render"] || Favt::Render @options = options @config = YAML.load_file(yaml_file) self.init_client end
Public Instance Methods
favorite_posts()
click to toggle source
# File lib/favt/client.rb, line 46 def favorite_posts show_fav_posts = self.to_set(self.favorites_from_user.sort do |prev_post, next_post| next_post.id <=> prev_post.id end) return self.take(show_fav_posts) end
favorites_from_user()
click to toggle source
# File lib/favt/client.rb, line 24 def favorites_from_user users = self.target_users return users.flat_map do |user| @client.favorites user end end
init_client()
click to toggle source
# File lib/favt/client.rb, line 6 def init_client keys = @config["client"] @client = Twitter::REST::Client.new do |config| config.consumer_key = keys["consumer_key"] config.consumer_secret = keys["consumer_secret"] config.access_token = keys["access_token"] config.access_token_secret = keys["access_token_secret"] end end
render()
click to toggle source
# File lib/favt/client.rb, line 67 def render self.favorite_posts.each do |_, favorite| print @render.new(favorite, @options, @config).to_s print "\n" end end
take(set_fav_posts)
click to toggle source
# File lib/favt/client.rb, line 31 def take(set_fav_posts) show_count = @options["show_count"].to_i || 0 if show_count != 0 return set_fav_posts.take(show_count) end return set_fav_posts end
target_users()
click to toggle source
# File lib/favt/client.rb, line 39 def target_users if !@options["user"] return @config["users"] end return [@options["user"]] end
to_set(favorites)
click to toggle source
# File lib/favt/client.rb, line 54 def to_set(favorites) favorites_dict = {} favorites.each do |favorite| if !(favorites_dict.key? favorite.id) favorites_dict[favorite.id] = { "users" => 1, "post" => favorite} else favorites_dict[favorite.id]["users"] += 1 end end return favorites_dict end