Class: EacRest::Api
- Inherits:
-
Object
- Object
- EacRest::Api
- Defined in:
- lib/eac_rest/api.rb
Overview
Abstract methods
- self.issue_get_url_suffix(provider_issue_id)
Constant Summary collapse
- DEFAULT_ROOT_ENTITY_CLASS_NAME_SUFFIX =
'Root'- JSON_REQUEST_HEADERS =
{ 'Accept' => 'application/json' }.freeze
Instance Attribute Summary collapse
-
#ssl_verify ⇒ Object
Returns the value of attribute ssl_verify.
Instance Method Summary collapse
- #build_service_url(suffix) ⇒ Addressable::URI
- #entity(entity_class, data_or_id, options = {}) ⇒ EacRest::Entity
- #request(service_url_suffix, headers = {}, &body_data_proc) ⇒ Object
- #request_json(service_url_suffix, headers = {}, &body_data_proc) ⇒ Object
- #root_entity ⇒ EacRest::Entity
- #root_entity_class ⇒ Class
Instance Attribute Details
#ssl_verify ⇒ Object
Returns the value of attribute ssl_verify.
11 12 13 |
# File 'lib/eac_rest/api.rb', line 11 def ssl_verify @ssl_verify end |
Instance Method Details
#build_service_url(suffix) ⇒ Addressable::URI
41 42 43 |
# File 'lib/eac_rest/api.rb', line 41 def build_service_url(suffix) ::EacRest::Helper.url_join(root_url, suffix) end |
#entity(entity_class, data_or_id, options = {}) ⇒ EacRest::Entity
20 21 22 |
# File 'lib/eac_rest/api.rb', line 20 def entity(entity_class, data_or_id, = {}) entity_class.new(self, data_or_id, ) end |
#request(service_url_suffix, headers = {}, &body_data_proc) ⇒ Object
24 25 26 27 28 29 30 |
# File 'lib/eac_rest/api.rb', line 24 def request(service_url_suffix, headers = {}, &body_data_proc) r = ::EacRest::Request.new(build_service_url(service_url_suffix), body_data_proc).ssl_verify(ssl_verify) headers.each { |name, value| r = r.header(name, value) } r = r.autenticate(username, password) if username.present? r end |
#request_json(service_url_suffix, headers = {}, &body_data_proc) ⇒ Object
32 33 34 35 36 37 38 |
# File 'lib/eac_rest/api.rb', line 32 def request_json(service_url_suffix, headers = {}, &body_data_proc) request(service_url_suffix, headers.merge(JSON_REQUEST_HEADERS)) do |body_data| r = body_data.is_a?(::Enumerable) ? body_data : ::JSON.parse(body_data) r = body_data_proc.call(r) if body_data_proc r end end |
#root_entity ⇒ EacRest::Entity
46 47 48 |
# File 'lib/eac_rest/api.rb', line 46 def root_entity @root_entity ||= root_entity_class.new(self, nil) end |
#root_entity_class ⇒ Class
51 52 53 |
# File 'lib/eac_rest/api.rb', line 51 def root_entity_class self.class.const_get(DEFAULT_ROOT_ENTITY_CLASS_NAME_SUFFIX) end |