Class CloneTransformer

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

    @Deprecated(since="2021-04-30")
    public class CloneTransformer
    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 returns a clone of the input object.

    Clone is performed using PrototypeFactory.getInstance(input).create().

    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 CloneTransformer the following system property can be used (via -Dproperty=true):

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

      Fields 
      Modifier and Type Field Description
      static Transformer INSTANCE
      Deprecated.
      Singleton predicate instance
    • Field Detail

      • INSTANCE

        public static final Transformer INSTANCE
        Deprecated.
        Singleton predicate instance
    • Method Detail

      • getInstance

        public static Transformer getInstance()
        Deprecated.
        Factory returning the singleton instance.
        Returns:
        the singleton instance
        Since:
        Commons Collections 3.1
      • transform

        public java.lang.Object transform​(java.lang.Object input)
        Deprecated.
        Transforms the input to result by cloning it.
        Specified by:
        transform in interface Transformer
        Parameters:
        input - the input object to transform
        Returns:
        the transformed result