Class: Evnt::EventGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- Evnt::EventGenerator
- Defined in:
- lib/generators/evnt/event_generator.rb
Overview
EventGenerator.
Instance Method Summary collapse
Instance Method Details
#create_event ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/generators/evnt/event_generator.rb', line 14 def create_event path = informations.first.split('::') @event_class = path.last.camelize @event_modules = path - [path.last] @event_name = event_name_clean(path.map(&:underscore).join('_')) @event_attributes = (informations - [informations.first]).map { |a| ":#{a}" }.join(', ') template( './event/event.rb.erb', event_path ) end |
#event_name_clean(event_name) ⇒ Object
34 35 36 37 38 |
# File 'lib/generators/evnt/event_generator.rb', line 34 def event_name_clean(event_name) return event_name unless event_name.end_with?('_event') event_name.gsub('_event', '') end |
#event_path ⇒ Object
27 28 29 30 31 32 |
# File 'lib/generators/evnt/event_generator.rb', line 27 def event_path path = './app/events' @event_modules.map { |m| path = "#{path}/#{m.underscore}" } path = "#{path}/#{@event_class.underscore}.rb" path end |