Class: DominoGenerator

Inherits:
Rails::Generators::NamedBase
  • Object
show all
Defined in:
lib/generators/domino/domino_generator.rb

Overview

rubocop:disable Style/Documentation

Instance Method Summary collapse

Constructor Details

#initialize(*args) ⇒ DominoGenerator

Returns a new instance of DominoGenerator.



13
14
15
16
17
18
19
# File 'lib/generators/domino/domino_generator.rb', line 13

def initialize(*args)
  super
  @model_name = class_name
  @file_name = file_name
  @plural_file_name = file_name.pluralize
  @fields = attributes.map { |a| a.split(":").first }.reject { |f| f == "id" }
end

Instance Method Details

#create_blueprintObject



35
36
37
# File 'lib/generators/domino/domino_generator.rb', line 35

def create_blueprint
  template "blueprint.rb.tt", File.join("app/mappers", "#{@file_name}_blueprint.rb")
end

#create_controllerObject



39
40
41
# File 'lib/generators/domino/domino_generator.rb', line 39

def create_controller
  template "controller.rb.tt", File.join("app/controllers", "#{@plural_file_name}_controller.rb")
end

#create_modelObject



21
22
23
24
25
# File 'lib/generators/domino/domino_generator.rb', line 21

def create_model
  return unless options[:with_model]

  generate "model", "#{@model_name} #{attributes.join(" ")}"
end

#create_repositoryObject



31
32
33
# File 'lib/generators/domino/domino_generator.rb', line 31

def create_repository
  template "repository.rb.tt", File.join("app/repositories", "#{@file_name}_repository.rb")
end

#create_serviceObject



27
28
29
# File 'lib/generators/domino/domino_generator.rb', line 27

def create_service
  template "service.rb.tt", File.join("app/services", "#{@file_name}_service.rb")
end