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
20
# 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" }
  @fields = attributes.map(&:name).reject { |f| f == "id" }
end

Instance Method Details

#create_blueprintObject



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

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

#create_controllerObject



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

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

#create_modelObject



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

def create_model
  return unless options[:with_model]

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

#create_repositoryObject



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

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

#create_serviceObject



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

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