< prev index next >

test/java/lang/reflect/Layer/LayerAndLoadersTest.java

Print this page

        

*** 79,89 **** * Test scenario: * m1 requires m2 and m3 */ public void testWithOneLoader() throws Exception { ! Configuration cf = resolveRequires("m1"); ClassLoader scl = ClassLoader.getSystemClassLoader(); Layer layer = Layer.boot().defineModulesWithOneLoader(cf, scl); --- 79,89 ---- * Test scenario: * m1 requires m2 and m3 */ public void testWithOneLoader() throws Exception { ! Configuration cf = resolve("m1"); ClassLoader scl = ClassLoader.getSystemClassLoader(); Layer layer = Layer.boot().defineModulesWithOneLoader(cf, scl);
*** 108,118 **** * Test scenario: * m1 requires m2 and m3 */ public void testWithManyLoaders() throws Exception { ! Configuration cf = resolveRequires("m1"); ClassLoader scl = ClassLoader.getSystemClassLoader(); Layer layer = Layer.boot().defineModulesWithManyLoaders(cf, scl); --- 108,118 ---- * Test scenario: * m1 requires m2 and m3 */ public void testWithManyLoaders() throws Exception { ! Configuration cf = resolve("m1"); ClassLoader scl = ClassLoader.getSystemClassLoader(); Layer layer = Layer.boot().defineModulesWithManyLoaders(cf, scl);
*** 143,153 **** * m1 uses S * m4 provides S with ... */ public void testServicesWithOneLoader() throws Exception { ! Configuration cf = resolveRequiresAndUses("m1"); ClassLoader scl = ClassLoader.getSystemClassLoader(); Layer layer = Layer.boot().defineModulesWithOneLoader(cf, scl); --- 143,153 ---- * m1 uses S * m4 provides S with ... */ public void testServicesWithOneLoader() throws Exception { ! Configuration cf = resolveAndBind("m1"); ClassLoader scl = ClassLoader.getSystemClassLoader(); Layer layer = Layer.boot().defineModulesWithOneLoader(cf, scl);
*** 184,194 **** * m1 uses S * m4 provides S with ... */ public void testServicesWithManyLoaders() throws Exception { ! Configuration cf = resolveRequiresAndUses("m1"); ClassLoader scl = ClassLoader.getSystemClassLoader(); Layer layer = Layer.boot().defineModulesWithManyLoaders(cf, scl); --- 184,194 ---- * m1 uses S * m4 provides S with ... */ public void testServicesWithManyLoaders() throws Exception { ! Configuration cf = resolveAndBind("m1"); ClassLoader scl = ClassLoader.getSystemClassLoader(); Layer layer = Layer.boot().defineModulesWithManyLoaders(cf, scl);
*** 231,241 **** * Tests that the class loaders created by defineModulesWithXXX delegate * to the given parent class loader. */ public void testDelegationToParent() throws Exception { ! Configuration cf = resolveRequires("m1"); ClassLoader parent = this.getClass().getClassLoader(); String cn = this.getClass().getName(); // one loader --- 231,241 ---- * Tests that the class loaders created by defineModulesWithXXX delegate * to the given parent class loader. */ public void testDelegationToParent() throws Exception { ! Configuration cf = resolve("m1"); ClassLoader parent = this.getClass().getClassLoader(); String cn = this.getClass().getName(); // one loader
*** 265,284 **** * m2 exports p */ public void testOverlappingPackages() { ModuleDescriptor descriptor1 ! = ModuleDescriptor.module("m1").exports("p").build(); ModuleDescriptor descriptor2 ! = ModuleDescriptor.module("m2").exports("p").build(); ModuleFinder finder = ModuleUtils.finderOf(descriptor1, descriptor2); Configuration cf = Layer.boot() .configuration() ! .resolveRequires(finder, ModuleFinder.of(), Set.of("m1", "m2")); // cannot define both module m1 and m2 to the same class loader try { Layer.boot().defineModulesWithOneLoader(cf, null); assertTrue(false); --- 265,284 ---- * m2 exports p */ public void testOverlappingPackages() { ModuleDescriptor descriptor1 ! = ModuleDescriptor.newModule("m1").exports("p").build(); ModuleDescriptor descriptor2 ! = ModuleDescriptor.newModule("m2").exports("p").build(); ModuleFinder finder = ModuleUtils.finderOf(descriptor1, descriptor2); Configuration cf = Layer.boot() .configuration() ! .resolve(finder, ModuleFinder.of(), Set.of("m1", "m2")); // cannot define both module m1 and m2 to the same class loader try { Layer.boot().defineModulesWithOneLoader(cf, null); assertTrue(false);
*** 299,331 **** * layer2: m3 reads m1, m4 reads m2 */ public void testSplitDelegation() { ModuleDescriptor descriptor1 ! = ModuleDescriptor.module("m1").exports("p").build(); ModuleDescriptor descriptor2 ! = ModuleDescriptor.module("m2").exports("p").build(); ModuleFinder finder1 = ModuleUtils.finderOf(descriptor1, descriptor2); Configuration cf1 = Layer.boot() .configuration() ! .resolveRequires(finder1, ModuleFinder.of(), Set.of("m1", "m2")); Layer layer1 = Layer.boot().defineModulesWithManyLoaders(cf1, null); checkLayer(layer1, "m1", "m2"); ModuleDescriptor descriptor3 ! = ModuleDescriptor.module("m3").requires("m1").build(); ModuleDescriptor descriptor4 ! = ModuleDescriptor.module("m4").requires("m2").build(); ModuleFinder finder2 = ModuleUtils.finderOf(descriptor3, descriptor4); ! Configuration cf2 = cf1.resolveRequires(finder2, ModuleFinder.of(), Set.of("m3", "m4")); // package p cannot be supplied by two class loaders try { layer1.defineModulesWithOneLoader(cf2, null); --- 299,331 ---- * layer2: m3 reads m1, m4 reads m2 */ public void testSplitDelegation() { ModuleDescriptor descriptor1 ! = ModuleDescriptor.newModule("m1").exports("p").build(); ModuleDescriptor descriptor2 ! = ModuleDescriptor.newModule("m2").exports("p").build(); ModuleFinder finder1 = ModuleUtils.finderOf(descriptor1, descriptor2); Configuration cf1 = Layer.boot() .configuration() ! .resolve(finder1, ModuleFinder.of(), Set.of("m1", "m2")); Layer layer1 = Layer.boot().defineModulesWithManyLoaders(cf1, null); checkLayer(layer1, "m1", "m2"); ModuleDescriptor descriptor3 ! = ModuleDescriptor.newModule("m3").requires("m1").build(); ModuleDescriptor descriptor4 ! = ModuleDescriptor.newModule("m4").requires("m2").build(); ModuleFinder finder2 = ModuleUtils.finderOf(descriptor3, descriptor4); ! Configuration cf2 = cf1.resolve(finder2, ModuleFinder.of(), Set.of("m3", "m4")); // package p cannot be supplied by two class loaders try { layer1.defineModulesWithOneLoader(cf2, null);
*** 347,363 **** * layer1: m1, m2, m3 => same loader * layer2: m1, m2, m4 => same loader */ public void testOverriding1() throws Exception { ! Configuration cf1 = resolveRequires("m1"); Layer layer1 = Layer.boot().defineModulesWithOneLoader(cf1, null); checkLayer(layer1, "m1", "m2", "m3"); ModuleFinder finder = ModuleFinder.of(MODS_DIR); ! Configuration cf2 = cf1.resolveRequires(finder, ModuleFinder.of(), Set.of("m1")); Layer layer2 = layer1.defineModulesWithOneLoader(cf2, null); checkLayer(layer2, "m1", "m2", "m3"); invoke(layer1, "m1", "p.Main"); --- 347,363 ---- * layer1: m1, m2, m3 => same loader * layer2: m1, m2, m4 => same loader */ public void testOverriding1() throws Exception { ! Configuration cf1 = resolve("m1"); Layer layer1 = Layer.boot().defineModulesWithOneLoader(cf1, null); checkLayer(layer1, "m1", "m2", "m3"); ModuleFinder finder = ModuleFinder.of(MODS_DIR); ! Configuration cf2 = cf1.resolve(finder, ModuleFinder.of(), Set.of("m1")); Layer layer2 = layer1.defineModulesWithOneLoader(cf2, null); checkLayer(layer2, "m1", "m2", "m3"); invoke(layer1, "m1", "p.Main");
*** 396,412 **** * layer1: m1, m2, m3 => loader pool * layer2: m1, m2, m3 => loader pool */ public void testOverriding2() throws Exception { ! Configuration cf1 = resolveRequires("m1"); Layer layer1 = Layer.boot().defineModulesWithManyLoaders(cf1, null); checkLayer(layer1, "m1", "m2", "m3"); ModuleFinder finder = ModuleFinder.of(MODS_DIR); ! Configuration cf2 = cf1.resolveRequires(finder, ModuleFinder.of(), Set.of("m1")); Layer layer2 = layer1.defineModulesWithManyLoaders(cf2, null); checkLayer(layer2, "m1", "m2", "m3"); invoke(layer1, "m1", "p.Main"); --- 396,412 ---- * layer1: m1, m2, m3 => loader pool * layer2: m1, m2, m3 => loader pool */ public void testOverriding2() throws Exception { ! Configuration cf1 = resolve("m1"); Layer layer1 = Layer.boot().defineModulesWithManyLoaders(cf1, null); checkLayer(layer1, "m1", "m2", "m3"); ModuleFinder finder = ModuleFinder.of(MODS_DIR); ! Configuration cf2 = cf1.resolve(finder, ModuleFinder.of(), Set.of("m1")); Layer layer2 = layer1.defineModulesWithManyLoaders(cf2, null); checkLayer(layer2, "m1", "m2", "m3"); invoke(layer1, "m1", "p.Main");
*** 490,507 **** * layer1: m1, m2, m3 => same loader * layer2: m1, m3 => same loader */ public void testOverriding3() throws Exception { ! Configuration cf1 = resolveRequires("m1"); Layer layer1 = Layer.boot().defineModulesWithOneLoader(cf1, null); checkLayer(layer1, "m1", "m2", "m3"); ModuleFinder finder = finderFor("m1", "m3"); ! Configuration cf2 = cf1.resolveRequires(finder, ModuleFinder.of(), Set.of("m1")); Layer layer2 = layer1.defineModulesWithOneLoader(cf2, null); checkLayer(layer2, "m1", "m3"); invoke(layer1, "m1", "p.Main"); --- 490,507 ---- * layer1: m1, m2, m3 => same loader * layer2: m1, m3 => same loader */ public void testOverriding3() throws Exception { ! Configuration cf1 = resolve("m1"); Layer layer1 = Layer.boot().defineModulesWithOneLoader(cf1, null); checkLayer(layer1, "m1", "m2", "m3"); ModuleFinder finder = finderFor("m1", "m3"); ! Configuration cf2 = cf1.resolve(finder, ModuleFinder.of(), Set.of("m1")); Layer layer2 = layer1.defineModulesWithOneLoader(cf2, null); checkLayer(layer2, "m1", "m3"); invoke(layer1, "m1", "p.Main");
*** 527,544 **** * layer1: m1, m2, m3 => loader pool * layer2: m1, m3 => loader pool */ public void testOverriding4() throws Exception { ! Configuration cf1 = resolveRequires("m1"); Layer layer1 = Layer.boot().defineModulesWithManyLoaders(cf1, null); checkLayer(layer1, "m1", "m2", "m3"); ModuleFinder finder = finderFor("m1", "m3"); ! Configuration cf2 = cf1.resolveRequires(finder, ModuleFinder.of(), Set.of("m1")); Layer layer2 = layer1.defineModulesWithManyLoaders(cf2, null); checkLayer(layer2, "m1", "m3"); invoke(layer1, "m1", "p.Main"); --- 527,544 ---- * layer1: m1, m2, m3 => loader pool * layer2: m1, m3 => loader pool */ public void testOverriding4() throws Exception { ! Configuration cf1 = resolve("m1"); Layer layer1 = Layer.boot().defineModulesWithManyLoaders(cf1, null); checkLayer(layer1, "m1", "m2", "m3"); ModuleFinder finder = finderFor("m1", "m3"); ! Configuration cf2 = cf1.resolve(finder, ModuleFinder.of(), Set.of("m1")); Layer layer2 = layer1.defineModulesWithManyLoaders(cf2, null); checkLayer(layer2, "m1", "m3"); invoke(layer1, "m1", "p.Main");
*** 575,585 **** /** * Basic test of resource loading with a class loader created by * Layer.defineModulesWithOneLoader. */ public void testResourcesOneLoader() throws Exception { ! Configuration cf = resolveRequires("m1"); ClassLoader scl = ClassLoader.getSystemClassLoader(); Layer layer = Layer.boot().defineModulesWithOneLoader(cf, scl); ClassLoader loader = layer.findLoader("m1"); testResourceLoading(loader, "p/Main.class"); } --- 575,585 ---- /** * Basic test of resource loading with a class loader created by * Layer.defineModulesWithOneLoader. */ public void testResourcesOneLoader() throws Exception { ! Configuration cf = resolve("m1"); ClassLoader scl = ClassLoader.getSystemClassLoader(); Layer layer = Layer.boot().defineModulesWithOneLoader(cf, scl); ClassLoader loader = layer.findLoader("m1"); testResourceLoading(loader, "p/Main.class"); }
*** 587,597 **** /** * Basic test of resource loading with a class loader created by * Layer.defineModulesWithOneLoader. */ public void testResourcesManyLoaders() throws Exception { ! Configuration cf = resolveRequires("m1"); ClassLoader scl = ClassLoader.getSystemClassLoader(); Layer layer = Layer.boot().defineModulesWithManyLoaders(cf, scl); ClassLoader loader = layer.findLoader("m1"); testResourceLoading(loader, "p/Main.class"); } --- 587,597 ---- /** * Basic test of resource loading with a class loader created by * Layer.defineModulesWithOneLoader. */ public void testResourcesManyLoaders() throws Exception { ! Configuration cf = resolve("m1"); ClassLoader scl = ClassLoader.getSystemClassLoader(); Layer layer = Layer.boot().defineModulesWithManyLoaders(cf, scl); ClassLoader loader = layer.findLoader("m1"); testResourceLoading(loader, "p/Main.class"); }
*** 619,644 **** /** * Resolve the given modules, by name, and returns the resulting * Configuration. */ ! private static Configuration resolveRequires(String... roots) { ModuleFinder finder = ModuleFinder.of(MODS_DIR); return Layer.boot() .configuration() ! .resolveRequires(finder, ModuleFinder.of(), Set.of(roots)); } /** * Resolve the given modules, by name, and returns the resulting * Configuration. */ ! private static Configuration resolveRequiresAndUses(String... roots) { ModuleFinder finder = ModuleFinder.of(MODS_DIR); return Layer.boot() .configuration() ! .resolveRequiresAndUses(finder, ModuleFinder.of(), Set.of(roots)); } /** * Invokes the static void main(String[]) method on the given class --- 619,644 ---- /** * Resolve the given modules, by name, and returns the resulting * Configuration. */ ! private static Configuration resolve(String... roots) { ModuleFinder finder = ModuleFinder.of(MODS_DIR); return Layer.boot() .configuration() ! .resolve(finder, ModuleFinder.of(), Set.of(roots)); } /** * Resolve the given modules, by name, and returns the resulting * Configuration. */ ! private static Configuration resolveAndBind(String... roots) { ModuleFinder finder = ModuleFinder.of(MODS_DIR); return Layer.boot() .configuration() ! .resolveAndBind(finder, ModuleFinder.of(), Set.of(roots)); } /** * Invokes the static void main(String[]) method on the given class
< prev index next >