Class: Soybean::Generators::EngineGenerator

Inherits:
Object
  • Object
show all
Includes:
BaseGenerator
Defined in:
lib/soybean/generators/engine_generator.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from BaseGenerator

#filename, #fullpath

Constructor Details

#initialize(model) ⇒ EngineGenerator

Returns a new instance of EngineGenerator.



11
12
13
14
# File 'lib/soybean/generators/engine_generator.rb', line 11

def initialize(model)
  @model = model
  @name = (wsdl.name.name.underscore.gsub(/service$/, '') rescue 'base') + 'engine'
end

Instance Attribute Details

#modelObject (readonly)

Returns the value of attribute model.



6
7
8
# File 'lib/soybean/generators/engine_generator.rb', line 6

def model
  @model
end

#nameObject (readonly)

Returns the value of attribute name.



6
7
8
# File 'lib/soybean/generators/engine_generator.rb', line 6

def name
  @name
end

Instance Method Details

#class_nameObject



27
28
29
# File 'lib/soybean/generators/engine_generator.rb', line 27

def class_name
  @name.camelize
end

#dirObject



16
17
18
# File 'lib/soybean/generators/engine_generator.rb', line 16

def dir
  'engines'
end

#endpoint_pathObject



31
32
33
# File 'lib/soybean/generators/engine_generator.rb', line 31

def endpoint_path
  model_class_name
end

#generateObject



20
21
22
23
24
25
# File 'lib/soybean/generators/engine_generator.rb', line 20

def generate
  source = File.expand_path("../templates/engine.rb", __FILE__)
  context = instance_eval('binding')
  content = ERB.new(::File.binread(source), nil, '-').result(context)
  content
end