class ProducerSettings[K, V] extends AnyRef
Settings for producers. See akka.kafka.producer
section in
reference.conf. Note that the companion object provides
apply
and create
functions for convenient construction of the settings, together with
the with
methods.
The constructor is Internal API.
- Source
- ProducerSettings.scala
- Alphabetic
- By Inheritance
- ProducerSettings
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
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( ... ) @native() @HotSpotIntrinsicCandidate()
- val closeProducerOnStop: Boolean
- val closeTimeout: FiniteDuration
-
def
createKafkaProducer(): Producer[K, V]
Create a
Producer
instance from these settings.Create a
Producer
instance from these settings.This will fail with
IllegalStateException
if asynchronous enrichment is set up -- always prefer createKafkaProducerAsync() or createKafkaProducerCompletionStage().- Exceptions thrown
IllegalStateException
if asynchronous enrichment is set viawithEnrichAsync
orwithEnrichCompletionStage
, you must usecreateKafkaProducerAsync
/createKafkaProducerCompletionStage
to apply it
-
def
createKafkaProducerAsync()(implicit executionContext: ExecutionContext): Future[Producer[K, V]]
Scala API.
Scala API.
Create a Kafka Producer instance from these settings (without blocking for
enriched
). -
def
createKafkaProducerCompletionStage(executor: Executor): CompletionStage[Producer[K, V]]
Java API.
Java API.
Create a Kafka Producer instance from these settings (without blocking for
enriched
).- executor
Executor for asynchronous producer creation
- val dispatcher: String
- val enrichAsync: Option[(ProducerSettings[K, V]) ⇒ Future[ProducerSettings[K, V]]]
-
def
enriched: Future[ProducerSettings[K, V]]
Applies
enrichAsync
to complement these settings from asynchronous sources. - val eosCommitInterval: FiniteDuration
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
getProperties: Map[String, AnyRef]
Get the Kafka producer settings as map.
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val keySerializerOpt: Option[Serializer[K]]
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- val parallelism: Int
- val producerFactorySync: Option[(ProducerSettings[K, V]) ⇒ Producer[K, V]]
- val properties: Map[String, String]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- ProducerSettings → AnyRef → Any
- val valueSerializerOpt: Option[Serializer[V]]
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
withBootstrapServers(bootstrapServers: String): ProducerSettings[K, V]
A comma-separated list of host/port pairs to use for establishing the initial connection to the Kafka cluster.
-
def
withCloseProducerOnStop(closeProducerOnStop: Boolean): ProducerSettings[K, V]
Call
KafkaProducer.close
on the org.apache.kafka.clients.producer.KafkaProducer when the producer stage receives a shutdown signal. -
def
withCloseTimeout(closeTimeout: Duration): ProducerSettings[K, V]
Java API: Duration to wait for
KafkaProducer.close
to finish. -
def
withCloseTimeout(closeTimeout: FiniteDuration): ProducerSettings[K, V]
Duration to wait for
KafkaProducer.close
to finish. -
def
withDispatcher(dispatcher: String): ProducerSettings[K, V]
Fully qualified config path which holds the dispatcher configuration to be used by the producer stages.
Fully qualified config path which holds the dispatcher configuration to be used by the producer stages. Some blocking may occur. When this value is empty, the dispatcher configured for the stream will be used.
-
def
withEnrichAsync(value: (ProducerSettings[K, V]) ⇒ Future[ProducerSettings[K, V]]): ProducerSettings[K, V]
Scala API.
Scala API. A hook to allow for resolving some settings asynchronously.
- Since
2.0.0
-
def
withEnrichCompletionStage(value: Function[ProducerSettings[K, V], CompletionStage[ProducerSettings[K, V]]]): ProducerSettings[K, V]
Java API.
Java API. A hook to allow for resolving some settings asynchronously.
- Since
2.0.0
-
def
withEosCommitInterval(eosCommitInterval: Duration): ProducerSettings[K, V]
Java API: The time interval to commit a transaction when using the
Transactional.sink
orTransactional.flow
. -
def
withEosCommitInterval(eosCommitInterval: FiniteDuration): ProducerSettings[K, V]
The time interval to commit a transaction when using the
Transactional.sink
orTransactional.flow
. -
def
withParallelism(parallelism: Int): ProducerSettings[K, V]
Tuning parameter of how many sends that can run in parallel.
-
def
withProducer(producer: Producer[K, V]): ProducerSettings[K, V]
Replaces the default Kafka producer creation logic with an external producer.
Replaces the default Kafka producer creation logic with an external producer. This will also set
closeProducerOnStop = false
by default. -
def
withProducerFactory(factory: (ProducerSettings[K, V]) ⇒ Producer[K, V]): ProducerSettings[K, V]
Replaces the default Kafka producer creation logic.
-
def
withProperties(properties: Map[String, String]): ProducerSettings[K, V]
Java API: The raw properties of the kafka-clients driver, see constants in org.apache.kafka.clients.producer.ProducerConfig.
-
def
withProperties(properties: (String, String)*): ProducerSettings[K, V]
Scala API: The raw properties of the kafka-clients driver, see constants in org.apache.kafka.clients.producer.ProducerConfig.
-
def
withProperties(properties: Map[String, String]): ProducerSettings[K, V]
Scala API: The raw properties of the kafka-clients driver, see constants in org.apache.kafka.clients.producer.ProducerConfig.
-
def
withProperty(key: String, value: String): ProducerSettings[K, V]
The raw properties of the kafka-clients driver, see constants in org.apache.kafka.clients.producer.ProducerConfig.
Deprecated Value Members
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] ) @Deprecated @deprecated
- Deprecated
(Since version ) see corresponding Javadoc for more information.
-
def
producerFactory: (ProducerSettings[K, V]) ⇒ Producer[K, V]
- Annotations
- @deprecated
- Deprecated
(Since version 2.0.0) Use createKafkaProducer(), createKafkaProducerAsync(), or createKafkaProducerCompletionStage() to get a new KafkaProducer