Class AbstractInvoker

    • Constructor Detail

      • AbstractInvoker

        public AbstractInvoker()
    • Method Detail

      • getServiceObject

        public abstract Object getServiceObject​(Exchange context)
        Creates and returns a service object depending on the scope.
      • releaseServiceObject

        public void releaseServiceObject​(Exchange context,
                                         Object obj)
        Called when the invoker is done with the object. Default implementation does nothing.
        Parameters:
        context -
        obj -
      • isJdkDynamicProxy

        public static boolean isJdkDynamicProxy​(Object object)
        Return whether the given object is a J2SE dynamic proxy.
        Parameters:
        object - the object to check
        See Also:
        Proxy.isProxyClass(java.lang.Class<?>)
      • getMostSpecificMethod

        public static Method getMostSpecificMethod​(Method method,
                                                   Class<?> targetClass)
        Given a method, which may come from an interface, and a targetClass used in the current AOP invocation, find the most specific method if there is one. E.g. the method may be IFoo.bar() and the target class may be DefaultFoo. In this case, the method may be DefaultFoo.bar(). This enables attributes on that method to be found.
        Parameters:
        method - method to be invoked, which may come from an interface
        targetClass - target class for the current invocation. May be null or may not even implement the method.
        Returns:
        the more specific method, or the original method if the targetClass doesn't specialize it or implement it or is null