Class: BotGenerator

Inherits:
Generator show all
Defined in:
lib/generators/bot_generator.rb

Instance Attribute Summary

Attributes inherited from Generator

#language, #side

Instance Method Summary collapse

Methods inherited from Generator

add, generators

Constructor Details

#initializeBotGenerator

Returns a new instance of BotGenerator.



434
435
436
# File 'lib/generators/bot_generator.rb', line 434

def initialize
    super 'bot', :client
end

Instance Method Details

#generate(node, runtime) ⇒ Object



438
439
440
441
# File 'lib/generators/bot_generator.rb', line 438

def generate node, runtime
    self.generate_file node, runtime, 'bot_types_generator', "#{node.bot_name}_types"
    self.generate_file node, runtime, 'bot_generator', node.bot_name
end

#generate_file(node, runtime, template_file, generated_file) ⇒ Object



443
444
445
446
447
448
449
450
451
452
453
# File 'lib/generators/bot_generator.rb', line 443

def generate_file node, runtime, template_file, generated_file
    folder = File.expand_path File.dirname __FILE__
    erb_file = folder + "/#{template_file}.ex.erb"
    template = File.read erb_file
    erb = ERB.new template
    content = erb.result binding

    output_dir = File.dirname runtime.filename
    output_path = File.join output_dir, "#{generated_file}_bot.ex"
    File.write output_path, content
end