Class AbstractMethodInvokingDelegator<T>

    • Constructor Detail

      • AbstractMethodInvokingDelegator

        public AbstractMethodInvokingDelegator()
    • Method Detail

      • invokeDelegateMethod

        protected T invokeDelegateMethod()
                                  throws java.lang.Exception
        Invoker the target method with arguments set by setArguments(Object[]).
        Returns:
        object returned by invoked method
        Throws:
        java.lang.Exception - exception thrown when executing the delegate method.
      • invokeDelegateMethodWithArgument

        protected T invokeDelegateMethodWithArgument​(java.lang.Object object)
                                              throws java.lang.Exception
        Invokes the target method with given argument.
        Parameters:
        object - argument for the target method
        Returns:
        object returned by target method
        Throws:
        java.lang.Exception - exception thrown when executing the delegate method.
      • invokeDelegateMethodWithArguments

        protected T invokeDelegateMethodWithArguments​(java.lang.Object[] args)
                                               throws java.lang.Exception
        Invokes the target method with given arguments.
        Parameters:
        args - arguments for the invoked method
        Returns:
        object returned by invoked method
        Throws:
        java.lang.Exception - exception thrown when executing the delegate method.
      • afterPropertiesSet

        public void afterPropertiesSet()
                                throws java.lang.Exception
        Specified by:
        afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
        Throws:
        java.lang.Exception
      • setTargetObject

        public void setTargetObject​(java.lang.Object targetObject)
        Parameters:
        targetObject - the delegate - bean id can be used to set this value in Spring configuration
      • setTargetMethod

        public void setTargetMethod​(java.lang.String targetMethod)
        Parameters:
        targetMethod - name of the method to be invoked on setTargetObject(Object).
      • setArguments

        public void setArguments​(java.lang.Object[] arguments)
        Parameters:
        arguments - arguments values for the { setTargetMethod(String). These will be used only when the subclass tries to invoke the target method without providing explicit argument values. If arguments are set to not-null value afterPropertiesSet() will check the values are compatible with target method's signature. In case arguments are null (not set) method signature will not be checked and it is assumed correct values will be supplied at runtime.
      • getArguments

        protected java.lang.Object[] getArguments()
        Return arguments.
        Returns:
        arguments