Class: ForestAdminDatasourceRpc::Utils::RpcClient
- Inherits:
-
Object
- Object
- ForestAdminDatasourceRpc::Utils::RpcClient
- Defined in:
- lib/forest_admin_datasource_rpc/Utils/rpc_client.rb
Instance Method Summary collapse
- #call_rpc(endpoint, method: :get, payload: nil, symbolize_keys: false) ⇒ Object
-
#initialize(api_url, auth_secret) ⇒ RpcClient
constructor
A new instance of RpcClient.
Constructor Details
#initialize(api_url, auth_secret) ⇒ RpcClient
Returns a new instance of RpcClient.
9 10 11 12 |
# File 'lib/forest_admin_datasource_rpc/Utils/rpc_client.rb', line 9 def initialize(api_url, auth_secret) @api_url = api_url @auth_secret = auth_secret end |
Instance Method Details
#call_rpc(endpoint, method: :get, payload: nil, symbolize_keys: false) ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/forest_admin_datasource_rpc/Utils/rpc_client.rb', line 14 def call_rpc(endpoint, method: :get, payload: nil, symbolize_keys: false) client = Faraday.new(url: @api_url) do |faraday| faraday.request :json faraday.response :json, parser_options: { symbolize_names: symbolize_keys } faraday.adapter Faraday.default_adapter faraday.ssl.verify = !ForestAdminRpcAgent::Facades::Container.cache(:debug) end = Time.now.utc.iso8601 signature = generate_signature() headers = { 'Content-Type' => 'application/json', 'X_TIMESTAMP' => , 'X_SIGNATURE' => signature } response = client.send(method, endpoint, payload, headers) handle_response(response) end |