Class: Rester::Client::Adapters::LocalAdapter

Inherits:
Adapter
  • Object
show all
Defined in:
lib/rester/client/adapters/local_adapter.rb

Overview

An adapter for “connecting” to a service internally, without needing to interface over a HTTP connection.

Instance Attribute Summary collapse

Attributes inherited from Adapter

#timeout

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Adapter

#headers, #initialize, #request

Constructor Details

This class inherits a constructor from Rester::Client::Adapters::Adapter

Instance Attribute Details

#serviceObject (readonly)

Returns the value of attribute service.



11
12
13
# File 'lib/rester/client/adapters/local_adapter.rb', line 11

def service
  @service
end

Class Method Details

.can_connect_to?(service) ⇒ Boolean

Returns:

  • (Boolean)


14
15
16
# File 'lib/rester/client/adapters/local_adapter.rb', line 14

def can_connect_to?(service)
  service.is_a?(Class) && !!(service < Service)
end

Instance Method Details

#connect(service) ⇒ Object

Class Methods



19
20
21
# File 'lib/rester/client/adapters/local_adapter.rb', line 19

def connect(service)
  nil.tap { @service = service }
end

#connected?Boolean

Returns:

  • (Boolean)


23
24
25
# File 'lib/rester/client/adapters/local_adapter.rb', line 23

def connected?
  !!service
end

#request!(verb, path, encoded_data) ⇒ Object



27
28
29
30
# File 'lib/rester/client/adapters/local_adapter.rb', line 27

def request!(verb, path, encoded_data)
  data_key = [:get, :delete].include?(verb) ? :query : :data
  _request(verb, path, headers: headers, data_key => encoded_data)
end