class Mkduino::GeneratedFile

Attributes

backup_directory[RW]
output_directory[RW]
output_filename[RW]
user_updates_file[RW]

Public Class Methods

new(output_filename, options = {}) click to toggle source
# File lib/file_generator.rb, line 8
def initialize output_filename, options = {}
  @output_filename = output_filename
  @output_directory = options[:output_directory] || '.' + File::SEPARATOR
  @backup_directory = options[:backup_directory] || 'generated'
  @user_updates_file = options[:user_updates_file] || @output_filename + ".patch"

  @output_directory = @output_directory + File::SEPARATOR unless @output_directory[-1] == File::SEPARATOR
  @backup_directory = @backup_directory + File::SEPARATOR unless @backup_directory[-1] == File::SEPARATOR
  puts "GeneratedFile.output_filename " + @output_filename
end

Public Instance Methods

apply_user_updates() click to toggle source
# File lib/file_generator.rb, line 40
def apply_user_updates
  `patch < #{user_updates_file}`
end
save_file() click to toggle source
# File lib/file_generator.rb, line 25
def save_file
  unless Dir.exist?(@backup_directory)
    Dir.mkdir(@backup_directory)
  end
  File::cp("#{output_directory}#{@output_filename}",@backup_directory)
end
save_user_updates() click to toggle source
# File lib/file_generator.rb, line 32
def save_user_updates
  if(Pathname.new("#{output_directory}#{@output_file}").exist? &&
     Pathname.new("#{@backup_directory}#{@output_file}"))
    `diff -u #{@backup_directory}#{output_file} #{@output_directory}#{output_file} > #{user_updates_file}`
  end

end
write_file() { |f| ... } click to toggle source
# File lib/file_generator.rb, line 19
def write_file
  File.open("#{@output_directory}#{@output_filename}","w") do |f|
    yield f
  end
end