final class DrainingControl[T] extends Control
Combine control and a stream completion signal materialized values into one, so that the stream can be stopped in a controlled way without losing commits.
- Source
- Consumer.scala
- Alphabetic
- By Inheritance
- DrainingControl
- Control
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Value Members
- def drainAndShutdown(ec: Executor): CompletionStage[T]
Stop producing messages from the
Source
, wait for stream completion and shut down the consumerSource
.Stop producing messages from the
Source
, wait for stream completion and shut down the consumerSource
. It will wait for outstanding offset commit requests to finish before shutting down. - def drainAndShutdown[S](streamCompletion: CompletionStage[S], ec: Executor): CompletionStage[S]
Stop producing messages from the
Source
, wait for stream completion and shut down the consumerSource
so that all consumed messages reach the end of the stream.Stop producing messages from the
Source
, wait for stream completion and shut down the consumerSource
so that all consumed messages reach the end of the stream. Failures in stream completion will be propagated, the source will be shut down anyway.- Definition Classes
- DrainingControl → Control
- def getMetrics: CompletionStage[Map[MetricName, Metric]]
Exposes underlying consumer or producer metrics (as reported by underlying Kafka client library)
Exposes underlying consumer or producer metrics (as reported by underlying Kafka client library)
- Definition Classes
- DrainingControl → Control
- def isShutdown: CompletionStage[Done]
Shutdown status.
Shutdown status. The
CompletionStage
will be completed when the stage has been shut down and the underlyingKafkaConsumer
has been closed. Shutdown can be triggered from downstream cancellation, errors, or #shutdown.- Definition Classes
- DrainingControl → Control
- def shutdown(): CompletionStage[Done]
Shutdown the consumer
Source
.Shutdown the consumer
Source
. It will wait for outstanding offset commit requests before shutting down.- Definition Classes
- DrainingControl → Control
- def stop(): CompletionStage[Done]
Stop producing messages from the
Source
.Stop producing messages from the
Source
. This does not stop underlying kafka consumer and does not unsubscribe from any topics/partitions.Call #shutdown to close consumer
- Definition Classes
- DrainingControl → Control
- val streamCompletion: CompletionStage[T]