Class: TrailerVote::Api::Configuration

Inherits:
Object
  • Object
show all
Includes:
TrailerVote::Api::Composable::Get
Defined in:
lib/trailer_vote/api/issue.rb,
lib/trailer_vote/api/product.rb,
lib/trailer_vote/api/place/find.rb,
lib/trailer_vote/api/place/lookup.rb,
lib/trailer_vote/api/configuration.rb,
lib/trailer_vote/api/product/lookup.rb

Constant Summary collapse

SUCCESS =
MediaTypes::Configuration.to_constructable.version(5)
FAILURE =
MediaTypes::Errors.to_constructable.version(1)
ACCEPT =
[SUCCESS.to_s, FAILURE.to_s(0.1)].join(', ').freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from TrailerVote::Api::Composable::Get

#etag, included, #links, #to_h, #to_i

Constructor Details

#initialize(client:, url: nil, result: nil) ⇒ Configuration



26
27
28
29
30
# File 'lib/trailer_vote/api/configuration.rb', line 26

def initialize(client:, url: nil, result: nil)
  self.client = client
  self.result = result
  self.url = url
end

Instance Attribute Details

#clientObject Also known as: resolve_client

Returns the value of attribute client.



24
25
26
# File 'lib/trailer_vote/api/configuration.rb', line 24

def client
  @client
end

Instance Method Details

#call(url: resolve_url) ⇒ Object



36
37
38
39
40
41
# File 'lib/trailer_vote/api/configuration.rb', line 36

def call(url: resolve_url)
  return self if ok? || !url
  guard_network_errors do
    merge(resolve_client.headers(Headers::ACCEPT => ACCEPT).get(url))
  end
end

#dataObject



32
33
34
# File 'lib/trailer_vote/api/configuration.rb', line 32

def data
  to_h[:configuration]
end

#issueTrailerVote::Api::Issue::Find



10
11
12
# File 'lib/trailer_vote/api/issue.rb', line 10

def issue
  Issue.new(configuration: self)
end

#placeTrailerVote::Api::Place::Find



11
12
13
# File 'lib/trailer_vote/api/place/find.rb', line 11

def place
  Place::Find.new(configuration: self)
end

#place_lookupTrailerVote::Api::Place::Lookup



13
14
15
# File 'lib/trailer_vote/api/place/lookup.rb', line 13

def place_lookup
  Place::Lookup.new(configuration: self)
end

#productTrailerVote::Api::Product Also known as: products



10
11
12
# File 'lib/trailer_vote/api/product.rb', line 10

def product
  Product.new(configuration: self)
end

#product_lookupTrailerVote::Api::Product::Lookup



13
14
15
# File 'lib/trailer_vote/api/product/lookup.rb', line 13

def product_lookup
  product.lookup
end