1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
# Copyright (c) Corporation for National Research Initiatives
def lookup(name):
names = name.split('.')
top = __import__(names[0])
for name in names[1:]:
top = getattr(top, name)
return top
from java.util.zip import ZipFile
zipfiles = {}
def getzip(filename):
if zipfiles.has_key(filename):
return zipfiles[filename]
zipfile = ZipFile(filename)
zipfiles[filename] = zipfile
return zipfile
def closezips():
for zf in zipfiles.values():
zf.close()
zipfiles.clear()
# "tentative"
import sys
import string
from org.python.core import Py
from yapm import YaPM
from PathVFS import PathVFS
def findClass(c):
return Py.findClassEx(c, "java class")
def reportPublicPlainClasses(jpkg):
classes = sys.packageManager.doDir(jpkg,0,1)
classes.remove('__name__')
return string.join(classes,',')
_path_vfs = None
def openResource(res):
global _path_vfs
if not _path_vfs:
_path_vfs = PathVFS(sys.registry)
return _path_vfs.open(res)
_ypm = None
def listAllClasses(jpkg):
global _ypm
classes = sys.packageManager.doDir(jpkg,0,1)
classes.remove('__name__')
if _ypm is None:
_ypm = YaPM(sys.registry)
pkg2 = _ypm.lookupName(jpkg.__name__)
classes2 = _ypm.doDir(pkg2,0,1)
classes2.remove('__name__')
classes.extend(classes2)
return classes
|