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
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def drainAndShutdown()(implicit ec: ExecutionContext): Future[T]
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. - def drainAndShutdown[S](streamCompletion: Future[S])(implicit ec: ExecutionContext): Future[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
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val isShutdown: Future[Done]
Shutdown status.
Shutdown status. The
Future
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 metrics: Future[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
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def stop(): Future[Done]
Stop producing messages from the
Source
and complete the stream.Stop producing messages from the
Source
and complete the stream. The underlying Kafka consumer stays alive so that it can handle commits for the already enqueued messages. It does not unsubscribe from any topics/partitions as that could trigger a consumer group rebalance.Call #shutdown to close consumer.
- Definition Classes
- DrainingControl → Control
- val streamCompletion: Future[T]
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)
- def shutdown(): Future[Done]
Shut down the consumer
Source
.Shut down the consumer
Source
.The actor backing the source will stay alive for
akka.kafka.consumer.stop-timeout
so that more commits from enqueued messages can be handled. The actor will wait for acknowledgements of the already sent offset commits from the Kafka broker before shutting down.- Definition Classes
- DrainingControl → Control
- Annotations
- @deprecated
- Deprecated
(Since version 2.0.0) Use
drainAndShutdown
for proper shutdown of the stream.