Class InvokerTransformer

  • All Implemented Interfaces:
    java.io.Serializable, Transformer

    @Deprecated(since="2021-04-30")
    public class InvokerTransformer
    extends java.lang.Object
    implements Transformer, java.io.Serializable
    Deprecated.
    Apache Commons Collections version 3.x is being deprecated from AEMaaCS. The upgraded version 4.4 of Commons Collections is already included as replacement. Customers are advised to upgrade to this version of the library. Please note: the package name was changed to org.apache.commons.collections4. Further note that there are AEM APIs currently exposing the old collections classes; these will be updated in upcoming releases.
    Transformer implementation that creates a new object instance by reflection.

    WARNING: from v3.2.2 onwards this class will throw an UnsupportedOperationException when trying to serialize or de-serialize an instance to prevent potential remote code execution exploits.

    In order to re-enable serialization support for InvokerTransformer the following system property can be used (via -Dproperty=true):

      org.apache.commons.collections.enableUnsafeSerialization
      
    Since:
    Commons Collections 3.0
    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      InvokerTransformer​(java.lang.String methodName, java.lang.Class[] paramTypes, java.lang.Object[] args)
      Deprecated.
      Constructor that performs no validation.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      static Transformer getInstance​(java.lang.String methodName)
      Deprecated.
      Gets an instance of this transformer calling a specific method with no arguments.
      static Transformer getInstance​(java.lang.String methodName, java.lang.Class[] paramTypes, java.lang.Object[] args)
      Deprecated.
      Gets an instance of this transformer calling a specific method with specific values.
      java.lang.Object transform​(java.lang.Object input)
      Deprecated.
      Transforms the input to result by invoking a method on the input.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • InvokerTransformer

        public InvokerTransformer​(java.lang.String methodName,
                                  java.lang.Class[] paramTypes,
                                  java.lang.Object[] args)
        Deprecated.
        Constructor that performs no validation. Use getInstance if you want that.
        Parameters:
        methodName - the method to call
        paramTypes - the constructor parameter types, not cloned
        args - the constructor arguments, not cloned
    • Method Detail

      • getInstance

        public static Transformer getInstance​(java.lang.String methodName)
        Deprecated.
        Gets an instance of this transformer calling a specific method with no arguments.
        Parameters:
        methodName - the method name to call
        Returns:
        an invoker transformer
        Since:
        Commons Collections 3.1
      • getInstance

        public static Transformer getInstance​(java.lang.String methodName,
                                              java.lang.Class[] paramTypes,
                                              java.lang.Object[] args)
        Deprecated.
        Gets an instance of this transformer calling a specific method with specific values.
        Parameters:
        methodName - the method name to call
        paramTypes - the parameter types of the method
        args - the arguments to pass to the method
        Returns:
        an invoker transformer
      • transform

        public java.lang.Object transform​(java.lang.Object input)
        Deprecated.
        Transforms the input to result by invoking a method on the input.
        Specified by:
        transform in interface Transformer
        Parameters:
        input - the input object to transform
        Returns:
        the transformed result, null if null input