Interface ClassFinder

    • Method Detail

      • getAnnotatedClasses

        Set<Class<?>> getAnnotatedClasses​(Class<? extends Annotation> clazz)
        Get annotated classes in the classloader.
        Parameters:
        clazz - the annotation
        Returns:
        a set with all classes that are annotated
      • getAnnotatedClasses

        default Set<Class<?>> getAnnotatedClasses​(String className)
                                           throws ClassNotFoundException
        Get annotated classes in the classloader.
        Parameters:
        className - the annotation class name
        Returns:
        a set with all classes that are annotated
        Throws:
        ClassNotFoundException - when the class not found
      • getResource

        URL getResource​(String name)
        Get a resource from the classpath.
        Parameters:
        name - class literal
        Returns:
        the resource
      • getSubTypesOf

        <T> Set<Class<? extends T>> getSubTypesOf​(Class<T> type)
        Gets all subtypes in hierarchy of a given type.
        Type Parameters:
        T - the class of the type
        Parameters:
        type - the type to search for the subtypes for
        Returns:
        set of the subtypes of the given class
      • getClassLoader

        ClassLoader getClassLoader()
        Get class loader which is used to find classes.
        Returns:
        the class loader which is used to find classes..
      • getSubTypesOf

        default <T> Set<Class<? extends T>> getSubTypesOf​(String name)
                                                   throws ClassNotFoundException
        Gets all subtypes in hierarchy of a given type, using FQN string.
        Type Parameters:
        T - the class of the type
        Parameters:
        name - Fully qualified name of the type to search subtypes of
        Returns:
        set of the subtypes of the given class
        Throws:
        ClassNotFoundException - when the parent class is not in the classpath