Maven migration (first draft)
This commit is contained in:
parent
da79ac3e1d
commit
fee48b0b50
1711 changed files with 662 additions and 0 deletions
|
@ -0,0 +1,89 @@
|
|||
#!/usr/bin/ruby
|
||||
=begin
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
Read a property file, sort the remainder alphabetically and write their values to
|
||||
a text file, one value per line.
|
||||
|
||||
The idea is that this file could be translated and the result could be used to
|
||||
create a new property file with property_inserter.rb
|
||||
|
||||
On the command line provide the path to the properties file. E.g.:
|
||||
|
||||
property_stripper.rb '../../all.properties' output_file
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
=end
|
||||
|
||||
$: << File.dirname(File.expand_path(__FILE__))
|
||||
require "property_common"
|
||||
|
||||
class PropertyStripper
|
||||
# ------------------------------------------------------------------------------------
|
||||
private
|
||||
# ------------------------------------------------------------------------------------
|
||||
|
||||
#
|
||||
# Parse the arguments and complain if they don't make sense.
|
||||
#
|
||||
def sanity_check_arguments(args)
|
||||
raise "usage is: property_stripper.rb <properties_file> <values_output_file> [ok]" unless (2..3).include?(args.length)
|
||||
|
||||
if args[2].nil?
|
||||
ok = false
|
||||
elsif args[2].downcase == 'ok'
|
||||
ok = true
|
||||
else
|
||||
raise "third argument, if present, must be 'ok'"
|
||||
end
|
||||
|
||||
properties_file = args[0]
|
||||
raise "File '#{properties_file}' does not exist." unless File.exist?(properties_file)
|
||||
|
||||
values_output_file = args[1]
|
||||
raise "File '#{values_output_file}' already exists. specify 'ok' to overwrite it." if File.exist?(values_output_file) && !ok
|
||||
|
||||
return properties_file, values_output_file
|
||||
end
|
||||
|
||||
def read_properties_file(properties_file)
|
||||
PropertiesFile.new(properties_file).properties
|
||||
end
|
||||
|
||||
def write_values(values_output_file, properties)
|
||||
File.open(values_output_file, 'w') do |f|
|
||||
properties.keys.sort.each do |key|
|
||||
f.puts properties[key].value
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
# ------------------------------------------------------------------------------------
|
||||
public
|
||||
# ------------------------------------------------------------------------------------
|
||||
|
||||
def initialize(args)
|
||||
@properties_file, @values_output_file = sanity_check_arguments(args)
|
||||
end
|
||||
|
||||
def process()
|
||||
@properties = read_properties_file(@properties_file)
|
||||
write_values(@values_output_file, @properties)
|
||||
puts "Wrote #{@properties.length} values to '#{@values_output_file}'"
|
||||
end
|
||||
end
|
||||
|
||||
#
|
||||
#
|
||||
# ------------------------------------------------------------------------------------
|
||||
# Standalone calling.
|
||||
#
|
||||
# Do this if this program was called from the command line. That is, if the command
|
||||
# expands to the path of this file.
|
||||
# ------------------------------------------------------------------------------------
|
||||
#
|
||||
|
||||
if File.expand_path($0) == File.expand_path(__FILE__)
|
||||
stripper = PropertyStripper.new(ARGV)
|
||||
stripper.process()
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue