/** * Loads properties from classpath file(s). Properties are specified using wildcards. */ public static Properties loadFromClasspath(final Properties p, final String... rootTemplate) { ClassScanner.create() .registerEntryConsumer(entryData -> UncheckedException.runAndWrapException(() -> p.load(entryData.openInputStream()))) .includeResources(true) .ignoreException(true) .excludeAllEntries(true) .includeEntries(rootTemplate) .scanDefaultClasspath(); return p; }
@BeforeEach void setupPetiteContainer() { final PetiteConfig petiteConfig = PetiteHelper.createPetiteConfig(); final ProxyProxetta proxyProxetta = PetiteHelper.createProxyProxetta(); petiteContainer = new ProxettaAwarePetiteContainer(proxyProxetta, petiteConfig); final AutomagicPetiteConfigurator petiteConfigurator = new AutomagicPetiteConfigurator(petiteContainer); petiteConfigurator.withScanner(scanner -> scanner.includeEntries(this.getClass().getPackage().getName() + ".*")); petiteConfigurator.configure(); }
.includeEntries(includedEntries.toArray(new String[0])) .includeJars(includedJars.toArray(new String[0])) .ignoreException(ignoreExceptions)
/** * Loads props and properties from the classpath. */ public Props loadFromClasspath(final String... patterns) { ClassScanner.create() .registerEntryConsumer(entryData -> { String usedEncoding = JoddCore.encoding; if (StringUtil.endsWithIgnoreCase(entryData.name(), ".properties")) { usedEncoding = StringPool.ISO_8859_1; } final String encoding = usedEncoding; UncheckedException.runAndWrapException(() -> load(entryData.openInputStream(), encoding)); }) .includeResources(true) .ignoreException(true) .excludeCommonJars() .excludeAllEntries(true) .includeEntries(patterns) .scanDefaultClasspath() .start(); return this; }
@Test @DisabledOnJava(value = 9, description = "Automagic configuration only works with MR-JAR jars as they don't work in exploded mode.") void testContainer() { PetiteContainer pc = new PetiteContainer(); AutomagicPetiteConfigurator petiteConfigurator = new AutomagicPetiteConfigurator(pc); petiteConfigurator.withScanner(classScanner -> classScanner .excludeAllEntries(true) .includeEntries("jodd.petite.fixtures.*") .excludeEntries("jodd.petite.fixtures.data.*", "jodd.petite.fixtures.tst3.*", "jodd.petite.fixtures.tst.Ses") .excludeEntries( "jodd.petite.fixtures.data.*", "jodd.petite.fixtures.tst6.*", "jodd.petite.fixtures.tst.Ses", "*Public*", "*Secret*", "*$*", "jodd.petite.proxy.*", "jodd.petite.fixtures.rainbow.*")); petiteConfigurator.configure(); assertEquals(1, pc.beansCount()); assertEquals(1, pc.scopesCount()); assertEquals(0, Foo.instanceCounter); Foo foo = pc.getBean("foo"); assertNotNull(foo); }
/** * Loads properties from classpath file(s). Properties are specified using wildcards. */ public static Properties loadFromClasspath(final Properties p, final String... rootTemplate) { ClassScanner.create() .registerEntryConsumer(entryData -> UncheckedException.runAndWrapException(() -> p.load(entryData.openInputStream()))) .includeResources(true) .ignoreException(true) .excludeAllEntries(true) .includeEntries(rootTemplate) .scanDefaultClasspath(); return p; }
.includeEntries(includedEntries.toArray(new String[0])) .includeJars(includedJars.toArray(new String[0])) .ignoreException(ignoreExceptions)
/** * Loads props and properties from the classpath. */ public Props loadFromClasspath(final String... patterns) { ClassScanner.create() .registerEntryConsumer(entryData -> { String usedEncoding = JoddCore.encoding; if (StringUtil.endsWithIgnoreCase(entryData.name(), ".properties")) { usedEncoding = StringPool.ISO_8859_1; } final String encoding = usedEncoding; UncheckedException.runAndWrapException(() -> load(entryData.openInputStream(), encoding)); }) .includeResources(true) .ignoreException(true) .excludeCommonJars() .excludeAllEntries(true) .includeEntries(patterns) .scanDefaultClasspath() .start(); return this; }