Class: GaeAppGenerator
- Inherits:
-
VraptorScaffold::Base
- Object
- Thor::Group
- VraptorScaffold::Base
- GaeAppGenerator
- Defined in:
- lib/vraptor-scaffold/generators/app/gae_app_generator.rb
Class Method Summary collapse
Instance Method Summary collapse
- #configure_ant ⇒ Object
- #configure_orm ⇒ Object
- #configure_scaffold_properties ⇒ Object
- #configure_template_engine ⇒ Object
- #configure_vraptor_packages ⇒ Object
- #create_controllers_directory ⇒ Object
- #create_javascripts ⇒ Object
- #create_main_java ⇒ Object
- #create_main_resources ⇒ Object
- #create_models_directory ⇒ Object
- #create_repositories_directory ⇒ Object
- #create_root_folder ⇒ Object
- #create_test ⇒ Object
- #create_webapp ⇒ Object
-
#initialize(args, opts = []) ⇒ GaeAppGenerator
constructor
A new instance of GaeAppGenerator.
Constructor Details
#initialize(args, opts = []) ⇒ GaeAppGenerator
Returns a new instance of GaeAppGenerator.
27 28 29 30 31 32 33 |
# File 'lib/vraptor-scaffold/generators/app/gae_app_generator.rb', line 27 def initialize(args, opts=[]) super([args], opts) validate self.destination_root=(project_path) @project_name = project_path.split("/").last @dependencies = DependencyManager.new({:gae => true}).dependencies end |
Class Method Details
.source_root ⇒ Object
23 24 25 |
# File 'lib/vraptor-scaffold/generators/app/gae_app_generator.rb', line 23 def self.source_root File.join File.dirname(__FILE__), "templates" end |
Instance Method Details
#configure_ant ⇒ Object
39 40 41 42 43 44 45 46 47 |
# File 'lib/vraptor-scaffold/generators/app/gae_app_generator.rb', line 39 def configure_ant create_eclipse_files unless [:skip_eclipse] copy_file("gitignore-gae", ".gitignore") copy_file("build-gae.xml", "build.xml") template("build.properties.erb", "build.properties") template("ivy.erb", "ivy.xml") copy_file(AppGenerator::IVY_JAR) copy_file("gae/ivysettings.xml", "ivysettings.xml") end |
#configure_orm ⇒ Object
76 77 78 79 80 |
# File 'lib/vraptor-scaffold/generators/app/gae_app_generator.rb', line 76 def configure_orm infra_folder = File.join @src, "infra" empty_directory infra_folder template("gae/ObjectifyFactory.java.tt", "#{@src}/infra/ObjectifyFactory.java") end |
#configure_scaffold_properties ⇒ Object
97 98 99 |
# File 'lib/vraptor-scaffold/generators/app/gae_app_generator.rb', line 97 def configure_scaffold_properties template("vraptor-scaffold-gae.erb", Configuration::FILENAME) end |
#configure_template_engine ⇒ Object
101 102 103 |
# File 'lib/vraptor-scaffold/generators/app/gae_app_generator.rb', line 101 def configure_template_engine JspTemplateEngine.new(project_path, @options).configure end |
#configure_vraptor_packages ⇒ Object
49 50 51 |
# File 'lib/vraptor-scaffold/generators/app/gae_app_generator.rb', line 49 def configure_vraptor_packages @vraptor_packages = ["br.com.caelum.vraptor.gae"] end |
#create_controllers_directory ⇒ Object
58 59 60 |
# File 'lib/vraptor-scaffold/generators/app/gae_app_generator.rb', line 58 def create_controllers_directory empty_directory File.join @src, [:controllers_package] end |
#create_javascripts ⇒ Object
88 89 90 91 92 93 94 95 |
# File 'lib/vraptor-scaffold/generators/app/gae_app_generator.rb', line 88 def create_javascripts javascripts = File.join Configuration::WEB_APP, "javascripts" create_file File.join javascripts, "application.js" unless [:skip_jquery] jquery = get_jquery add_file (File.join javascripts, "jquery.min.js"), jquery.body if jquery end end |
#create_main_java ⇒ Object
53 54 55 56 |
# File 'lib/vraptor-scaffold/generators/app/gae_app_generator.rb', line 53 def create_main_java empty_directory Configuration::MAIN_SRC @src = File.join(Configuration::MAIN_SRC, [:package].gsub(".", File::Separator)) end |
#create_main_resources ⇒ Object
72 73 74 |
# File 'lib/vraptor-scaffold/generators/app/gae_app_generator.rb', line 72 def create_main_resources directory("resources", Configuration::MAIN_RESOURCES) end |
#create_models_directory ⇒ Object
62 63 64 |
# File 'lib/vraptor-scaffold/generators/app/gae_app_generator.rb', line 62 def create_models_directory empty_directory File.join(@src, [:models_package]) end |
#create_repositories_directory ⇒ Object
66 67 68 69 70 |
# File 'lib/vraptor-scaffold/generators/app/gae_app_generator.rb', line 66 def create_repositories_directory repositories_folder = File.join @src, [:repositories_package] empty_directory repositories_folder template("orm/Repository-objectify.java.tt", "#{repositories_folder}/Repository.java") end |
#create_root_folder ⇒ Object
35 36 37 |
# File 'lib/vraptor-scaffold/generators/app/gae_app_generator.rb', line 35 def create_root_folder empty_directory "." end |
#create_test ⇒ Object
105 106 107 108 109 110 111 112 113 114 |
# File 'lib/vraptor-scaffold/generators/app/gae_app_generator.rb', line 105 def create_test empty_directory Configuration::TEST_SRC test_src = File.join(Configuration::TEST_SRC, [:package].gsub(".", File::Separator)) empty_directory File.join test_src, [:controllers_package] empty_directory File.join test_src, [:models_package] empty_directory File.join test_src, [:repositories_package] directory("resources-test", Configuration::TEST_RESOURCES) end |
#create_webapp ⇒ Object
82 83 84 85 86 |
# File 'lib/vraptor-scaffold/generators/app/gae_app_generator.rb', line 82 def create_webapp directory("webapp", Configuration::WEB_APP) template("gae/appengine-web.xml.tt", "#{Configuration::WEB_INF}/appengine-web.xml") copy_file("gae/logging.properties", "#{Configuration::WEB_INF}/logging.properties") end |