Class CloneTransformer
java.lang.Object
org.apache.commons.collections.functors.CloneTransformer
- All Implemented Interfaces:
Serializable
,Transformer
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
- Version:
- $Revision: 1713845 $ $Date: 2015-11-11 15:02:16 +0100 (Wed, 11 Nov 2015) $
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Transformer
Singleton predicate instanceprivate static final long
Serial version UID -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic Transformer
Factory returning the singleton instance.private void
Overrides the default readObject implementation to prevent de-serialization (see COLLECTIONS-580).Transforms the input to result by cloning it.private void
Overrides the default writeObject implementation to prevent serialization (see COLLECTIONS-580).
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDSerial version UID- See Also:
-
INSTANCE
Singleton predicate instance
-
-
Constructor Details
-
CloneTransformer
private CloneTransformer()Constructor
-
-
Method Details
-
getInstance
Factory returning the singleton instance.- Returns:
- the singleton instance
- Since:
- Commons Collections 3.1
-
transform
Transforms the input to result by cloning it.- Specified by:
transform
in interfaceTransformer
- Parameters:
input
- the input object to transform- Returns:
- the transformed result
-
writeObject
Overrides the default writeObject implementation to prevent serialization (see COLLECTIONS-580).- Throws:
IOException
-
readObject
Overrides the default readObject implementation to prevent de-serialization (see COLLECTIONS-580).- Throws:
ClassNotFoundException
IOException
-