/** * 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; }
classScanner.excludeAllEntries(false); classScanner.excludeAllEntries(true); includedEntries.add("jodd.*");
/** * 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; }
classScanner.excludeAllEntries(false); classScanner.excludeAllEntries(true); includedEntries.add("jodd.*");
/** * 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; }