Class: AppCommand
- Inherits:
-
Object
- Object
- AppCommand
- Defined in:
- lib/scaffolding/commands/app.rb
Instance Method Summary collapse
- #check ⇒ Object
- #execute ⇒ Object
-
#initialize(*args) ⇒ AppCommand
constructor
A new instance of AppCommand.
Constructor Details
#initialize(*args) ⇒ AppCommand
Returns a new instance of AppCommand.
4 5 6 7 8 9 |
# File 'lib/scaffolding/commands/app.rb', line 4 def initialize(*args) raise "'name' parameter must be specified" if args.length < 1 @name = args[0] @dir = Dir.pwd @path = File.join(@dir, @name) end |
Instance Method Details
#check ⇒ Object
11 12 13 |
# File 'lib/scaffolding/commands/app.rb', line 11 def check raise "Directory #{@name} already exists" if File.exist?(File.join(@dir, @name)) end |
#execute ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/scaffolding/commands/app.rb', line 15 def execute FileUtils.mkdir(@path) FileUtils.mkdir(File.join(@path, "lib")) FileUtils.mkdir(File.join(@path, "lib", "views")) FileUtils.mkdir(File.join(@path, "lib", "viewmodels")) FileUtils.mkdir(File.join(@path, "lib", "services")) FileUtils.mkdir(File.join(@path, "lib", "domain")) Generator.create_stub(File.join(@path, "#{@name}.rb"),"application", :name => @name) Generator.create_stub(File.join(@path, "lib", "views", "#{@name}_view.rb"), "view_toplevel", :name => @name.capitalize, :toplevel => @name) Generator.create_stub(File.join(@path, "lib", "views", "#{@name}_view.glade"), "view_toplevel_glade",:name => @name) Generator.create_stub(File.join(@path, "lib", "viewmodels", "#{@name}_view_model.rb"), "viewmodel_toplevel", :name => @name.capitalize) print "Application created in #{@path}\n" end |