Class: IntercomExport::Executor::Zendesk

Inherits:
Object
  • Object
show all
Defined in:
lib/intercom_export/executor/zendesk.rb

Defined Under Namespace

Classes: ReferenceResult

Instance Method Summary collapse

Constructor Details

#initialize(client, listener = nil) ⇒ Zendesk

Returns a new instance of Zendesk.



6
7
8
9
10
# File 'lib/intercom_export/executor/zendesk.rb', line 6

def initialize(client, listener=nil)
  @client = client
  @listener = listener
  @references = {}
end

Instance Method Details

#call(commands) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/intercom_export/executor/zendesk.rb', line 12

def call(commands)
  commands.each do |command|
    executing(command)
    details = resolve_reference(command.fetch(:details))
    result = case command.fetch(:name)
    when :reference
      ReferenceResult.new(details)
    when :import_user
      import_user(details)
    when :import_ticket
      import_ticket(details)
    end
    save_reference(command[:reference].value, result.id) if command.fetch(:reference, nil)
  end
end