class GlobetrotterFile
Attributes
set[RW]
Public Class Methods
new(file)
click to toggle source
# File lib/globetrotter/file.rb, line 6 def initialize(file) @set = Set.new @file = open(file) parse end
Public Instance Methods
open(file)
click to toggle source
# File lib/globetrotter/file.rb, line 14 def open(file) begin file = File.open(file, File::RDONLY|File::CREAT) rescue StandardError => e abort e.to_s end file end
parse()
click to toggle source
# File lib/globetrotter/file.rb, line 23 def parse self.open if @file.nil? line_number = 0 # parse line for IP @file.each_line do |line| line_number += 1 begin ip = IPAddr.new(line.chomp) @set.add(ip) rescue StandardError => e abort "#{e} on line #{line_number}: '#{line}'" end end @file.close unless @file.nil? self end
to_s()
click to toggle source
# File lib/globetrotter/file.rb, line 50 def to_s @file.path end
write()
click to toggle source
# File lib/globetrotter/file.rb, line 40 def write begin File.open(@file, 'w') do |f| f.puts(@set.to_a.sort.join("\n")) end rescue StandardError => e abort e.to_s end end