class OpenRAReplay::Sanitize::CLI
Constants
- WARN_COUNT
- WARN_EXIST
- WARN_INPUT
Attributes
chat[RW]
force[RW]
in_name[RW]
ip[RW]
message[RW]
out_name[RW]
password[RW]
ping[RW]
player_name[RW]
server_name[RW]
time[RW]
Public Class Methods
new(arguments)
click to toggle source
# File lib/openrareplay/sanitize/cli.rb, line 36 def initialize(arguments) OptionParser.new do |parser| header parser option_ping parser option_message parser option_chat parser option_ip parser option_time parser option_password parser option_player_name parser option_server_name parser option_force parser footer parser end.parse! arguments handle_input arguments end
Public Instance Methods
sanitize()
click to toggle source
# File lib/openrareplay/sanitize/cli.rb, line 53 def sanitize OpenRAReplay::Sanitize::ReplaySanitizer.new(in_name, out_name, ping: ping, message: message, chat: chat, ip: ip, time: time, password: password, player_name: player_name, server_name: server_name).sanitize end
Private Instance Methods
handle_input(arguments)
click to toggle source
# File lib/openrareplay/sanitize/cli.rb, line 145 def handle_input(arguments) warn_and_exit WARN_COUNT unless arguments.length == 2 warn_and_exit WARN_INPUT unless File.exist? arguments.first warn_and_exit WARN_EXIST unless force || !File.exist?(arguments.last) self.in_name = arguments.first self.out_name = arguments.last end
header(parser)
click to toggle source
# File lib/openrareplay/sanitize/cli.rb, line 67 def header(parser) parser.banner = "Usage: openra-sanitize [options] in_file out_file\n" \ 'Reads an OpenRA replay file, trims/masks it, and outputs' \ ' the result as a new file' \ parser.separator '' parser.separator 'Specific options:' end
option_chat(parser)
click to toggle source
# File lib/openrareplay/sanitize/cli.rb, line 103 def option_chat(parser) parser.on('-c', '--chat', TrueClass, 'Trim all chat messages') do |c| self.chat = c end end
option_force(parser)
click to toggle source
# File lib/openrareplay/sanitize/cli.rb, line 139 def option_force(parser) parser.on('-f', '--force', TrueClass, 'Force overwriting out_file') do |f| self.force = f end end
option_ip(parser)
click to toggle source
# File lib/openrareplay/sanitize/cli.rb, line 109 def option_ip(parser) parser.on('-i', '--ip', TrueClass, 'Trim all IP addresses') do |i| self.ip = i end end
option_message(parser)
click to toggle source
# File lib/openrareplay/sanitize/cli.rb, line 97 def option_message(parser) parser.on('-m', '--message', TrueClass, 'Trim all server messages') do |m| self.message = m end end
option_password(parser)
click to toggle source
# File lib/openrareplay/sanitize/cli.rb, line 121 def option_password(parser) parser.on('-P', '--password', TrueClass, 'Trims the server password') do |p| self.password = p end end
option_ping(parser)
click to toggle source
# File lib/openrareplay/sanitize/cli.rb, line 91 def option_ping(parser) parser.on('-p', '--ping', TrueClass, 'Trim all ping-related content') do |p| self.ping = p end end
option_player_name(parser)
click to toggle source
# File lib/openrareplay/sanitize/cli.rb, line 127 def option_player_name(parser) parser.on('-n', '--player-name', TrueClass, 'Masks all player names') do |n| self.player_name = n end end
option_server_name(parser)
click to toggle source
# File lib/openrareplay/sanitize/cli.rb, line 133 def option_server_name(parser) parser.on('-s', '--server-name', TrueClass, 'Trim the server name') do |s| self.server_name = s end end
option_time(parser)
click to toggle source
# File lib/openrareplay/sanitize/cli.rb, line 115 def option_time(parser) parser.on('-t', '--time', TrueClass, 'Mask all dates and times') do |i| self.ip = i end end
warn_and_exit(text)
click to toggle source
# File lib/openrareplay/sanitize/cli.rb, line 153 def warn_and_exit(text) warn text warn "Try 'openra-sanitize --help' for more information." Kernel.exit 1 end