Package libxyz :: Package vfs :: Module zip :: Class ZipVFSObject

[hide private]
[frames] | no frames]

# Class ZipVFSObject

source code

          object --+
                   |
    vfsobj.VFSObject --+
                       |
                      ZipVFSObject

Zip archive interface

Instance Methods | [hide private]

either(self, a, b) | source code

__init__(self, *args, **kwargs) x.__init__(...) initializes x; see x.__class__.__doc__ for signature | source code

walk(self) Directory tree walker | source code

copy(self, path, existcb=None, errorcb=None, save_attrs=True, follow_links=False, cancel=None) Copy file to specified location | source code

_prepare(self) | source code

_normalize(self, path) Normalize path | source code

__str__(self) str(x) | source code

in_dir(self, d, e) Filter only those archive entries which exist in the same directory level | source code

_find_type(self) Find out file type | source code

_set_attributes(self) Set file attibutes | source code

_init_obj(self, altpath=None) | source code

_open_archive(self) | source code

_copy_file(self, src, dst, existcb, errorcb, save_attrs, follow_links, env, cancel=None, tarobj=None) File-to-file copy | source code

_copy_dir(self, src, dst, existcb, errorcb, save_attrs, follow_links, env, cancel=None, tarobj=None) Dir-to-dir copy | source code

_do_copy(self, src, dst, save_attrs, tarobj, obj) Copy file from inside archive | source code

_copystat(self, obj, dst) | source code

Inherited from `vfsobj.VFSObject`: `__repr__`, `__unicode__`, `is_block`, `is_char`, `is_dir`, `is_dir_empty`, `is_fifo`, `is_file`, `is_link`, `is_socket`, `mkdir`, `move`, `remove` Inherited from `object`: `__delattr__`, `__getattribute__`, `__hash__`, `__new__`, `__reduce__`, `__reduce_ex__`, `__setattr__`

Class Variables | [hide private]

| get_name = `lambda self, x:`
| get_path = `lambda self, x:`
| file_type_map = `{lambda obj: obj.isfile(): vfstypes.VFSTypeFil`...``

Properties | [hide private]

Inherited from `object`: `__class__`

Method Details | [hide private]

### __init__(self, *args, **kwargs)
(Constructor)

source code

x.__init__(...) initializes x; see x.__class__.__doc__ for signature

Overrides: object.__init__
  (inherited documentation)

### walk(self)

source code

Directory tree walker

Returns:
  tuple (parent, dir, dirs, files) where: parent - parent dir *VFSObject instance dir - current dir TarVFSObject instance dirs - list of TarVFSObject objects of directories files - list of TarVFSObject objects of files
Overrides: vfsobj.VFSObject.walk

### copy(self, path, existcb=None, errorcb=None, save_attrs=True, follow_links=False, cancel=None)

source code

Copy file to specified location

Parameters:
  - `path` - Local path to copy file to
  - `existcb` - Callback function to be called if there exists an object in target directory with the same name. Callback function receives VFSObject instance as an argument and must return one of: 'override' - to override this very object 'override all' - to override any future collisions 'skip' - to skip the object 'skip all' - to skip all future collisions 'abort' - to abort the process. If no existscb provided 'abort' is used as default
  - `errorcb` - Callback function to be called in case an error occured during copying. Function receives VFSObject instance and error string as arguments and must return one of: 'skip' - to continue the process 'skip all' - to skip all future errors 'abort' - to abort the process. If no errorcb provided 'abort' is used as default
  - `save_attrs` - Whether to save object attributes
  - `follow_links` - Whether to follow symlinks
  - `cancel` - a threading.Event instance, if it is found set - abort
Overrides: vfsobj.VFSObject.copy
  (inherited documentation)

### _prepare(self)

source code

Overrides: vfsobj.VFSObject._prepare

### __str__(self)
(Informal representation operator)

source code

str(x)

Overrides: object.__str__
  (inherited documentation)

Class Variable Details | [hide private]

### file_type_map

Value:

      {lambda obj: obj.isfile(): vfstypes.VFSTypeFile(), lambda obj: obj.isd
      ir(): vfstypes.VFSTypeDir(), lambda obj: obj.issym(): vfstypes.VFSType
      Link(), lambda obj: obj.ischr(): vfstypes.VFSTypeChar(), lambda obj: o
      bj.isblk(): vfstypes.VFSTypeBlock(), lambda obj: obj.isfifo(): vfstype
      s.VFSTypeFifo(),}