Class ConfluenceAnnotationBoxingUberspect

  • All Implemented Interfaces:
    org.apache.velocity.util.introspection.Uberspect, org.apache.velocity.util.introspection.UberspectLoggable, org.apache.velocity.util.RuntimeServicesAware

    public class ConfluenceAnnotationBoxingUberspect
    extends com.atlassian.velocity.htmlsafe.introspection.HtmlSafeAnnotationBoxingUberspect

    Specialisation of the AnnotatioBoxingUberspect to be used in a Confluence velocity environment.

    It makes sure the real object class is returned when the context may contain Spring AOP proxies and also adds a custom method annotation policy when make a determination on whether a method is HTML safe or not.

    • Nested Class Summary

      • Nested classes/interfaces inherited from class org.apache.velocity.util.introspection.UberspectImpl

        org.apache.velocity.util.introspection.UberspectImpl.VelGetterImpl, org.apache.velocity.util.introspection.UberspectImpl.VelMethodImpl, org.apache.velocity.util.introspection.UberspectImpl.VelSetterImpl
    • Field Summary

      • Fields inherited from class org.apache.velocity.util.introspection.UberspectImpl

        introspector
    • Constructor Detail

      • ConfluenceAnnotationBoxingUberspect

        public ConfluenceAnnotationBoxingUberspect()
    • Method Detail

      • getMethodAnnotations

        protected Collection<Annotation> getMethodAnnotations​(Method method)
        Overrides:
        getMethodAnnotations in class com.atlassian.velocity.htmlsafe.introspection.HtmlSafeAnnotationBoxingUberspect
      • getClassForTargetObject

        protected Class getClassForTargetObject​(Object targetObject)
        Return the underlying class of an object even if obscured by a Spring AOP proxy
        Overrides:
        getClassForTargetObject in class com.atlassian.velocity.htmlsafe.introspection.AnnotationBoxingUberspect
        Parameters:
        targetObject - Object for class resolving
        Returns:
        Underlying class of the object