Class: QasDockGem::RequestsAPI
- Inherits:
-
Object
- Object
- QasDockGem::RequestsAPI
- Defined in:
- lib/qas_dock_gem/services/requests_api_services.rb
Instance Method Summary collapse
- #execute_delete(params) ⇒ Object
- #execute_get(params) ⇒ Object
- #execute_patch(params) ⇒ Object
- #execute_post(params) ⇒ Object
- #execute_put(params) ⇒ Object
- #init_request_basic_auth(token, basic_auth, headers) ⇒ Object
- #init_request_body(token, payload, headers) ⇒ Object
- #init_request_query(token, query, headers) ⇒ Object
-
#initialize ⇒ RequestsAPI
constructor
A new instance of RequestsAPI.
- #initialize_headers(token, headers) ⇒ Object
- #initialize_request(params) ⇒ Object
Constructor Details
#initialize ⇒ RequestsAPI
Returns a new instance of RequestsAPI.
6 7 8 9 10 |
# File 'lib/qas_dock_gem/services/requests_api_services.rb', line 6 def initialize require 'logger' require 'httparty' @logger = Logger.new($stdout) end |
Instance Method Details
#execute_delete(params) ⇒ Object
113 114 115 116 117 118 119 120 121 |
# File 'lib/qas_dock_gem/services/requests_api_services.rb', line 113 def execute_delete(params) formated_params = initialize_request(params) @logger.info("URI: #{params[:uri]}") @logger.info('Realizando DELETE') request = HTTParty.put(params[:uri], formated_params) @logger.info("URI Final: #{request.request.last_uri}") @logger.info("DELETE realizado \n") request end |
#execute_get(params) ⇒ Object
83 84 85 86 87 88 89 90 91 |
# File 'lib/qas_dock_gem/services/requests_api_services.rb', line 83 def execute_get(params) formated_params = initialize_request(params) @logger.info("URI: #{params[:uri]}") @logger.info('Realizando GET') request = HTTParty.get(params[:uri], formated_params) @logger.info("URI Final: #{request.request.last_uri}") @logger.info("GET realizado \n") request end |
#execute_patch(params) ⇒ Object
93 94 95 96 97 98 99 100 101 |
# File 'lib/qas_dock_gem/services/requests_api_services.rb', line 93 def execute_patch(params) formated_params = initialize_request(params) @logger.info("URI: #{params[:uri]}") @logger.info('Realizando PATCH') request = HTTParty.patch(params[:uri], formated_params) @logger.info("URI Final: #{request.request.last_uri}") @logger.info("PATCH realizado \n") request end |
#execute_post(params) ⇒ Object
73 74 75 76 77 78 79 80 81 |
# File 'lib/qas_dock_gem/services/requests_api_services.rb', line 73 def execute_post(params) formated_params = initialize_request(params) @logger.info("URI: #{params[:uri]}") @logger.info('Realizando POST') request = HTTParty.post(params[:uri], formated_params) @logger.info("URI Final: #{request.request.last_uri}") @logger.info("POST realizado \n") request end |
#execute_put(params) ⇒ Object
103 104 105 106 107 108 109 110 111 |
# File 'lib/qas_dock_gem/services/requests_api_services.rb', line 103 def execute_put(params) formated_params = initialize_request(params) @logger.info("URI: #{params[:uri]}") @logger.info('Realizando PUT') request = HTTParty.put(params[:uri], formated_params) @logger.info("URI Final: #{request.request.last_uri}") @logger.info("PUT realizado \n") request end |
#init_request_basic_auth(token, basic_auth, headers) ⇒ Object
58 59 60 61 62 |
# File 'lib/qas_dock_gem/services/requests_api_services.rb', line 58 def init_request_basic_auth(token, basic_auth, headers) final_headers = initialize_headers(token, headers) @logger.info("Headers: #{final_headers}") { headers: final_headers, basic_auth: basic_auth } end |
#init_request_body(token, payload, headers) ⇒ Object
49 50 51 52 53 54 55 56 |
# File 'lib/qas_dock_gem/services/requests_api_services.rb', line 49 def init_request_body(token, payload, headers) final_headers = initialize_headers(token, headers) payload = nil if payload.nil? @logger.info("Payload: #{payload.to_json}") @logger.info("Headers: #{final_headers}") { headers: final_headers, body: payload.nil? ? payload : payload.to_json } end |
#init_request_query(token, query, headers) ⇒ Object
64 65 66 67 68 69 70 71 |
# File 'lib/qas_dock_gem/services/requests_api_services.rb', line 64 def init_request_query(token, query, headers) final_headers = initialize_headers(token, headers) query = {} if query.nil? @logger.info("Query: #{query}") @logger.info("Headers: #{final_headers}") { headers: final_headers, query: query } end |
#initialize_headers(token, headers) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/qas_dock_gem/services/requests_api_services.rb', line 12 def initialize_headers(token, headers) headers_default = { "cache-control": 'no-cache', "content-type": 'application/json' } # seta o campo authorization caso o token seja diferente de nulo headers_default['Authorization'] = token unless token.nil? # define os headers parametrizados como um Hash caso seja nulo headers = {} if headers.nil? # realiza o merge dos headers defaults + os headers parametrizados enviados headers_default.merge!(headers) # remove o campo content-type caso não seja informado if (headers_default[:"content-type"] == '') || headers_default[:"content-type"].nil? headers_default.delete(:"content-type") end # retorna os headers JSON.parse(headers_default.to_json) end |
#initialize_request(params) ⇒ Object
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/qas_dock_gem/services/requests_api_services.rb', line 33 def initialize_request(params) formated_params = nil if params.include?(:payload) formated_params = init_request_body(params[:token], params[:payload], params[:headers]) elsif params.include?(:query) formated_params = init_request_query(params[:token], params[:query], params[:headers]) if params.include?(:query) elsif params.include?(:basic_auth) formated_params = init_request_basic_auth(params[:token], params[:basic_auth], params[:headers]) else #codar end # retorna os params formatados para a request formated_params end |