Files
phpy/lib/php/zip.py

299 lines
8.6 KiB
Python

import phpy
def open(_filename):
return phpy.call('zip_open', _filename)
def close(_zip):
return phpy.call('zip_close', _zip)
def read(_zip):
return phpy.call('zip_read', _zip)
def entry_open(_zip_dp, _zip_entry, _mode="rb"):
return phpy.call('zip_entry_open', _zip_dp, _zip_entry, _mode)
def entry_close(_zip_entry):
return phpy.call('zip_entry_close', _zip_entry)
def entry_read(_zip_entry, _len=1024):
return phpy.call('zip_entry_read', _zip_entry, _len)
def entry_name(_zip_entry):
return phpy.call('zip_entry_name', _zip_entry)
def entry_compressedsize(_zip_entry):
return phpy.call('zip_entry_compressedsize', _zip_entry)
def entry_filesize(_zip_entry):
return phpy.call('zip_entry_filesize', _zip_entry)
def entry_compressionmethod(_zip_entry):
return phpy.call('zip_entry_compressionmethod', _zip_entry)
class ZipArchive():
CREATE = 1
EXCL = 2
CHECKCONS = 4
OVERWRITE = 8
RDONLY = 16
FL_NOCASE = 1
FL_NODIR = 2
FL_COMPRESSED = 4
FL_UNCHANGED = 8
FL_RECOMPRESS = 16
FL_ENCRYPTED = 32
FL_OVERWRITE = 8192
FL_LOCAL = 256
FL_CENTRAL = 512
FL_ENC_GUESS = 0
FL_ENC_RAW = 64
FL_ENC_STRICT = 128
FL_ENC_UTF_8 = 2048
FL_ENC_CP437 = 4096
CM_DEFAULT = -1
CM_STORE = 0
CM_SHRINK = 1
CM_REDUCE_1 = 2
CM_REDUCE_2 = 3
CM_REDUCE_3 = 4
CM_REDUCE_4 = 5
CM_IMPLODE = 6
CM_DEFLATE = 8
CM_DEFLATE64 = 9
CM_PKWARE_IMPLODE = 10
CM_BZIP2 = 12
CM_LZMA = 14
CM_LZMA2 = 33
CM_ZSTD = 93
CM_XZ = 95
CM_TERSE = 18
CM_LZ77 = 19
CM_WAVPACK = 97
CM_PPMD = 98
ER_OK = 0
ER_MULTIDISK = 1
ER_RENAME = 2
ER_CLOSE = 3
ER_SEEK = 4
ER_READ = 5
ER_WRITE = 6
ER_CRC = 7
ER_ZIPCLOSED = 8
ER_NOENT = 9
ER_EXISTS = 10
ER_OPEN = 11
ER_TMPOPEN = 12
ER_ZLIB = 13
ER_MEMORY = 14
ER_CHANGED = 15
ER_COMPNOTSUPP = 16
ER_EOF = 17
ER_INVAL = 18
ER_NOZIP = 19
ER_INTERNAL = 20
ER_INCONS = 21
ER_REMOVE = 22
ER_DELETED = 23
ER_ENCRNOTSUPP = 24
ER_RDONLY = 25
ER_NOPASSWD = 26
ER_WRONGPASSWD = 27
ER_OPNOTSUPP = 28
ER_INUSE = 29
ER_TELL = 30
ER_COMPRESSED_DATA = 31
ER_CANCELLED = 32
OPSYS_DOS = 0
OPSYS_AMIGA = 1
OPSYS_OPENVMS = 2
OPSYS_UNIX = 3
OPSYS_VM_CMS = 4
OPSYS_ATARI_ST = 5
OPSYS_OS_2 = 6
OPSYS_MACINTOSH = 7
OPSYS_Z_SYSTEM = 8
OPSYS_CPM = 9
OPSYS_WINDOWS_NTFS = 10
OPSYS_MVS = 11
OPSYS_VSE = 12
OPSYS_ACORN_RISC = 13
OPSYS_VFAT = 14
OPSYS_ALTERNATE_MVS = 15
OPSYS_BEOS = 16
OPSYS_TANDEM = 17
OPSYS_OS_400 = 18
OPSYS_OS_X = 19
OPSYS_DEFAULT = 3
EM_NONE = 0
EM_TRAD_PKWARE = 1
EM_AES_128 = 257
EM_AES_192 = 258
EM_AES_256 = 259
EM_UNKNOWN = 65535
LIBZIP_VERSION = "1.9.2"
def open(self, _filename, _flags=0):
return self.__this.call(f"open", _filename, _flags)
def setPassword(self, _password):
return self.__this.call(f"setPassword", _password)
def close(self):
return self.__this.call(f"close", )
def count(self):
return self.__this.call(f"count", )
def getStatusString(self):
return self.__this.call(f"getStatusString", )
def addEmptyDir(self, _dirname, _flags=0):
return self.__this.call(f"addEmptyDir", _dirname, _flags)
def addFromString(self, _name, _content, _flags=8192):
return self.__this.call(f"addFromString", _name, _content, _flags)
def addFile(self, _filepath, _entryname="", _start=0, _length=0, _flags=8192):
return self.__this.call(f"addFile", _filepath, _entryname, _start, _length, _flags)
def replaceFile(self, _filepath, _index, _start=0, _length=0, _flags=0):
return self.__this.call(f"replaceFile", _filepath, _index, _start, _length, _flags)
def addGlob(self, _pattern, _flags=0, _options=[]):
return self.__this.call(f"addGlob", _pattern, _flags, _options)
def addPattern(self, _pattern, _path=".", _options=[]):
return self.__this.call(f"addPattern", _pattern, _path, _options)
def renameIndex(self, _index, _new_name):
return self.__this.call(f"renameIndex", _index, _new_name)
def renameName(self, _name, _new_name):
return self.__this.call(f"renameName", _name, _new_name)
def setArchiveComment(self, _comment):
return self.__this.call(f"setArchiveComment", _comment)
def getArchiveComment(self, _flags=0):
return self.__this.call(f"getArchiveComment", _flags)
def setCommentIndex(self, _index, _comment):
return self.__this.call(f"setCommentIndex", _index, _comment)
def setCommentName(self, _name, _comment):
return self.__this.call(f"setCommentName", _name, _comment)
def setMtimeIndex(self, _index, _timestamp, _flags=0):
return self.__this.call(f"setMtimeIndex", _index, _timestamp, _flags)
def setMtimeName(self, _name, _timestamp, _flags=0):
return self.__this.call(f"setMtimeName", _name, _timestamp, _flags)
def getCommentIndex(self, _index, _flags=0):
return self.__this.call(f"getCommentIndex", _index, _flags)
def getCommentName(self, _name, _flags=0):
return self.__this.call(f"getCommentName", _name, _flags)
def deleteIndex(self, _index):
return self.__this.call(f"deleteIndex", _index)
def deleteName(self, _name):
return self.__this.call(f"deleteName", _name)
def statName(self, _name, _flags=0):
return self.__this.call(f"statName", _name, _flags)
def statIndex(self, _index, _flags=0):
return self.__this.call(f"statIndex", _index, _flags)
def locateName(self, _name, _flags=0):
return self.__this.call(f"locateName", _name, _flags)
def getNameIndex(self, _index, _flags=0):
return self.__this.call(f"getNameIndex", _index, _flags)
def unchangeArchive(self):
return self.__this.call(f"unchangeArchive", )
def unchangeAll(self):
return self.__this.call(f"unchangeAll", )
def unchangeIndex(self, _index):
return self.__this.call(f"unchangeIndex", _index)
def unchangeName(self, _name):
return self.__this.call(f"unchangeName", _name)
def extractTo(self, _pathto, _files=None):
return self.__this.call(f"extractTo", _pathto, _files)
def getFromName(self, _name, _len=0, _flags=0):
return self.__this.call(f"getFromName", _name, _len, _flags)
def getFromIndex(self, _index, _len=0, _flags=0):
return self.__this.call(f"getFromIndex", _index, _len, _flags)
def getStream(self, _name):
return self.__this.call(f"getStream", _name)
def setExternalAttributesName(self, _name, _opsys, _attr, _flags=0):
return self.__this.call(f"setExternalAttributesName", _name, _opsys, _attr, _flags)
def setExternalAttributesIndex(self, _index, _opsys, _attr, _flags=0):
return self.__this.call(f"setExternalAttributesIndex", _index, _opsys, _attr, _flags)
def getExternalAttributesName(self, _name, _opsys, _attr, _flags=0):
return self.__this.call(f"getExternalAttributesName", _name, _opsys, _attr, _flags)
def getExternalAttributesIndex(self, _index, _opsys, _attr, _flags=0):
return self.__this.call(f"getExternalAttributesIndex", _index, _opsys, _attr, _flags)
def setCompressionName(self, _name, _method, _compflags=0):
return self.__this.call(f"setCompressionName", _name, _method, _compflags)
def setCompressionIndex(self, _index, _method, _compflags=0):
return self.__this.call(f"setCompressionIndex", _index, _method, _compflags)
def setEncryptionName(self, _name, _method, _password=None):
return self.__this.call(f"setEncryptionName", _name, _method, _password)
def setEncryptionIndex(self, _index, _method, _password=None):
return self.__this.call(f"setEncryptionIndex", _index, _method, _password)
def registerProgressCallback(self, _rate, _callback):
return self.__this.call(f"registerProgressCallback", _rate, _callback)
def registerCancelCallback(self, _callback):
return self.__this.call(f"registerCancelCallback", _callback)
def isCompressionMethodSupported(_method, _enc=True):
return phpy.call(f"ZipArchive::isCompressionMethodSupported", _method, _enc)
def isEncryptionMethodSupported(_method, _enc=True):
return phpy.call(f"ZipArchive::isEncryptionMethodSupported", _method, _enc)
def __init__(self):
self.__this = phpy.Object(f'ZipArchive')
def getattr(self, name):
return self.__this.get(name)
def setattr(self, name, value):
self.__this.set(name, value)