Class PrototypeFactory

java.lang.Object
org.apache.commons.collections4.functors.PrototypeFactory

public class PrototypeFactory extends Object
Factory implementation that creates a new instance each time based on a prototype.

WARNING: from v4.1 onwards Factory instances returned by prototypeFactory(Object) will not be serializable anymore in order to prevent potential remote code execution exploits. Please refer to COLLECTIONS-580 for more details.

Since:
3.0
Version:
$Id: PrototypeFactory.java 1714262 2015-11-13 20:08:45Z tn $
  • Method Details

    • prototypeFactory

      public static <T> Factory<T> prototypeFactory(T prototype)
      Factory method that performs validation.

      Creates a Factory that will return a clone of the same prototype object each time the factory is used. The prototype will be cloned using one of these techniques (in order):

      • public clone method
      • public copy constructor
      • serialization clone
        Type Parameters:
        T - the type the factory creates
        Parameters:
        prototype - the object to clone each time in the factory
        Returns:
        the prototype factory, or a ConstantFactory.NULL_INSTANCE if the prototype is null
        Throws:
        IllegalArgumentException - if the prototype cannot be cloned