Sha256: d977699f118097508ec1d06dc5598e61ac6390eb777daeff0245418a51bfacaa
Contents?: true
Size: 1.21 KB
Versions: 3
Compression:
Stored size: 1.21 KB
Contents
require_relative "http/request" require_relative "crypto/client" require_relative "models/cage_list" module Evervault class Client attr_accessor :api_key, :base_url, :cage_run_url, :request_timeout def initialize( api_key:, base_url: "https://api.evervault.com/", cage_run_url: "https://cage.run/", request_timeout: 30 ) @api_key = api_key @base_url = base_url @cage_run_url = cage_run_url @request = Evervault::Http::Request.new( api_key: api_key, timeout: request_timeout, base_url: base_url, cage_run_url: cage_run_url ) @crypto_client = Evervault::Crypto::Client.new(request: @request) end def encrypt(data) @crypto_client.encrypt(data) end def run(cage_name, encrypted_data) @request.post(cage_name, encrypted_data, cage_run: true) end def encrypt_and_run(cage_name, data) encrypted_data = encrypt(data) run(cage_name, encrypted_data) end def cages cage_list.to_hash end def cage_list cages = @request.get("cages") @cage_list ||= Evervault::Models::CageList.new(cages: cages["cages"], request: @request) end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
evervault-0.1.2 | lib/evervault/client.rb |
evervault-0.1.1 | lib/evervault/client.rb |
evervault-0.1.0 | lib/evervault/client.rb |