Class MartiniIterator
- java.lang.Object
-
- guru.qas.martini.standalone.harness.MartiniIterator
-
- All Implemented Interfaces:
java.util.Iterator<java.util.Optional<guru.qas.martini.Martini>>
@Configurable public class MartiniIterator extends java.lang.Object implements java.util.Iterator<java.util.Optional<guru.qas.martini.Martini>>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classMartiniIterator.Builder
-
Field Summary
Fields Modifier and Type Field Description protected java.util.concurrent.ConcurrentLinkedDeque<guru.qas.martini.Martini>gatedprotected com.google.common.util.concurrent.Monitormonitorprotected longpollTimeoutMsprotected java.util.concurrent.ConcurrentLinkedDeque<guru.qas.martini.Martini>ungated
-
Constructor Summary
Constructors Modifier Constructor Description protectedMartiniIterator(long pollTimeoutMs, java.util.concurrent.ConcurrentLinkedDeque<guru.qas.martini.Martini> gated, java.util.concurrent.ConcurrentLinkedDeque<guru.qas.martini.Martini> ungated)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static MartiniIterator.Builderbuilder()voidforEachRemaining(java.util.function.Consumer<? super java.util.Optional<guru.qas.martini.Martini>> action)protected java.util.Optional<guru.qas.martini.Martini>getNextGated()protected java.util.Optional<guru.qas.martini.Martini>getNextUngated()booleanhasNext()protected booleanlock(guru.qas.martini.Martini martini)java.util.Optional<guru.qas.martini.Martini>next()voidremove()
-
-
-
Field Detail
-
pollTimeoutMs
protected final long pollTimeoutMs
-
gated
protected final java.util.concurrent.ConcurrentLinkedDeque<guru.qas.martini.Martini> gated
-
ungated
protected final java.util.concurrent.ConcurrentLinkedDeque<guru.qas.martini.Martini> ungated
-
monitor
protected final com.google.common.util.concurrent.Monitor monitor
-
-
Method Detail
-
hasNext
public boolean hasNext()
- Specified by:
hasNextin interfacejava.util.Iterator<java.util.Optional<guru.qas.martini.Martini>>
-
next
public java.util.Optional<guru.qas.martini.Martini> next()
- Specified by:
nextin interfacejava.util.Iterator<java.util.Optional<guru.qas.martini.Martini>>
-
getNextGated
protected java.util.Optional<guru.qas.martini.Martini> getNextGated()
-
lock
protected boolean lock(guru.qas.martini.Martini martini)
-
getNextUngated
protected java.util.Optional<guru.qas.martini.Martini> getNextUngated()
-
remove
public void remove()
- Specified by:
removein interfacejava.util.Iterator<java.util.Optional<guru.qas.martini.Martini>>
-
forEachRemaining
public void forEachRemaining(java.util.function.Consumer<? super java.util.Optional<guru.qas.martini.Martini>> action)
- Specified by:
forEachRemainingin interfacejava.util.Iterator<java.util.Optional<guru.qas.martini.Martini>>
-
builder
public static MartiniIterator.Builder builder()
-
-