Class ConstantFactory<T>

  • All Implemented Interfaces:
    java.io.Serializable, Factory<T>

    public class ConstantFactory<T>
    extends java.lang.Object
    implements Factory<T>, java.io.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
    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      ConstantFactory​(T constantToReturn)
      Constructor that performs no validation.
    • Field Detail

      • serialVersionUID

        private static final long serialVersionUID
        Serial version UID
        See Also:
        Constant Field Values
      • NULL_INSTANCE

        public static final Factory NULL_INSTANCE
        Returns null each time
      • iConstant

        private final T iConstant
        The closures to call in turn
    • 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