Class: Aid::Auth::Kratos::Api

Inherits:
Object
  • Object
show all
Defined in:
lib/aid/auth/kratos/api.rb

Constant Summary collapse

KRATOS_PARAMS =
%w(scheme host base_path server_index server_operation_index server_variables
server_operation_variables api_key api_key_prefix client_side_validation
verify_ssl verify_ssl_host params_encoding cert_file key_file timeout
debugging inject_format force_ending_format logger)

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**params) ⇒ Api

Returns a new instance of Api.



18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/aid/auth/kratos/api.rb', line 18

def initialize(**params)
  @api_config = OryKratosClient::Configuration.new do |a|
    params.each do |k, v|
      if KRATOS_PARAMS.include?(k.to_s)
        a.send("#{k}=", v)
      end
    end
  end
  @api_client = OryKratosClient::ApiClient.new(@api_config)
  @metadata_api_instance = OryKratosClient::MetadataApi.new(@api_client)
  @v0_api_instance = OryKratosClient::V0alpha2Api.new(@api_client)
end

Instance Attribute Details

#api_clientObject

Returns the value of attribute api_client.



13
14
15
# File 'lib/aid/auth/kratos/api.rb', line 13

def api_client
  @api_client
end

#api_configObject

Returns the value of attribute api_config.



13
14
15
# File 'lib/aid/auth/kratos/api.rb', line 13

def api_config
  @api_config
end

#metadata_api_instanceObject

Returns the value of attribute metadata_api_instance.



13
14
15
# File 'lib/aid/auth/kratos/api.rb', line 13

def 
  @metadata_api_instance
end

#v0_api_instanceObject

Returns the value of attribute v0_api_instance.



13
14
15
# File 'lib/aid/auth/kratos/api.rb', line 13

def v0_api_instance
  @v0_api_instance
end

Instance Method Details

#whoami(cookie: nil, token: nil) ⇒ Object



31
32
33
34
35
36
37
38
39
40
# File 'lib/aid/auth/kratos/api.rb', line 31

def whoami(cookie: nil, token: nil)
  params = {}
  if cookie
    params[:'cookie'] = cookie
  end
  if token
    params[:'x_session_token'] = token
  end
  @v0_api_instance.to_session(**params)
end