Class Introspection


  • public class Introspection
    extends Object
    Provides introspection utilities that either require knowledge of Tomcat internals or are solely used by Tomcat internals.
    • Constructor Detail

      • Introspection

        public Introspection()
    • Method Detail

      • getPropertyName

        public static String getPropertyName​(Method setter)
        Extract the Java Bean property name from the setter name. Note: This method assumes that the method name has already been checked for correctness.
        Parameters:
        setter - The setter method
        Returns:
        the bean property name
      • isValidSetter

        public static boolean isValidSetter​(Method method)
        Determines if a method has a valid name and signature for a Java Bean setter.
        Parameters:
        method - The method to test
        Returns:
        true if the method does have a valid name and signature, else false
      • isValidLifecycleCallback

        public static boolean isValidLifecycleCallback​(Method method)
        Determines if a method is a valid lifecycle callback method.
        Parameters:
        method - The method to test
        Returns:
        true if the method is a valid lifecycle callback method, else false
      • getDeclaredFields

        public static Field[] getDeclaredFields​(Class<?> clazz)
        Obtain the declared fields for a class taking account of any security manager that may be configured.
        Parameters:
        clazz - The class to introspect
        Returns:
        the class fields as an array
      • getDeclaredMethods

        public static Method[] getDeclaredMethods​(Class<?> clazz)
        Obtain the declared methods for a class taking account of any security manager that may be configured.
        Parameters:
        clazz - The class to introspect
        Returns:
        the class methods as an array
      • loadClass

        public static Class<?> loadClass​(Context context,
                                         String className)
        Attempt to load a class using the given Container's class loader. If the class cannot be loaded, a debug level log message will be written to the Container's log and null will be returned.
        Parameters:
        context - The class loader of this context will be used to attempt to load the class
        className - The class name
        Returns:
        the loaded class or null if loading failed
      • convertPrimitiveType

        public static Class<?> convertPrimitiveType​(Class<?> clazz)
        Converts the primitive type to its corresponding wrapper.
        Parameters:
        clazz - Class that will be evaluated
        Returns:
        if the parameter is a primitive type returns its wrapper; otherwise returns the same class