org.apache.commons.collections4.functors
Class ConstantFactory<T>

java.lang.Object
  extended by org.apache.commons.collections4.functors.ConstantFactory<T>
All Implemented Interfaces:
Serializable, Factory<T>

public class ConstantFactory<T>
extends Object
implements Factory<T>, Serializable

Factory implementation that returns the same constant each time.

No check is made that the object is immutable. In general, only immutable objects should use the constant factory. Mutable objects should use the prototype factory.

Since:
3.0
Version:
$Id: ConstantFactory.java 1479408 2013-05-05 22:15:05Z sebb $
See Also:
Serialized Form

Field Summary
static Factory<Object> NULL_INSTANCE
          Returns null each time
 
Constructor Summary
ConstantFactory(T constantToReturn)
          Constructor that performs no validation.
 
Method Summary
static
<T> Factory<T>
constantFactory(T constantToReturn)
          Factory method that performs validation.
 T create()
          Always return constant.
 T getConstant()
          Gets the constant.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NULL_INSTANCE

public static final Factory<Object> NULL_INSTANCE
Returns null each time

Constructor Detail

ConstantFactory

public ConstantFactory(T constantToReturn)
Constructor that performs no validation. Use constantFactory if you want that.

Parameters:
constantToReturn - the constant to return each time
Method Detail

constantFactory

public static <T> Factory<T> constantFactory(T constantToReturn)
Factory method that performs validation.

Type Parameters:
T - the type of the constant
Parameters:
constantToReturn - the constant object to return each time in the factory
Returns:
the constant factory.

create

public T create()
Always return constant.

Specified by:
create in interface Factory<T>
Returns:
the stored constant value

getConstant

public T getConstant()
Gets the constant.

Returns:
the constant
Since:
3.1


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