view app/lib/clients.rb @ 243:bc2f45058c9e legit-client

Prevent caching of rate limited error and combine response handling
author nanaya <me@nanaya.net>
date Sun, 16 Jul 2023 08:53:59 +0900
parents 17461f7682a2
children
line wrap: on
line source

class Clients
  def self.client_options(id)
    {
      :timeouts => {
        :connect => 5,
        :read => 5,
        :write => 5,
      },
    }.merge $cfg[:twitter][id]
  end

  def self.instance
    @@instance ||= self.new
  end

  def initialize
    @clients = {}
  end

  def get(id)
    @clients[id] ||= Twitter::REST::Client.new(self.class.client_options id)
  end
end