Class ApplicationClasses


  • public class ApplicationClasses
    extends java.lang.Object
    Application classes container.
    • Constructor Detail

      • ApplicationClasses

        public ApplicationClasses()
    • Method Detail

      • clear

        public void clear()
        Clear the classes cache
      • getApplicationClass

        public ApplicationClasses.ApplicationClass getApplicationClass​(java.lang.String name)
        Get a class by name
        Parameters:
        name - The fully qualified class name
        Returns:
        The ApplicationClass or null
      • getAssignableClasses

        public java.util.List<ApplicationClasses.ApplicationClass> getAssignableClasses​(java.lang.Class<?> clazz)
        Retrieve all application classes assignable to this class.
        Parameters:
        clazz - The superclass, or the interface.
        Returns:
        A list of application classes.
      • getAnnotatedClasses

        public java.util.List<ApplicationClasses.ApplicationClass> getAnnotatedClasses​(java.lang.Class<? extends java.lang.annotation.Annotation> clazz)
        Retrieve all application classes with a specific annotation.
        Parameters:
        clazz - The annotation class.
        Returns:
        A list of application classes.
      • remove

        public void remove​(java.lang.String applicationClass)
        Remove a class from cache
        Parameters:
        applicationClass - The class name to remove
      • hasClass

        public boolean hasClass​(java.lang.String name)
        Does this class is already loaded ?
        Parameters:
        name - The fully qualified class name
        Returns:
        true if the class is loaded
      • getJava

        public static VirtualFile getJava​(java.lang.String name)
        Retrieve the corresponding source file for a given class name. It handles innerClass too !
        Parameters:
        name - The fully qualified class name
        Returns:
        The virtualFile if found
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object