lib/picky-generators/generators/base.rb in picky-generators-1.1.1 vs lib/picky-generators/generators/base.rb in picky-generators-1.1.2
- old
+ new
@@ -19,13 +19,17 @@
attr_reader :identifier, :name, :prototype_basedir
def initialize identifier, name, prototype_path, *args
@identifier = identifier
@name = name
- @prototype_basedir = File.expand_path "../../../../prototypes/#{prototype_path}", __FILE__
+ @prototype_basedir = expand_prototype_path prototype_path
end
+ def expand_prototype_path prototype_path
+ File.expand_path "../../../../prototypes/#{prototype_path}", __FILE__
+ end
+
#
#
def create_target_directory
if File.exists?(target_directory)
exists target_directory
@@ -38,22 +42,22 @@
#
#
def copy_all_files from = nil
all_prototype_files(from).each do |filename|
next if filename.match(/\.textile$/)
- copy_single_file filename
+ copy_single_file filename, from
end
end
#
#
- def target_filename_for filename
- filename.gsub(%r{#{prototype_basedir}}, target_directory)
+ def target_filename_for filename, from = nil
+ filename.gsub(%r{#{from || prototype_basedir}}, target_directory)
end
#
#
- def copy_single_file filename
- target = target_filename_for filename
+ def copy_single_file filename, from = nil
+ target = target_filename_for filename, from
if File.exists? target
exists target
else
smart_copy filename, target
end
\ No newline at end of file