[ 
https://issues.apache.org/jira/browse/KAFKA-13864?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

François Rosière updated KAFKA-13864:
-------------------------------------
    Description: 
To allow implementing Spring managed interceptors for producers and consumers,

[https://github.com/spring-projects/spring-kafka/issues/2244]

a new constructor should be added in KafkaProducer

 
{code:java}
public KafkaProducer(ProducerConfig config, Serializer<K> keySerializer, 
Serializer<V> valueSerializer){code}
 

the visibility of one constructor of KafkaConsumer should also move from 
default to public.

 
{code:java}
public KafkaConsumer(ConsumerConfig config, Deserializer<K> keyDeserializer, 
Deserializer<V> valueDeserializer) {code}
 

see the current implementation 
[here|[https://github.com/apache/kafka/blob/trunk/clients/src/main/java/org/apache/kafka/clients/producer/KafkaProducer.java#L321]].
 

This issue is quite blocking , so, any other alternative or proposal would be 
more than welcome.

Kafka streams is not concerned by this issue as the KafkaStreams object is 
already exposing a constructor taking a StreamsConfig object.

Thanks for considering this issue.

  was:
To allow implementing Spring managed interceptors for producers and consumers,

[https://github.com/spring-projects/spring-kafka/issues/2244]

the visibility of one constructor of KafkaProducer and KafkaConsumer should 
move from the default modifier to the public modifier.

See

[https://github.com/apache/kafka/blob/trunk/clients/src/main/java/org/apache/kafka/clients/producer/KafkaProducer.java#L321]

and

[https://github.com/apache/kafka/blob/trunk/clients/src/main/java/org/apache/kafka/clients/consumer/KafkaConsumer.java#L671]

For the KafkaProducer, it may make more sense to define an additional 
constructor
{code:java}
 public KafkaProducer(ProducerConfig config, Serializer<K> keySerializer, 
Serializer<V> valueSerializer){code}
This issue is quite blocking , so, any other alternative or proposal would be 
more than welcome.

Kafka streams is not concerned by this issue as the KafkaStreams object is 
already exposing a constructor taking a StreamsConfig object.

Thanks for considering this issue.


> Change the visibility of a KafkaProducer and KafkaConsumer constructor
> ----------------------------------------------------------------------
>
>                 Key: KAFKA-13864
>                 URL: https://issues.apache.org/jira/browse/KAFKA-13864
>             Project: Kafka
>          Issue Type: Improvement
>          Components: clients
>    Affects Versions: 3.1.0
>            Reporter: François Rosière
>            Priority: Major
>
> To allow implementing Spring managed interceptors for producers and consumers,
> [https://github.com/spring-projects/spring-kafka/issues/2244]
> a new constructor should be added in KafkaProducer
>  
> {code:java}
> public KafkaProducer(ProducerConfig config, Serializer<K> keySerializer, 
> Serializer<V> valueSerializer){code}
>  
> the visibility of one constructor of KafkaConsumer should also move from 
> default to public.
>  
> {code:java}
> public KafkaConsumer(ConsumerConfig config, Deserializer<K> keyDeserializer, 
> Deserializer<V> valueDeserializer) {code}
>  
> see the current implementation 
> [here|[https://github.com/apache/kafka/blob/trunk/clients/src/main/java/org/apache/kafka/clients/producer/KafkaProducer.java#L321]].
>  
> This issue is quite blocking , so, any other alternative or proposal would be 
> more than welcome.
> Kafka streams is not concerned by this issue as the KafkaStreams object is 
> already exposing a constructor taking a StreamsConfig object.
> Thanks for considering this issue.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to