org.apache.commons.collections.functors

## Class InstantiateFactory

- java.lang.Object
- - org.apache.commons.collections.functors.InstantiateFactory

- All Implemented Interfaces:
    Serializable, Factory

      public class InstantiateFactory
      extends Object
      implements Factory, Serializable

  Factory 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 `InstantiateTransformer` 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) $
  Author:
    Stephen Colebourne
  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `InstantiateFactory(Class classToInstantiate)` Constructor that performs no validation.
    `InstantiateFactory(Class classToInstantiate, Class[] paramTypes, Object[] args)` Constructor that performs no validation.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Object` | `create()` Creates an object using the stored constructor.
    `static Factory` | `getInstance(Class classToInstantiate, Class[] paramTypes, Object[] args)` Factory method that performs validation.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### InstantiateFactory

          public InstantiateFactory(Class classToInstantiate)

      Constructor that performs no validation. Use `getInstance` if you want that.
      Parameters:
        `classToInstantiate` - the class to instantiate

    - #### InstantiateFactory

          public InstantiateFactory(Class classToInstantiate,
                            Class[] paramTypes,
                            Object[] args)

      Constructor that performs no validation. Use `getInstance` if you want that.
      Parameters:
        `classToInstantiate` - the class to instantiate
        `paramTypes` - the constructor parameter types, not cloned
        `args` - the constructor arguments, not cloned

  - ### Method Detail

    - #### getInstance

          public static Factory getInstance(Class classToInstantiate,
                            Class[] paramTypes,
                            Object[] args)

      Factory method that performs validation.
      Parameters:
        `classToInstantiate` - the class to instantiate, not null
        `paramTypes` - the constructor parameter types
        `args` - the constructor arguments
      Returns:
        a new instantiate factory

    - #### create

          public Object create()

      Creates an object using the stored constructor.
      Specified by:
        `create` in interface `Factory`
      Returns:
        the new object

Copyright © 2001–2015 The Apache Software Foundation. All rights reserved.