Class: Hanami::Commands::Generate::App
- Defined in:
- lib/hanami/commands/generate/app.rb
Instance Attribute Summary collapse
-
#base_path ⇒ Object
readonly
Returns the value of attribute base_path.
Attributes inherited from Abstract
Instance Method Summary collapse
-
#initialize(options, application_name) ⇒ App
constructor
A new instance of App.
- #map_templates ⇒ Object
- #post_process_templates ⇒ Object
- #template_options ⇒ Object
Methods inherited from Abstract
Methods included from Generators::Generatable
#add_mapping, #argument_blank?, #destroy, #generator, #process_templates, #start, #template_source_path
Constructor Details
#initialize(options, application_name) ⇒ App
Returns a new instance of App.
12 13 14 15 16 17 18 19 |
# File 'lib/hanami/commands/generate/app.rb', line 12 def initialize(, application_name) super() assert_application_name!(application_name) assert_architecture! @application_name = ApplicationName.new(application_name) @base_path = Pathname.pwd end |
Instance Attribute Details
#base_path ⇒ Object (readonly)
Returns the value of attribute base_path.
10 11 12 |
# File 'lib/hanami/commands/generate/app.rb', line 10 def base_path @base_path end |
Instance Method Details
#map_templates ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/hanami/commands/generate/app.rb', line 21 def map_templates add_mapping('application.rb.tt', 'application.rb') add_mapping('config/routes.rb.tt', 'config/routes.rb') add_mapping('views/application_layout.rb.tt', 'views/application_layout.rb') add_mapping("templates/application.html.#{ template_engine.name }.tt", "templates/application.html.#{ template_engine.name }") add_mapping('favicon.ico', 'assets/favicon.ico') add_mapping('.gitkeep', 'controllers/.gitkeep') add_mapping('.gitkeep', 'assets/images/.gitkeep') add_mapping('.gitkeep', 'assets/javascripts/.gitkeep') add_mapping('.gitkeep', 'assets/stylesheets/.gitkeep') add_mapping('.gitkeep', "../../spec/#{ app_name }/features/.gitkeep") add_mapping('.gitkeep', "../../spec/#{ app_name }/controllers/.gitkeep") add_mapping('.gitkeep', "../../spec/#{ app_name }/views/.gitkeep") end |
#post_process_templates ⇒ Object
48 49 50 51 52 |
# File 'lib/hanami/commands/generate/app.rb', line 48 def post_process_templates add_require_app add_mount_app add_web_session_secret end |
#template_options ⇒ Object
37 38 39 40 41 42 43 44 45 46 |
# File 'lib/hanami/commands/generate/app.rb', line 37 def { app_name: app_name, upcase_app_name: upcase_app_name, classified_app_name: classified_app_name, app_base_url: application_base_url, app_base_path: application_base_path, template: template_engine.name } end |