module MBox
class Loader < Source
- attr_reader :labels
-
def initialize uri_or_fp, start_offset=nil, usual=true, archived=false, id=nil
super
end
end
+ attr_writer :f
+ protected :f=
+
def start_offset; 0; end
def end_offset; File.size @f; end
+ def total; end_offset; end
def load_header offset
header = nil
end
def load_message offset
+ raise SourceError, self.broken_msg if broken?
@mutex.synchronize do
@f.seek offset
begin
end
def raw_header offset
+ raise SourceError, self.broken_msg if broken?
ret = ""
@mutex.synchronize do
@f.seek offset
end
def raw_full_message offset
+ raise SourceError, self.broken_msg if broken?
ret = ""
@mutex.synchronize do
@f.seek offset
end
def next
+ raise SourceError, self.broken_msg if broken?
returned_offset = nil
next_offset = cur_offset
end
self.cur_offset = next_offset
- [returned_offset, labels]
+ [returned_offset, @labels]
end
end