Skip to content

Commit bd752ba

Browse files
committed
check if we should import from java dynamically
1 parent 576d652 commit bd752ba

File tree

1 file changed

+42
-42
lines changed

1 file changed

+42
-42
lines changed

graalpython/lib-graalpython/java.py

Lines changed: 42 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -40,55 +40,55 @@
4040
import _frozen_importlib
4141

4242

43-
if sys.graal_python_host_import_enabled:
44-
class JavaPackageLoader:
45-
@staticmethod
46-
def is_java_package(name):
47-
return any(p.getName().startswith(name) for p in type("java.lang.Package").getPackages())
43+
class JavaPackageLoader:
44+
@staticmethod
45+
def is_java_package(name):
46+
return any(p.getName().startswith(name) for p in type("java.lang.Package").getPackages())
4847

49-
@staticmethod
50-
def _make_getattr(modname):
51-
modname = modname + "."
52-
def __getattr__(key, default=None):
53-
loadname = modname + key
54-
if JavaPackageLoader.is_java_package(loadname):
55-
return JavaPackageLoader._create_module(loadname)
56-
else:
57-
try:
58-
return type(modname + key)
59-
except KeyError:
60-
raise AttributeError(key)
61-
return __getattr__
48+
@staticmethod
49+
def _make_getattr(modname):
50+
modname = modname + "."
51+
def __getattr__(key, default=None):
52+
loadname = modname + key
53+
if JavaPackageLoader.is_java_package(loadname):
54+
return JavaPackageLoader._create_module(loadname)
55+
else:
56+
try:
57+
return type(modname + key)
58+
except KeyError:
59+
raise AttributeError(key)
60+
return __getattr__
6261

63-
@staticmethod
64-
def create_module(spec):
65-
return JavaPackageLoader._create_module(spec.name)
62+
@staticmethod
63+
def create_module(spec):
64+
return JavaPackageLoader._create_module(spec.name)
6665

67-
@staticmethod
68-
def _create_module(name):
69-
newmod = _frozen_importlib._new_module(name)
70-
newmod.__getattr__ = JavaPackageLoader._make_getattr(name)
71-
newmod.__path__ = __path__
72-
return newmod
66+
@staticmethod
67+
def _create_module(name):
68+
newmod = _frozen_importlib._new_module(name)
69+
newmod.__getattr__ = JavaPackageLoader._make_getattr(name)
70+
newmod.__path__ = __path__
71+
return newmod
7372

74-
@staticmethod
75-
def exec_module(module):
76-
pass
73+
@staticmethod
74+
def exec_module(module):
75+
pass
7776

7877

79-
class JavaTypeLoader:
80-
@staticmethod
81-
def create_module(spec):
82-
pass
78+
class JavaTypeLoader:
79+
@staticmethod
80+
def create_module(spec):
81+
pass
8382

84-
@staticmethod
85-
def exec_module(module):
86-
sys.modules[module.__name__] = type(module.__name__)
83+
@staticmethod
84+
def exec_module(module):
85+
sys.modules[module.__name__] = type(module.__name__)
8786

8887

89-
class JavaImportFinder:
90-
@staticmethod
91-
def find_spec(fullname, path, target=None):
88+
class JavaImportFinder:
89+
@staticmethod
90+
def find_spec(fullname, path, target=None):
91+
if sys.graal_python_host_import_enabled:
9292
if JavaPackageLoader.is_java_package(fullname):
9393
return _frozen_importlib.ModuleSpec(fullname, JavaPackageLoader, is_package=True)
9494
else:
@@ -99,5 +99,5 @@ def find_spec(fullname, path, target=None):
9999
pass
100100

101101

102-
sys.meta_path.append(JavaImportFinder)
103-
__getattr__ = JavaPackageLoader._make_getattr("java")
102+
sys.meta_path.append(JavaImportFinder)
103+
__getattr__ = JavaPackageLoader._make_getattr("java")

0 commit comments

Comments
 (0)