Skip to content

Commit 0f13671

Browse files
committed
Small update
1 parent c057323 commit 0f13671

1 file changed

Lines changed: 19 additions & 4 deletions

File tree

pycatfile/pycatfile.py

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,12 @@
3030
import base64
3131
import struct
3232
import logging
33+
import hashlib
34+
import inspect
3335
import platform
3436
import datetime
3537
import binascii
36-
import hashlib
37-
import inspect
38+
import resource
3839
import tempfile
3940
import configparser
4041
from io import open, StringIO, BytesIO
@@ -4736,6 +4737,8 @@ def ReadFileHeaderDataWithContent(fp, listonly=False, contentasfile=False, uncom
47364737
def ReadFileHeaderDataWithContentToArray(fp, listonly=False, contentasfile=True, uncompress=True, skipchecksum=False, formatspecs=__file_format_dict__, saltkey=None):
47374738
if(not hasattr(fp, "read")):
47384739
return False
4740+
start_real = time.perf_counter()
4741+
start_usage = resource.getrusage(resource.RUSAGE_SELF)
47394742
delimiter = formatspecs['format_delimiter']
47404743
fheaderstart = fp.tell()
47414744
HeaderOut = ReadFileHeaderDataBySize(fp, delimiter)
@@ -4983,11 +4986,16 @@ def ReadFileHeaderDataWithContentToArray(fp, listonly=False, contentasfile=True,
49834986
fcontents.seek(0, 0)
49844987
if(not contentasfile):
49854988
fcontents = fcontents.read()
4989+
end_real = time.perf_counter()
4990+
end_usage = resource.getrusage(resource.RUSAGE_SELF)
49864991
iecsize = get_readable_size(fsize, unit="IEC")
49874992
sisize = get_readable_size(fsize, unit="SI")
49884993
ieccsize = get_readable_size(fcsize, unit="IEC")
49894994
sicsize = get_readable_size(fcsize, unit="SI")
4990-
outlist = {'fheadersize': fheadsize, 'fhstart': fheaderstart, 'fhend': fhend, 'ftype': ftype, 'fencoding': fencoding, 'fcencoding': fcencoding, 'fname': fname, 'fbasedir': fbasedir, 'flinkname': flinkname, 'fsize': fsize, 'fsize_si': sisize, 'fsize_iec': iecsize, 'fblksize': fblksize, 'fblocks': fblocks, 'fflags': fflags, 'fatime': divmod(int(fatime), 10**9)[0], 'fmtime': divmod(int(fmtime), 10**9)[0], 'fctime': divmod(int(fctime), 10**9)[0], 'fbtime': divmod(int(fbtime), 10**9)[0], 'fatime_ns': fatime, 'fmtime_ns': fmtime, 'fctime_ns': fctime, 'fbtime_ns': fbtime, 'fmode': fmode, 'fchmode': fchmode, 'fstrmode': PrintPermissionString(fmode, ftype), 'ftypemod': ftypemod, 'fwinattributes': fwinattributes, 'fcompression': fcompression, 'fcsize': fcsize, 'fcsize_si': sicsize, 'fcsize_iec': ieccsize, 'fuid': fuid, 'funame': funame, 'fgid': fgid, 'fgname': fgname, 'finode': finode, 'flinkcount': flinkcount, 'fdev': fdev, 'fdev_major': fdev_major, 'fdev_minor': fdev_minor, 'frdev': frdev, 'frdev_major': frdev_major, 'frdev_minor': frdev_minor, 'fseektojson': fseektojson, 'fseektocontent': fseektocontent, 'fseeknextfile': fseeknextfile, 'fheaderchecksumtype': HeaderOut[-4], 'fjsonchecksumtype': fjsonchecksumtype, 'fcontentchecksumtype': HeaderOut[-3], 'fnumfields': fnumfields + 2, 'frawheader': HeaderOut, 'fvendorfields': fvendorfields, 'fvendordata': fvendorfieldslist, 'fextrafields': fextrafields, 'fextrafieldsize': fextrasize, 'fextradata': fextrafieldslist, 'fjsontype': fjsontype, 'fjsonlen': fjsonlen, 'fjsonsize': fjsonsize, 'fjsonrawdata': fjsonrawcontent, 'fjsondata': fjsoncontent, 'fjstart': fjstart, 'fjend': fjend, 'fheaderchecksum': fcs, 'fjsonchecksum': fjsonchecksum, 'fcontentchecksum': fccs, 'fhascontents': pyhascontents, 'fcontentstart': fcontentstart, 'fcontentend': fcontentend, 'fcontentasfile': contentasfile, 'fcontents': fcontents}
4995+
real_time = end_real - start_real
4996+
user_time = end_usage.ru_utime - start_usage.ru_utime
4997+
sys_time = end_usage.ru_stime - start_usage.ru_stime
4998+
outlist = {'fheadersize': fheadsize, 'fhstart': fheaderstart, 'fhend': fhend, 'ftype': ftype, 'fencoding': fencoding, 'fcencoding': fcencoding, 'fname': fname, 'fbasedir': fbasedir, 'flinkname': flinkname, 'fsize': fsize, 'fsize_si': sisize, 'fsize_iec': iecsize, 'fblksize': fblksize, 'fblocks': fblocks, 'fflags': fflags, 'fatime': divmod(int(fatime), 10**9)[0], 'fmtime': divmod(int(fmtime), 10**9)[0], 'fctime': divmod(int(fctime), 10**9)[0], 'fbtime': divmod(int(fbtime), 10**9)[0], 'fatime_ns': fatime, 'fmtime_ns': fmtime, 'fctime_ns': fctime, 'fbtime_ns': fbtime, 'fmode': fmode, 'fchmode': fchmode, 'fstrmode': PrintPermissionString(fmode, ftype), 'ftypemod': ftypemod, 'fwinattributes': fwinattributes, 'fcompression': fcompression, 'fcsize': fcsize, 'fcsize_si': sicsize, 'fcsize_iec': ieccsize, 'fuid': fuid, 'funame': funame, 'fgid': fgid, 'fgname': fgname, 'finode': finode, 'flinkcount': flinkcount, 'fdev': fdev, 'fdev_major': fdev_major, 'fdev_minor': fdev_minor, 'frdev': frdev, 'frdev_major': frdev_major, 'frdev_minor': frdev_minor, 'fseektojson': fseektojson, 'fseektocontent': fseektocontent, 'fseeknextfile': fseeknextfile, 'fheaderchecksumtype': HeaderOut[-4], 'fjsonchecksumtype': fjsonchecksumtype, 'fcontentchecksumtype': HeaderOut[-3], 'fnumfields': fnumfields + 2, 'frawheader': HeaderOut, 'fvendorfields': fvendorfields, 'fvendordata': fvendorfieldslist, 'fextrafields': fextrafields, 'fextrafieldsize': fextrasize, 'fextradata': fextrafieldslist, 'fjsontype': fjsontype, 'fjsonlen': fjsonlen, 'fjsonsize': fjsonsize, 'fjsonrawdata': fjsonrawcontent, 'fjsondata': fjsoncontent, 'fjstart': fjstart, 'fjend': fjend, 'fheaderchecksum': fcs, 'fjsonchecksum': fjsonchecksum, 'fcontentchecksum': fccs, 'fhascontents': pyhascontents, 'fcontentstart': fcontentstart, 'fcontentend': fcontentend, 'fcontentasfile': contentasfile, 'fcontents': fcontents, 'optime': {'real': "{:.6f}".format(real_time), 'user': "{:.6f}".format(user_time), 'sys': "{:.6f}".format(sys_time)}}
49914999
return outlist
49925000

49935001

@@ -5330,6 +5338,8 @@ def ReadFileDataWithContent(fp, filestart=0, listonly=False, contentasfile=False
53305338
def ReadFileDataWithContentToArray(fp, filestart=0, seekstart=0, seekend=0, listonly=False, contentasfile=True, uncompress=True, skipchecksum=False, formatspecs=__file_format_dict__, saltkey=None, seektoend=False):
53315339
if(not hasattr(fp, "read")):
53325340
return False
5341+
start_real = time.perf_counter()
5342+
start_usage = resource.getrusage(resource.RUSAGE_SELF)
53335343
delimiter = formatspecs['format_delimiter']
53345344
curloc = filestart
53355345
fp.seek(curloc, 0)
@@ -5625,11 +5635,16 @@ def ReadFileDataWithContentToArray(fp, filestart=0, seekstart=0, seekend=0, list
56255635
outlist['ffilelist'].append(HeaderOut)
56265636
countnum = countnum + 1
56275637
realidnum = realidnum + 1
5638+
end_real = time.perf_counter()
5639+
end_usage = resource.getrusage(resource.RUSAGE_SELF)
56285640
CatSize = fp.tell()
56295641
CatSizeEnd = CatSize
56305642
iecsize = get_readable_size(CatSizeEnd, unit="IEC")
56315643
sisize = get_readable_size(CatSizeEnd, unit="SI")
5632-
outlist.update({'fp': fp, 'fsize': CatSizeEnd, 'fsize_si': sisize, 'fsize_iec': iecsize})
5644+
real_time = end_real - start_real
5645+
user_time = end_usage.ru_utime - start_usage.ru_utime
5646+
sys_time = end_usage.ru_stime - start_usage.ru_stime
5647+
outlist.update({'fp': fp, 'fsize': CatSizeEnd, 'fsize_si': sisize, 'fsize_iec': iecsize, 'optime': {'real': "{:.6f}".format(real_time), 'user': "{:.6f}".format(user_time), 'sys': "{:.6f}".format(sys_time)}})
56335648
return outlist
56345649

56355650

0 commit comments

Comments
 (0)