Class: MergeHRISClient::LinkTokenApi

Inherits:
Object
  • Object
show all
Defined in:
lib/stackone_migration/api/link_token_api.rb

Instance Method Summary collapse

Instance Method Details



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/stackone_migration/api/link_token_api.rb', line 7

def link_token_create(end_user_details_request, opts = {})
  return original_link_token_create(end_user_details_request, opts) if opts.key?(:use_merge) && opts[:use_merge]

  mapped_integration_name = StackOneMigration::ProviderMapper.map_to_stackone_provider_name(end_user_details_request.integration)

  connect_session_create_request = StackOneHRIS::ConnectSessionCreate.new(
    :origin_owner_id => end_user_details_request.end_user_origin_id,
    :origin_owner_name => end_user_details_request.end_user_organization_name || end_user_details_request.end_user_email_address,
    :origin_username => end_user_details_request.end_user_email_address,
    :provider => mapped_integration_name,
    :categories => end_user_details_request.categories,
  )

  created_session = StackOneHRIS::ConnectSessionsApi.new.connect_sessions_create(connect_session_create_request)
  MergeHRISClient::LinkToken.new(:link_token => created_session.token, :integration_name => mapped_integration_name)

rescue StackOneHRIS::ApiError
  raise MergeHRISClient::ApiError
end


5
# File 'lib/stackone_migration/api/link_token_api.rb', line 5

alias_method :original_link_token_create, :link_token_create