Class: TelegraphApi::Request

Inherits:
Object
  • Object
show all
Defined in:
lib/telegraph_api_ruby/request.rb

Defined Under Namespace

Classes: ResponseError

Constant Summary collapse

API_URL =
'https://api.telegra.ph/'.freeze

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(path, opts = {}, response_schema = nil) ⇒ Request

Returns a new instance of Request.



16
17
18
19
20
# File 'lib/telegraph_api_ruby/request.rb', line 16

def initialize(path, opts = {}, response_schema = nil)
  @path = path
  @opts = opts
  @response_schema = response_schema
end

Instance Attribute Details

#optsObject (readonly)

Returns the value of attribute opts.



8
9
10
# File 'lib/telegraph_api_ruby/request.rb', line 8

def opts
  @opts
end

#pathObject (readonly)

Returns the value of attribute path.



8
9
10
# File 'lib/telegraph_api_ruby/request.rb', line 8

def path
  @path
end

#response_schemaObject (readonly)

Returns the value of attribute response_schema.



8
9
10
# File 'lib/telegraph_api_ruby/request.rb', line 8

def response_schema
  @response_schema
end

Class Method Details

.call(*args) ⇒ Object



12
13
14
# File 'lib/telegraph_api_ruby/request.rb', line 12

def self.call(*args)
  new(*args).call
end

Instance Method Details

#callObject



22
23
24
25
# File 'lib/telegraph_api_ruby/request.rb', line 22

def call
  result = request(path, opts)
  response(result.body, response_schema)
end