Package org.python.modules.zipimport
Class zipimporter
- java.lang.Object
-
- org.python.core.PyObject
-
- org.python.core.util.importer<PyObject>
-
- org.python.modules.zipimport.zipimporter
-
- All Implemented Interfaces:
java.io.Serializable,Traverseproc
- Direct Known Subclasses:
zipimporterDerived
public class zipimporter extends importer<PyObject> implements Traverseproc
Import Python modules and packages from ZIP-format archives.- Author:
- Philip Jenvey
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.python.core.PyObject
PyObject.ConversionException
-
-
Field Summary
Fields Modifier and Type Field Description static PyString__doc__java.lang.StringarchivePath to the Zip archivePyObjectfilesDict with file info {path: tocEntry}java.lang.StringprefixFile prefix: "a/sub/directory/"static PyTypeTYPE-
Fields inherited from class org.python.core.PyObject
gcMonitorGlobal
-
-
Constructor Summary
Constructors Constructor Description zipimporter()zipimporter(java.lang.String path)zipimporter(PyType subType)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PyObjectfind_module(java.lang.String fullname)PyObjectfind_module(java.lang.String fullname, java.lang.String path)Find the module for the fully qualified name.PyObjectget_code(java.lang.String fullname)Return the code object associated with the module.java.lang.Stringget_data(java.lang.String path)Return the uncompressed data for the file at the specified path as bytes.PyObjectget_filename(java.lang.String fullname)java.lang.Stringget_source(java.lang.String fullname)Return the source code for the module as a string (using newline characters for line endings)PyStringgetArchive()Path to the Zip archive as FS-encodedstr.booleanis_package(java.lang.String fullname)Return a boolean signifying whether the module is a package or not.PyObjectload_module(java.lang.String fullname)Load a module for the fully qualified name.org.python.modules.zipimport.zipimporter.ZipBundlemakeBundle(java.lang.String datapath, PyObject entry)Given a path to a compressed file in the archive, return the file's (uncompressed) data stream in a ZipBundle.booleanrefersDirectlyTo(PyObject ob)Optional operation.java.lang.StringtoString()inttraverse(Visitproc visit, java.lang.Object arg)Traverses all directly containedPyObjects.-
Methods inherited from class org.python.core.PyObject
__abs__, __add__, __and__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __cmp__, __coerce__, __coerce_ex__, __complex__, __contains__, __delattr__, __delattr__, __delete__, __delitem__, __delitem__, __delslice__, __delslice__, __dir__, __div__, __divmod__, __ensure_finalizer__, __eq__, __findattr__, __findattr__, __findattr_ex__, __finditem__, __finditem__, __finditem__, __float__, __floordiv__, __format__, __ge__, __get__, __getattr__, __getattr__, __getitem__, __getitem__, __getnewargs__, __getslice__, __getslice__, __gt__, __hash__, __hex__, __iadd__, __iand__, __idiv__, __idivmod__, __ifloordiv__, __ilshift__, __imod__, __imul__, __index__, __int__, __invert__, __ior__, __ipow__, __irshift__, __isub__, __iter__, __iternext__, __itruediv__, __ixor__, __le__, __len__, __long__, __lshift__, __lt__, __mod__, __mul__, __ne__, __neg__, __nonzero__, __not__, __oct__, __or__, __pos__, __pow__, __pow__, __radd__, __rand__, __rdiv__, __rdivmod__, __reduce__, __reduce_ex__, __reduce_ex__, __repr__, __rfloordiv__, __rlshift__, __rmod__, __rmul__, __ror__, __rpow__, __rrshift__, __rshift__, __rsub__, __rtruediv__, __rxor__, __set__, __setattr__, __setattr__, __setitem__, __setitem__, __setitem__, __setslice__, __setslice__, __str__, __sub__, __tojava__, __truediv__, __trunc__, __unicode__, __xor__, _add, _and, _callextra, _cmp, _div, _divmod, _doget, _doget, _doset, _eq, _floordiv, _ge, _gt, _iadd, _iand, _idiv, _idivmod, _ifloordiv, _ilshift, _imod, _imul, _in, _ior, _ipow, _irshift, _is, _isnot, _isub, _itruediv, _ixor, _jcall, _jcallexc, _jthrow, _le, _lshift, _lt, _mod, _mul, _ne, _notin, _or, _pow, _rshift, _sub, _truediv, _xor, asDouble, asIndex, asIndex, asInt, asInt, asIterable, asLong, asLong, asName, asName, asString, asString, asStringOrNull, asStringOrNull, bit_length, conjugate, delDict, delType, dispatch__init__, equals, fastGetClass, fastGetDict, getDict, getType, hashCode, implementsDescrDelete, implementsDescrGet, implementsDescrSet, invoke, invoke, invoke, invoke, invoke, invoke, isCallable, isDataDescr, isIndex, isInteger, isMappingType, isNumberType, isSequenceType, noAttributeError, object___subclasshook__, readonlyAttributeError, setDict, setType
-
-
-
-
Constructor Detail
-
zipimporter
public zipimporter()
-
zipimporter
public zipimporter(PyType subType)
-
zipimporter
public zipimporter(java.lang.String path)
-
-
Method Detail
-
getArchive
public PyString getArchive()
Path to the Zip archive as FS-encodedstr.
-
find_module
public PyObject find_module(java.lang.String fullname)
-
find_module
public PyObject find_module(java.lang.String fullname, java.lang.String path)
Find the module for the fully qualified name.- Parameters:
fullname- the fully qualified name of the modulepath- if not installed on the meta-path None or a module path- Returns:
- a loader instance if this importer can load the module, None otherwise
-
load_module
public PyObject load_module(java.lang.String fullname)
Load a module for the fully qualified name.- Parameters:
fullname- the fully qualified name of the module- Returns:
- a loaded PyModule
-
get_data
public java.lang.String get_data(java.lang.String path)
Return the uncompressed data for the file at the specified path as bytes.
-
is_package
public boolean is_package(java.lang.String fullname)
Return a boolean signifying whether the module is a package or not.- Parameters:
fullname- the fully qualified name of the module- Returns:
- a boolean describing if the module is a package
-
get_code
public PyObject get_code(java.lang.String fullname)
Return the code object associated with the module.- Parameters:
fullname- the fully qualified name of the module- Returns:
- the module's PyCode object or None
-
get_filename
public PyObject get_filename(java.lang.String fullname)
-
get_source
public java.lang.String get_source(java.lang.String fullname)
Return the source code for the module as a string (using newline characters for line endings)- Parameters:
fullname- the fully qualified name of the module- Returns:
- a String of the module's source code or null
-
makeBundle
public org.python.modules.zipimport.zipimporter.ZipBundle makeBundle(java.lang.String datapath, PyObject entry)Given a path to a compressed file in the archive, return the file's (uncompressed) data stream in a ZipBundle.- Parameters:
datapath- file's filename inside of the archive- Returns:
- a ZipBundle with an InputStream to the file's uncompressed data
-
traverse
public int traverse(Visitproc visit, java.lang.Object arg)
Description copied from interface:TraverseprocTraverses all directly containedPyObjects. Like in CPython,argmust be passed unmodified tovisitas its second parameter. IfVisitproc.visit(PyObject, Object)returns nonzero, this return value must be returned immediately by traverse.Visitproc.visit(PyObject, Object)must not be called with anullPyObject-argument.- Specified by:
traversein interfaceTraverseproc
-
refersDirectlyTo
public boolean refersDirectlyTo(PyObject ob)
Description copied from interface:TraverseprocOptional operation. Should only be implemented if it is more efficient than callingTraverseproc.traverse(Visitproc, Object)with a visitproc that just watches out forob. Must returnfalseifobisnull.- Specified by:
refersDirectlyToin interfaceTraverseproc
-
-