hotspot/test/runtime/modules/AccessCheck/ExpUnqual.java
changeset 44520 0553e129e0ec
parent 43665 4bb003cad9b9
equal deleted inserted replaced
44471:7e8e5ceecf99 44520:0553e129e0ec
    35  * @run main/othervm -Xbootclasspath/a:. ExpUnqual
    35  * @run main/othervm -Xbootclasspath/a:. ExpUnqual
    36  */
    36  */
    37 
    37 
    38 import static jdk.test.lib.Asserts.*;
    38 import static jdk.test.lib.Asserts.*;
    39 
    39 
    40 import java.lang.reflect.Layer;
       
    41 import java.lang.module.Configuration;
    40 import java.lang.module.Configuration;
    42 import java.lang.module.ModuleDescriptor;
    41 import java.lang.module.ModuleDescriptor;
    43 import java.lang.module.ModuleFinder;
    42 import java.lang.module.ModuleFinder;
    44 import java.util.HashMap;
    43 import java.util.HashMap;
    45 import java.util.Map;
    44 import java.util.Map;
    46 import java.util.Set;
    45 import java.util.Set;
    47 import myloaders.MySameClassLoader;
    46 import myloaders.MySameClassLoader;
    48 
    47 
    49 public class ExpUnqual {
    48 public class ExpUnqual {
    50 
    49 
    51     // Create a Layer over the boot layer.
    50     // Create a layer over the boot layer.
    52     // Define modules within this layer to test access between
    51     // Define modules within this layer to test access between
    53     // publically defined classes within packages of those modules.
    52     // publically defined classes within packages of those modules.
    54     public void createLayerOnBoot() throws Throwable {
    53     public void createLayerOnBoot() throws Throwable {
    55 
    54 
    56         // Define module:     m1x
    55         // Define module:     m1x
    76 
    75 
    77         // Set up a ModuleFinder containing all modules for this layer.
    76         // Set up a ModuleFinder containing all modules for this layer.
    78         ModuleFinder finder = ModuleLibrary.of(descriptor_m1x, descriptor_m2x);
    77         ModuleFinder finder = ModuleLibrary.of(descriptor_m1x, descriptor_m2x);
    79 
    78 
    80         // Resolves "m1x"
    79         // Resolves "m1x"
    81         Configuration cf = Layer.boot()
    80         Configuration cf = ModuleLayer.boot()
    82                 .configuration()
    81                 .configuration()
    83                 .resolve(finder, ModuleFinder.of(), Set.of("m1x"));
    82                 .resolve(finder, ModuleFinder.of(), Set.of("m1x"));
    84 
    83 
    85         // map each module to the same class loader for this test
    84         // map each module to the same class loader for this test
    86         Map<String, ClassLoader> map = new HashMap<>();
    85         Map<String, ClassLoader> map = new HashMap<>();
    87         map.put("m1x", MySameClassLoader.loader1);
    86         map.put("m1x", MySameClassLoader.loader1);
    88         map.put("m2x", MySameClassLoader.loader1);
    87         map.put("m2x", MySameClassLoader.loader1);
    89 
    88 
    90         // Create Layer that contains m1x & m2x
    89         // Create layer that contains m1x & m2x
    91         Layer layer = Layer.boot().defineModules(cf, map::get);
    90         ModuleLayer layer = ModuleLayer.boot().defineModules(cf, map::get);
    92 
    91 
    93         assertTrue(layer.findLoader("m1x") == MySameClassLoader.loader1);
    92         assertTrue(layer.findLoader("m1x") == MySameClassLoader.loader1);
    94         assertTrue(layer.findLoader("m2x") == MySameClassLoader.loader1);
    93         assertTrue(layer.findLoader("m2x") == MySameClassLoader.loader1);
    95 
    94 
    96         // now use the same loader to load class p1.c1
    95         // now use the same loader to load class p1.c1