Module: RailsGeneratorExtensions

Included in:
Rails::Generator::Commands::Base, Rails::Generator::Commands::Destroy
Defined in:
lib/generator_extensions.rb

Instance Method Summary collapse

Instance Method Details

#directory_copy(relative_source, relative_destination = nil) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/generator_extensions.rb', line 9

def directory_copy(relative_source, relative_destination=nil)
  source = source_path(relative_source)
  relative_destination ||= relative_source
  path_to_delete = "#{source_root}/"

  Find.find(source) do |name|
    source = name.sub(path_to_delete, '')
    target = File.join(relative_destination, source.sub(relative_source, ''))
    if File.file?(name)
      file source, target
    elsif File.directory?(name)
      directory target unless self.class.to_s.include? "Destroy"
    end
  end
end

#mirror(origin = 'mirror') ⇒ Object



5
6
7
# File 'lib/generator_extensions.rb', line 5

def mirror(origin='mirror')
  directory_copy(origin, '')
end