class Andromeda::Cmd::Cmd::Writer
Public Instance Methods
init_mode()
click to toggle source
# File lib/andromeda/cmd.rb, line 123 def init_mode ; 'w' end
on_input(key, val)
click to toggle source
Calls superclass method
Andromeda::Cmd::Cmd::FileCmdPlan#on_input
# File lib/andromeda/cmd.rb, line 125 def on_input(key, val) signal_error ArgumentError.new("associated filed not open") unless file cmd = val.cmd raise ArgumentError, "invalid cmd" unless cmd.kind_of?(Symbol) data = val.data str = if data then data.to_json else '' end len = str.length + 1 tim = val.time if val.time tim = Time.now unless tim tim = tim.to_i unless tim.kind_of?(Fixnum) new_str = '' str.each_line { |line| new_str << "... #{line}\n" } str = nil len = new_str.length val = tags[:comment] val.each_line { |line| file.write "\# #{line}\n" } if val file.write "<<< ANDROMEDA START :#{cmd} TIME #{tim} LEN #{len} >>>\n" file.write new_str file.write "<<< ANDROMEDA END :#{cmd} >>>\n" super key, val end
Protected Instance Methods
sync_file(f)
click to toggle source
# File lib/andromeda/cmd.rb, line 149 def sync_file(f) f.sync f.fsync rescue nil end