class Quiver::CLI::NewApplication
Attributes
name[RW]
options[RW]
Public Class Methods
generators_array()
click to toggle source
# File lib/quiver/cli/generators/new_application.rb, line 21 def self.generators_array @generators_array ||= [] end
generators_hash()
click to toggle source
# File lib/quiver/cli/generators/new_application.rb, line 25 def self.generators_hash @generators_hash ||= {} end
inherited(subclass)
click to toggle source
# File lib/quiver/cli/generators/new_application.rb, line 11 def self.inherited(subclass) generators_hash.each do |k, v| subclass.generators_hash[k] = v end generators_array.each do |i| subclass.generators_array << i end end
new(name, options)
click to toggle source
# File lib/quiver/cli/generators/new_application.rb, line 34 def initialize(name, options) self.name = name self.options = options @destination_stack ||= [] self.behavior = :invoke end
register_step(name, step, opts={})
click to toggle source
# File lib/quiver/cli/generators/new_application.rb, line 29 def self.register_step(name, step, opts={}) generators_hash[name] = step generators_array << name unless opts[:skip_queueing] || generators_array.include?(name) end
source_root()
click to toggle source
# File lib/quiver/cli/generators/new_application.rb, line 7 def self.source_root File.expand_path(File.join('..', '..', 'templates'), __FILE__) end
Public Instance Methods
generate!()
click to toggle source
# File lib/quiver/cli/generators/new_application.rb, line 41 def generate! self.class.generators_array.each do |name| if step = self.class.generators_hash[name] instance_exec(&step) end end git_init end
Private Instance Methods
camelized_name()
click to toggle source
# File lib/quiver/cli/generators/new_application.rb, line 151 def camelized_name @camelized_name ||= name.camelize end
git_init()
click to toggle source
# File lib/quiver/cli/generators/new_application.rb, line 155 def git_init inside(underscored_name) do run('git init') run('git add .') output = run(%Q{git commit -m " Initial Commit\n _____________________\n| /--<<<\n|___________________/----<<<"}, verbose: false, capture: true) puts output.sub(/Commit.*?\n/, "Commit\n") end end
underscored_name()
click to toggle source
# File lib/quiver/cli/generators/new_application.rb, line 147 def underscored_name @underscored_name ||= name.underscore end