Package com.google.cloud.logging
Class LogEntryServerStream
java.lang.Object
com.google.cloud.logging.LogEntryServerStream
The class implements
Iterable
interface over . It wraps around BidiStream
bi-directional gRPC stream to support iterating through ingested responses. The class
uses to iterate through the processed responses. The stream should be
explicitly canceled by calling method. The class does not
provide recovery or resuming functionality over the stream.
To iterate run:
LogEntryServerStream stream;
// code to initialize stream
for (LogEntry log : stream) {
// do something with logs
}
stream.cancel();
The iteration can be blocked on waiting for another response sent in the stream.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
cancel()
Cleanly cancels a partially consumed stream.com.google.api.gax.rpc.BidiStream<TailLogEntriesRequest,
TailLogEntriesResponse> boolean
Returns true if the next call to the iterator's hasNext() or next() is guaranteed to be nonblocking.iterator()
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Method Details
-
iterator
-
getInternalStream
public com.google.api.gax.rpc.BidiStream<TailLogEntriesRequest,TailLogEntriesResponse> getInternalStream() -
convert
-
isReceiveReady
public boolean isReceiveReady()Returns true if the next call to the iterator's hasNext() or next() is guaranteed to be nonblocking.- Returns:
- If the call on any of the iterator's methods is guaranteed to be nonblocking.
-
cancel
public void cancel()Cleanly cancels a partially consumed stream. The associated iterator will return false for the hasNext() in the next iteration. This maintains the contract that an observed true from hasNext() will yield an item in next(), but afterwards will return false.
-