@ Override public boolean offer ( final T data ) { if ( ! open ) { throw new ClosedQueueException ( ) ; } try { final boolean result = producerWait . offer ( ( ) -> this . queue . offer ( ( T ) nullSafe ( data ) , this . offerTimeout , this . offerTimeUnit ) ) ; if ( sizeSignal != null ) this . sizeSignal . set ( queue . size ( ) ) ; return result ; } catch ( final InterruptedException e ) { Thread . currentThread ( ) . interrupt ( ) ; throw ExceptionSoftener . throwSoftenedException ( e ) ; } }
Offer a single datapoint to this Queue