Ejemplo n.º 1
0
 def test_dump_record(self):
     docinfo_stream = self.hwp5file['DocInfo']
     record = read_record(docinfo_stream.open(), 0)
     stream = BytesIO()
     dump_record(stream, record)
     stream.seek(0)
     record2 = read_record(stream, 0)
     self.assertEqual(record2, record)
Ejemplo n.º 2
0
 def test_dump_record(self):
     from hwp5.recordstream import dump_record
     from hwp5.recordstream import read_record
     docinfo_stream = self.hwp5file['DocInfo']
     record = read_record(docinfo_stream.open(), 0)
     from StringIO import StringIO
     stream = StringIO()
     dump_record(stream, record)
     stream.seek(0)
     record2 = read_record(stream, 0)
     self.assertEquals(record2, record)
Ejemplo n.º 3
0
 def test_dump_record(self):
     from hwp5.recordstream import dump_record
     from hwp5.recordstream import read_record
     docinfo_stream = self.hwp5file['DocInfo']
     record = read_record(docinfo_stream.open(), 0)
     from StringIO import StringIO
     stream = StringIO()
     dump_record(stream, record)
     stream.seek(0)
     record2 = read_record(stream, 0)
     self.assertEquals(record2, record)
Ejemplo n.º 4
0
def main(args):
    import sys
    filename = args['<hwp5file>']
    if filename:
        from hwp5.recordstream import Hwp5File
        from hwp5.proc import parse_recordstream_name
        hwpfile = Hwp5File(filename)
        streamname = args['<record-stream>']
        stream = parse_recordstream_name(hwpfile, streamname)
    else:
        from hwp5.storage import Open2Stream
        from hwp5.recordstream import RecordStream
        stream = RecordStream(Open2Stream(lambda: sys.stdin), None)

    opts = dict()
    rng = args['--range']
    if rng:
        rng = rng.split('-', 1)
        rng = tuple(int(x) for x in rng)
        if len(rng) == 1:
            rng = (rng[0], rng[0] + 1)
        opts['range'] = rng
    treegroup = args['--treegroup']
    if treegroup is not None:
        opts['treegroup'] = int(treegroup)

    if args['--simple']:
        for record in stream.records(**opts):
            print '%04d' % record['seqno'],
            print '  ' * record['level'], record['tagname']
    elif args['--raw']:
        from hwp5.recordstream import dump_record
        for record in stream.records(**opts):
            dump_record(sys.stdout, record)
    elif args['--raw-header']:
        from hwp5.recordstream import encode_record_header
        for record in stream.records(**opts):
            hdr = encode_record_header(record)
            sys.stdout.write(hdr)
    elif args['--raw-payload']:
        for record in stream.records(**opts):
            sys.stdout.write(record['payload'])
    else:
        stream.records_json(**opts).dump(sys.stdout)