class OneOne::Client
Constants
- API_URL
- API_VERSION
Attributes
token[R]
Public Class Methods
new(options)
click to toggle source
# File lib/one_one/client.rb, line 11 def initialize(options) @token = options[:token] end
resources()
click to toggle source
This is used to lazy-load resources. It is stored in the @resources instance variable when a caller requests the resource.
# File lib/one_one/client.rb, line 24 def self.resources { servers: ServerResource, images: ImageResource, server_appliances: ServerApplianceResource, firewall_policies: FirewallPolicyResource } end
Public Instance Methods
connection()
click to toggle source
# File lib/one_one/client.rb, line 15 def connection Faraday.new(connection_options) do |req| req.adapter :net_http end end
method_missing(name, *args, &block)
click to toggle source
This attaches resources to the client Resources map to a specific model
Calls superclass method
# File lib/one_one/client.rb, line 39 def method_missing(name, *args, &block) if self.class.resources.keys.include?(name) resources[name] ||= self.class.resources[name].new(connection: connection) resources[name] else super end end
resources()
click to toggle source
# File lib/one_one/client.rb, line 33 def resources @resources ||= {} end
token_valid?()
click to toggle source
# File lib/one_one/client.rb, line 48 def token_valid? res = connection.get('/v1/') binding.pry end
Private Instance Methods
connection_options()
click to toggle source
# File lib/one_one/client.rb, line 55 def connection_options { url: API_URL, headers: { content_type: 'application/json', 'x-token' => token } } end