Class: Brutalismbot::Reddit::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/brutalismbot/reddit/client.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(endpoint: nil, user_agent: nil) ⇒ Client

Returns a new instance of Client.



11
12
13
14
# File 'lib/brutalismbot/reddit/client.rb', line 11

def initialize(endpoint:nil, user_agent:nil)
  @endpoint   = endpoint   || ENV["REDDIT_ENDPOINT"]   || "https://www.reddit.com/r/brutalism"
  @user_agent = user_agent || ENV["REDDIT_USER_AGENT"] || "Brutalismbot v#{Brutalismbot::VERSION}"
end

Instance Attribute Details

#endpointObject (readonly)

Returns the value of attribute endpoint.



9
10
11
# File 'lib/brutalismbot/reddit/client.rb', line 9

def endpoint
  @endpoint
end

#user_agentObject (readonly)

Returns the value of attribute user_agent.



9
10
11
# File 'lib/brutalismbot/reddit/client.rb', line 9

def user_agent
  @user_agent
end

Instance Method Details

#list(resource, **options) ⇒ Object



16
17
18
19
20
21
# File 'lib/brutalismbot/reddit/client.rb', line 16

def list(resource, **options)
  url = File.join(@endpoint, "#{resource}.json")
  qry = URI.encode_www_form(options)
  uri = "#{url}?#{qry}"
  Resource.new(uri: uri, user_agent: @user_agent)
end