/** * @see #findClassNames(String, boolean, Filter, ClassLoader) * * @param packageName is the name of the {@link Package} to scan. * @param includeSubPackages - if {@code true} all sub-packages of the specified {@link Package} will be included in * the search. * @param classSet is where to add the classes. * @param filter is used to {@link Filter#accept(Object) filter} the {@link Class}-names to be added to the resulting * {@link Set}. The {@link Filter} will receive {@link Class#getName() fully qualified class-names} as argument * (e.g. "net.sf.mmm.reflect.api.ReflectionUtil"). * @param classLoader is the explicit {@link ClassLoader} to use. * @if the operation failed with an I/O error. */ protected void findClassNames(String packageName, boolean includeSubPackages, Set<String> classSet, Filter<? super String> filter, ClassLoader classLoader) { ResourceVisitor visitor = new ClassNameCollector(classSet, filter); visitResourceNames(packageName, includeSubPackages, classLoader, visitor); }