GeezerVison is showing docs.oracle.com — ModuleLayer.Controller (Java SE 17 & JDK 17)
Class ModuleLayer.Controller
- Enclosing class:
- ModuleLayer
public static final class ModuleLayer.Controller
extends Object
Controls a module layer. The static methods defined by
ModuleLayer
to create module layers return a
Controller that can be used to
control modules in the layer.
Unless otherwise specified, passing a null argument to a
method in this class causes a NullPointerException to be thrown.
- API Note:
- Care should be taken with
Controller objects, they
should never be shared with untrusted code.
- Since:
- 9
-
Method Summary
Modifier and Type
Method
Description
Updates module source in the layer to export a package to
module target.
Updates module source in the layer to open a package to
module target.
Updates module source in the layer to read module
target.
Returns the layer that this object controls.
Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Method Details
-
layer
Returns the layer that this object controls.
- Returns:
- the module layer
-
addReads
Updates module source in the layer to read module
target. This method is a no-op if source already
reads target.
- Implementation Note:
- Read edges added by this method are weak
and do not prevent
target from being GC'ed when source
is strongly reachable.
- Parameters:
source - The source module
target - The target module to read
- Returns:
- This controller
- Throws:
IllegalArgumentException - If source is not in the module layer
- See Also:
-
-
addExports
Updates module source in the layer to export a package to
module target. This method is a no-op if source
already exports the package to at least target.
- Parameters:
source - The source module
pn - The package name
target - The target module
- Returns:
- This controller
- Throws:
IllegalArgumentException - If source is not in the module layer or the package
is not in the source module
- See Also:
-
-
addOpens
Updates module source in the layer to open a package to
module target. This method is a no-op if source
already opens the package to at least target.
- Parameters:
source - The source module
pn - The package name
target - The target module
- Returns:
- This controller
- Throws:
IllegalArgumentException - If source is not in the module layer or the package
is not in the source module
- See Also:
-