Module: Particle::Configurable

Included in:
Particle, Client
Defined in:
lib/particle/configurable.rb

Overview

Configuration options for Client, defaulting to values in Default

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#access_tokenString

Returns Particle access token for authentication.

Returns:

  • (String)

    Particle access token for authentication

See Also:



17
18
19
# File 'lib/particle/configurable.rb', line 17

def access_token
  @access_token
end

#api_endpointObject

Clever way to add / at the end of the api_endpoint



17
18
# File 'lib/particle/configurable.rb', line 17

attr_accessor :access_token, :connection_options,
:user_agent

#connection_optionsHash

Returns Configure connection options for Faraday.

Returns:

  • (Hash)

    Configure connection options for Faraday

See Also:



17
18
# File 'lib/particle/configurable.rb', line 17

attr_accessor :access_token, :connection_options,
:user_agent

#user_agentString

Returns Configure User-Agent header for requests.

Returns:

  • (String)

    Configure User-Agent header for requests.



17
18
# File 'lib/particle/configurable.rb', line 17

attr_accessor :access_token, :connection_options,
:user_agent

Class Method Details

.keysObject



22
23
24
25
26
27
28
29
# File 'lib/particle/configurable.rb', line 22

def keys
  @keys ||= [
    :access_token,
    :api_endpoint,
    :connection_options,
    :user_agent
  ]
end

Instance Method Details

#configure {|_self| ... } ⇒ Object

Yields an object to set up configuration options in an initializer file

Yields:

  • (_self)

Yield Parameters:



34
35
36
# File 'lib/particle/configurable.rb', line 34

def configure
  yield self
end

#reset!Object

Reset configuration options to default values



39
40
41
42
43
# File 'lib/particle/configurable.rb', line 39

def reset!
  Particle::Configurable.keys.each do |key|
    instance_variable_set :"@#{key}", Particle::Default.options[key]
  end
end

#same_options?(opts) ⇒ Boolean

Compares client options to a Hash of requested options

Parameters:

  • opts (Hash)

    Options to compare with current client options

Returns:

  • (Boolean)


49
50
51
# File 'lib/particle/configurable.rb', line 49

def same_options?(opts)
  opts.hash == options.hash
end