public ClasspathScanLoadHelper(Collection<String> packagesToScan) { scanResult = new ClassGraph().whitelistPackages(packagesToScan.toArray(new String[] {})) .enableClassInfo() .enableAnnotationInfo().scan(); }
final String[] whitelistPackages = StringUtils.split(System.getProperty("io.atomix.whitelistPackages"), ","); final ClassGraph classGraph = whitelistPackages != null ? new ClassGraph().enableAnnotationInfo().whitelistPackages(whitelistPackages).addClassLoader(classLoader) : new ClassGraph().enableAnnotationInfo().addClassLoader(classLoader);
public static List<Class<?>> findClasses(Class<? extends Annotation> annotation, String... packages) { Validate.argumentsAreNotNull(annotation, packages); return new ClassGraph() .whitelistPackages(packages) .enableAnnotationInfo() .scan() .getClassesWithAnnotation(annotation.getName()) .loadClasses(); }
new ClassGraph() .enableAnnotationInfo()
classGraph = classGraph.enableAnnotationInfo();
final String[] whitelistPackages = StringUtils.split(System.getProperty("io.atomix.whitelistPackages"), ","); final ClassGraph classGraph = whitelistPackages != null ? new ClassGraph().enableAnnotationInfo().whitelistPackages(whitelistPackages).addClassLoader(classLoader) : new ClassGraph().enableAnnotationInfo().addClassLoader(classLoader);
/** * Enables the determination of inter-class dependencies, which may be read by calling * {@link ClassInfo#getClassDependencies()}, {@link ScanResult#getClassDependencyMap()} or * {@link ScanResult#getReverseClassDependencyMap()}. (Automatically calls {@link #enableClassInfo()}, * {@link #enableFieldInfo()}, {@link #enableMethodInfo()}, {@link #enableAnnotationInfo()}, * {@link #ignoreClassVisibility()}, {@link #ignoreFieldVisibility()} and {@link #ignoreMethodVisibility()}.) * */ public ClassGraph enableInterClassDependencies() { enableClassInfo(); enableFieldInfo(); enableMethodInfo(); enableAnnotationInfo(); ignoreClassVisibility(); ignoreFieldVisibility(); ignoreMethodVisibility(); scanSpec.enableInterClassDependencies = true; return this; }
/** * Enables the scanning of all classes, fields, methods, annotations, and static final field constant * initializer values, and ignores all visibility modifiers, so that both public and non-public classes, fields * and methods are all scanned. * * <p> * Calls {@link #enableClassInfo()}, {@link #enableFieldInfo()}, {@link #enableMethodInfo()}, * {@link #enableAnnotationInfo()}, {@link #enableStaticFinalFieldConstantInitializerValues()}, * {@link #ignoreClassVisibility()}, {@link #ignoreFieldVisibility()}, and {@link #ignoreMethodVisibility()}. * * @return this (for method chaining). */ public ClassGraph enableAllInfo() { enableClassInfo(); enableFieldInfo(); enableMethodInfo(); enableAnnotationInfo(); enableStaticFinalFieldConstantInitializerValues(); ignoreClassVisibility(); ignoreFieldVisibility(); ignoreMethodVisibility(); return this; }