Class InsertIntoLatchSpin
java.lang.Object
com.espertech.esper.common.internal.statement.insertintolatch.InsertIntoLatchSpin
- All Implemented Interfaces:
InsertIntoLatch
A spin-locking implementation of a latch for use in guaranteeing delivery between
a single event produced by a single statement and consumable by another statement.
-
Constructor Summary
ConstructorDescriptionCtor - use for the first and unused latch to indicate completion.InsertIntoLatchSpin
(InsertIntoLatchFactory factory, InsertIntoLatchSpin earlier, long msecTimeout, EventBean payload) Ctor. -
Method Summary
-
Constructor Details
-
InsertIntoLatchSpin
public InsertIntoLatchSpin(InsertIntoLatchFactory factory, InsertIntoLatchSpin earlier, long msecTimeout, EventBean payload) Ctor.- Parameters:
factory
- the latch factoryearlier
- the latch before this latch that this latch should be waiting formsecTimeout
- the timeout after which delivery occurspayload
- the payload is an event to deliver
-
InsertIntoLatchSpin
Ctor - use for the first and unused latch to indicate completion.- Parameters:
factory
- the latch factory
-
-
Method Details
-
isCompleted
public boolean isCompleted()Returns true if the dispatch completed for this future.- Returns:
- true for completed, false if not
-
await
Blocking call that returns only when the earlier latch completed.- Returns:
- payload of the latch
-
done
public void done()Called to indicate that the latch completed and a later latch can start. -
getFactory
- Specified by:
getFactory
in interfaceInsertIntoLatch
-
getEvent
- Specified by:
getEvent
in interfaceInsertIntoLatch
-
setEvent
- Specified by:
setEvent
in interfaceInsertIntoLatch
-