Class: ResoWebApi::Client
- Inherits:
-
BaseClient
- Object
- BaseClient
- ResoWebApi::Client
- Includes:
- Resources
- Defined in:
- lib/reso_web_api/client.rb
Overview
Main class to run requests against a RESO Web API server.
Constant Summary
Constants included from Resources
Constants inherited from BaseClient
Instance Method Summary collapse
-
#connection(&block) ⇒ Faraday::Connection
Return the Faraday::Connection object for this client.
-
#headers ⇒ Hash
Headers to be send along with requests.
-
#initialize(options = {}) ⇒ Client
constructor
A new instance of Client.
-
#service ⇒ OData4::Service
Returns a proxied OData4::Service that attempts to ensure a properly authenticated and authorized connection.
-
#service_options ⇒ Hash
Returns the default options used by the by the OData service.
Methods included from Resources
Constructor Details
#initialize(options = {}) ⇒ Client
Returns a new instance of Client.
15 16 17 18 |
# File 'lib/reso_web_api/client.rb', line 15 def initialize( = {}) super() ensure_valid_auth_strategy! end |
Instance Method Details
#connection(&block) ⇒ Faraday::Connection
Return the Faraday::Connection object for this client. Yields the connection object being constructed (for customzing middleware).
29 30 31 32 33 34 |
# File 'lib/reso_web_api/client.rb', line 29 def connection(&block) super do |conn| conn.use Authentication::Middleware, @auth yield conn if block_given? end end |
#headers ⇒ Hash
Headers to be send along with requests
22 23 24 |
# File 'lib/reso_web_api/client.rb', line 22 def headers super.merge({ accept: 'application/json' }) end |
#service ⇒ OData4::Service
Returns a proxied OData4::Service that attempts to ensure a properly authenticated and authorized connection
39 40 41 42 |
# File 'lib/reso_web_api/client.rb', line 39 def service # puts odata, service_options @service ||= OData4::Service.new(connection, ) end |
#service_options ⇒ Hash
Returns the default options used by the by the OData service
46 47 48 |
# File 'lib/reso_web_api/client.rb', line 46 def @service_options ||= { logger: logger }.merge(odata || {}) end |