Class SetOnce<T>

java.lang.Object
org.apache.lucene.util.SetOnce<T>
All Implemented Interfaces:
Cloneable

public final class SetOnce<T> extends Object implements Cloneable
A convenient class which offers a semi-immutable object wrapper implementation which allows one to set the value of an object exactly once, and retrieve it many times. If set(Object) is called more than once, SetOnce.AlreadySetException is thrown and the operation will fail.
  • Constructor Details

  • Method Details

    • set

      public final void set(T obj)
      Sets the given object. If the object has already been set, an exception is thrown.
    • get

      public final T get()
      Returns the object set by set(Object).
    • clone

      public SetOnce<T> clone()
      Overrides:
      clone in class Object