java.lang.Object
org.junit.platform.commons.util.ClasspathScanner
DISCLAIMER
These utilities are intended solely for usage within the JUnit framework itself. Any usage by external parties is not supported. Use at your own risk!
- Since:
- 1.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Supplier<ClassLoader>
private static final char
private static final String
private final BiFunction<String,
ClassLoader, Try<Class<?>>> private static final Logger
private static final String
Malformed class name InternalError like reported in #401.private static final char
private static final String
-
Constructor Summary
ConstructorsConstructorDescriptionClasspathScanner
(Supplier<ClassLoader> classLoaderSupplier, BiFunction<String, ClassLoader, Try<Class<?>>> loadClass) -
Method Summary
Modifier and TypeMethodDescriptionprivate String
determineFullyQualifiedClassName
(Path baseDir, String basePackageName, Path classFile) private String
determineSimpleClassName
(Path classFile) private String
determineSubpackageName
(Path baseDir, Path classFile) findClassesForPath
(Path baseDir, String basePackageName, ClassFilter classFilter) findClassesForUri
(URI baseUri, String basePackageName, ClassFilter classFilter) findClassesForUris
(List<URI> baseUris, String basePackageName, ClassFilter classFilter) Recursively scan for classes in all of the supplied source directories.private ClassLoader
getRootUrisForPackage
(String basePackageName) getRootUrisForPackageNameOnClassPathAndModulePath
(String basePackageName) private void
handleInternalError
(Path classFile, String fullyQualifiedClassName, InternalError ex) private void
handleThrowable
(Path classFile, Throwable throwable) private void
logGenericFileProcessingException
(Path classFile, Throwable throwable) private void
logMalformedClassName
(Path classFile, String fullyQualifiedClassName, InternalError ex) private static String
packagePath
(String packageName) private void
processClassFileSafely
(Path baseDir, String basePackageName, ClassFilter classFilter, Path classFile, Consumer<Class<?>> classConsumer) private static URI
scanForClassesInClasspathRoot
(URI root, ClassFilter classFilter) scanForClassesInPackage
(String basePackageName, ClassFilter classFilter)
-
Field Details
-
logger
-
CLASSPATH_RESOURCE_PATH_SEPARATOR
private static final char CLASSPATH_RESOURCE_PATH_SEPARATOR- See Also:
-
CLASSPATH_RESOURCE_PATH_SEPARATOR_STRING
-
PACKAGE_SEPARATOR_CHAR
private static final char PACKAGE_SEPARATOR_CHAR- See Also:
-
PACKAGE_SEPARATOR_STRING
-
MALFORMED_CLASS_NAME_ERROR_MESSAGE
Malformed class name InternalError like reported in #401.- See Also:
-
classLoaderSupplier
-
loadClass
-
-
Constructor Details
-
ClasspathScanner
ClasspathScanner(Supplier<ClassLoader> classLoaderSupplier, BiFunction<String, ClassLoader, Try<Class<?>>> loadClass)
-
-
Method Details
-
scanForClassesInPackage
-
scanForClassesInClasspathRoot
-
findClassesForUris
private List<Class<?>> findClassesForUris(List<URI> baseUris, String basePackageName, ClassFilter classFilter) Recursively scan for classes in all of the supplied source directories. -
findClassesForUri
private List<Class<?>> findClassesForUri(URI baseUri, String basePackageName, ClassFilter classFilter) -
findClassesForPath
private List<Class<?>> findClassesForPath(Path baseDir, String basePackageName, ClassFilter classFilter) -
processClassFileSafely
-
determineFullyQualifiedClassName
-
determineSimpleClassName
-
determineSubpackageName
-
handleInternalError
-
handleThrowable
-
logMalformedClassName
private void logMalformedClassName(Path classFile, String fullyQualifiedClassName, InternalError ex) -
logGenericFileProcessingException
-
getClassLoader
-
getRootUrisForPackageNameOnClassPathAndModulePath
-
removeTrailingClasspathResourcePathSeparator
-
packagePath
-
getRootUrisForPackage
-