Class IncomingData.NullIncomingData<DATATYPE extends Data>

  • All Implemented Interfaces:
    IncomingData<DATATYPE>
    Enclosing interface:
    IncomingData<DATATYPE extends Data>

    public static final class IncomingData.NullIncomingData<DATATYPE extends Data>
    extends Object
    implements IncomingData<DATATYPE>
    Creates a null implementation of this which is empty and complete at creation:
    • Provides immediate return without incurring any memory synchronization for any read method.
    • Throws an exception on any write method

    This allows consumers to check for completion the same way whether or not the data list in question supports asynchronous addition of data, and without incurring unnecessary costs.