org.apache.commons.lang3.concurrent
Class ConstantInitializer<T>

java.lang.Object
  extended by org.apache.commons.lang3.concurrent.ConstantInitializer<T>
Type Parameters:
T - the type of the object managed by this initializer
All Implemented Interfaces:
ConcurrentInitializer<T>

public class ConstantInitializer<T>
extends Object
implements ConcurrentInitializer<T>

A very simple implementation of the ConcurrentInitializer interface which always returns the same object.

An instance of this class is passed a reference to an object when it is constructed. The get() method just returns this object. No synchronization is required.

This class is useful for instance for unit testing or in cases where a specific object has to be passed to an object which expects a ConcurrentInitializer.

Since:
3.0
Version:
$Id: ConstantInitializer.java 1199894 2011-11-09 17:53:59Z ggregory $

Constructor Summary
ConstantInitializer(T obj)
          Creates a new instance of ConstantInitializer and initializes it with the object to be managed.
 
Method Summary
 boolean equals(Object obj)
          Compares this object with another one.
 T get()
          Returns the object managed by this initializer.
 T getObject()
          Directly returns the object that was passed to the constructor.
 int hashCode()
          Returns a hash code for this object.
 String toString()
          Returns a string representation for this object.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ConstantInitializer

public ConstantInitializer(T obj)
Creates a new instance of ConstantInitializer and initializes it with the object to be managed. The get() method will always return the object passed here. This class does not place any restrictions on the object. It may be null, then get() will return null, too.

Parameters:
obj - the object to be managed by this initializer
Method Detail

getObject

public final T getObject()
Directly returns the object that was passed to the constructor. This is the same object as returned by get(). However, this method does not declare that it throws an exception.

Returns:
the object managed by this initializer

get

public T get()
      throws ConcurrentException
Returns the object managed by this initializer. This implementation just returns the object passed to the constructor.

Specified by:
get in interface ConcurrentInitializer<T>
Returns:
the object managed by this initializer
Throws:
ConcurrentException - if an error occurs

hashCode

public int hashCode()
Returns a hash code for this object. This implementation returns the hash code of the managed object.

Overrides:
hashCode in class Object
Returns:
a hash code for this object

equals

public boolean equals(Object obj)
Compares this object with another one. This implementation returns true if and only if the passed in object is an instance of ConstantInitializer which refers to an object equals to the object managed by this instance.

Overrides:
equals in class Object
Parameters:
obj - the object to compare to
Returns:
a flag whether the objects are equal

toString

public String toString()
Returns a string representation for this object. This string also contains a string representation of the object managed by this initializer.

Overrides:
toString in class Object
Returns:
a string for this object


Copyright © 2001-2011 The Apache Software Foundation. All Rights Reserved.