Class ResourceAnnotationHandler

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void doHandle​(java.lang.Class<?> clazz)
      Class level Resource annotations declare a name in the environment that will be looked up at runtime.
      void handleClass​(java.lang.Class<?> clazz)  
      void handleField​(java.lang.Class<?> clazz, java.lang.reflect.Field field)  
      void handleMethod​(java.lang.Class<?> clazz, java.lang.reflect.Method method)
      Process a Resource annotation on a Method.
      boolean isEnvEntryType​(java.lang.Class<?> clazz)
      Check if the class is one of the basic java types permitted as env-entries.
      boolean supportsResourceInjection​(java.lang.Class<?> c)
      Check if the given Class is one that the specification allows to have a Resource annotation.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • ENV_ENTRY_TYPES

        protected static final java.util.List<java.lang.Class<?>> ENV_ENTRY_TYPES
    • Constructor Detail

      • ResourceAnnotationHandler

        public ResourceAnnotationHandler​(WebAppContext wac)
    • Method Detail

      • handleClass

        public void handleClass​(java.lang.Class<?> clazz)
      • handleField

        public void handleField​(java.lang.Class<?> clazz,
                                java.lang.reflect.Field field)
      • handleMethod

        public void handleMethod​(java.lang.Class<?> clazz,
                                 java.lang.reflect.Method method)
        Process a Resource annotation on a Method.

        This will generate a JNDI entry, and an Injection to be processed when an instance of the class is created.

        Parameters:
        clazz - the class to process
        method - the method to process
      • supportsResourceInjection

        public boolean supportsResourceInjection​(java.lang.Class<?> c)
        Check if the given Class is one that the specification allows to have a Resource annotation.
        Parameters:
        c - the class
        Returns:
        true if Resource annotation permitted, false otherwise
      • isEnvEntryType

        public boolean isEnvEntryType​(java.lang.Class<?> clazz)
        Check if the class is one of the basic java types permitted as env-entries.
        Parameters:
        clazz - the class to check
        Returns:
        true if class is permitted by the spec to be an env-entry value