Class: GenesisRuby::Network::BaseNetwork
- Inherits:
-
Object
- Object
- GenesisRuby::Network::BaseNetwork
- Defined in:
- lib/genesis_ruby/network/base_network.rb
Overview
Base Network factory class
Direct Known Subclasses
Constant Summary collapse
- XML_HEADER =
'application/xml'- JSON_HEADER =
'application/json'- HTML_HEADER =
'text/html'
Instance Method Summary collapse
-
#error? ⇒ Boolean
Whether returned response is an error response.
-
#html? ⇒ Boolean
Every child defines is HTML Response Type.
-
#init_api_data(request) ⇒ Object
Initialize the Adapter.
-
#initialize(configuration) ⇒ BaseNetwork
constructor
Base constructor.
-
#json? ⇒ Boolean
Every child defines is JSON Response Type.
-
#response_body ⇒ Object
Return the Response Body.
-
#response_headers ⇒ Object
Return the Response Headers.
-
#send_request ⇒ Object
Send the request.
-
#server_message ⇒ Object
Returns the server message.
-
#xml? ⇒ Boolean
Every child defines is XML Response Type.
Constructor Details
#initialize(configuration) ⇒ BaseNetwork
Base constructor
15 16 17 18 19 |
# File 'lib/genesis_ruby/network/base_network.rb', line 15 def initialize(configuration) @context = factory @configuration = configuration @network_adapter_config = GenesisRuby::Utils::Options::NetworkAdapterConfig.new end |
Instance Method Details
#error? ⇒ Boolean
Whether returned response is an error response
32 33 34 |
# File 'lib/genesis_ruby/network/base_network.rb', line 32 def error? @context.error? end |
#html? ⇒ Boolean
Every child defines is HTML Response Type
62 63 64 |
# File 'lib/genesis_ruby/network/base_network.rb', line 62 def html? raise NotImplementedError, 'Is HTML method must be implemented' end |
#init_api_data(request) ⇒ Object
Initialize the Adapter
47 48 49 |
# File 'lib/genesis_ruby/network/base_network.rb', line 47 def init_api_data(request) @context.prepare_request(adapter_data_mapper(request)) end |
#json? ⇒ Boolean
Every child defines is JSON Response Type
57 58 59 |
# File 'lib/genesis_ruby/network/base_network.rb', line 57 def json? raise NotImplementedError, 'Is JSON method must be implemented' end |
#response_body ⇒ Object
Return the Response Body
22 23 24 |
# File 'lib/genesis_ruby/network/base_network.rb', line 22 def response_body @context.response_body end |
#response_headers ⇒ Object
Return the Response Headers
27 28 29 |
# File 'lib/genesis_ruby/network/base_network.rb', line 27 def response_headers @context.response_headers end |
#send_request ⇒ Object
Send the request
42 43 44 |
# File 'lib/genesis_ruby/network/base_network.rb', line 42 def send_request @context.execute end |
#server_message ⇒ Object
Returns the server message
37 38 39 |
# File 'lib/genesis_ruby/network/base_network.rb', line 37 def @context. end |
#xml? ⇒ Boolean
Every child defines is XML Response Type
52 53 54 |
# File 'lib/genesis_ruby/network/base_network.rb', line 52 def xml? raise NotImplementedError, 'Is XML method must be implemented' end |