To stay consistent with existing code, we should simply add 2 constructors.
One with ser/deser and one without.
So that, users have the choice to use one or the other.
I updated the KIP accordingly.

Le ven. 6 mai 2022 à 12:55, François Rosière <francois.rosi...@gmail.com> a
écrit :

> On the other hand, the KafkaConsumer constructor with a config +
> serializer and deserializer already exists but is not public.
> It would also complexify a bit the caller to not have the
> serializer/deserializer exposed at constructor level.
>
> Once the KIP would have been implemented, for streams, instead of having a
> custom config (already possible), I may simply define a custom
> KafkaClientSupplier reusing the custom configs of both the producer and the
> consumer.
> This supplier currently creates producers and consumers using the
> constructors with a map of config + serializer/deserializer.
>
> So, it seems it's easier to have the constructor with 3 parameters. But in
> any case, it will work if the config can be accessed...
>
> Le ven. 6 mai 2022 à 12:14, François Rosière <francois.rosi...@gmail.com>
> a écrit :
>
>> Hello,
>>
>> We may create a constructor with a single parameter which is the config
>> but then, I would need to give the serializer/deserializer by also
>> overriding the config.
>> Like I would do for the interceptors.
>> So, no real opinion on that, both solutions are ok for me.
>> Maybe easier to take the approach of the single parameter.
>>
>> Hope it respond to the question.
>>
>> Kr,
>>
>> F.
>>
>> Le ven. 6 mai 2022 à 11:59, Bruno Cadonna <cado...@apache.org> a écrit :
>>
>>> Hi Francois,
>>>
>>> Thank you for updating the KIP!
>>>
>>> Now the motivation of the KIP is much clearer.
>>>
>>> I would still be interested in:
>>>
>>>  >> 2. Why do you only want to change/add the constructors that take the
>>>  >> properties objects and de/serializers and you do not also want to
>>>  >> add/change the constructors that take only the properties?
>>>
>>>
>>> Best,
>>> Bruno
>>>
>>> On 05.05.22 23:15, François Rosière wrote:
>>> > Hello Bruno,
>>> >
>>> > The KIP as been updated. Feel free to give more feedbacks and I will
>>> > complete accordingly.
>>> >
>>> > Kr,
>>> >
>>> > F.
>>> >
>>> > Le jeu. 5 mai 2022 à 22:22, Bruno Cadonna <cado...@apache.org> a
>>> écrit :
>>> >
>>> >> Hi Francois,
>>> >>
>>> >> Thanks for the KIP!
>>> >>
>>> >> Here my first feedback:
>>> >>
>>> >> 1. Could you please extend the motivation section, so that it is clear
>>> >> for a non-Spring dev why the change is needed? Usually, a motivation
>>> >> section benefits a lot from an actual example.
>>> >> Extending the motivation section would also make the KIP more
>>> >> self-contained which is important IMO since this is kind of a log of
>>> the
>>> >> major changes to Kafka. Descriptions of major changes should not
>>> >> completely depend on external links (which may become dead in future).
>>> >> Referencing external resources to point to more details or give
>>> context
>>> >> is useful, though.
>>> >>
>>> >> 2. Why do you only want to change/add the constructors that take the
>>> >> properties objects and de/serializers and you do not also want to
>>> >> add/change the constructors that take only the properties?
>>> >>
>>> >> 3. I found the following stalled KIP whose motivation is really
>>> similar
>>> >> to yours:
>>> >>
>>> >>
>>> >>
>>> https://cwiki.apache.org/confluence/display/KAFKA/KIP-378%3A+Enable+Dependency+Injection+for+Kafka+Streams+handlers
>>> >>
>>> >> That KIP is also the reason why Kafka Streams still has the
>>> constructors
>>> >> with the StreamsConfig parameter. Maybe you want to mention this KIP
>>> in
>>> >> yours or even incorporate the remaining topology test driver API
>>> changes
>>> >> in your KIP.
>>> >> Some related links:
>>> >> - https://github.com/apache/kafka/pull/5344#issuecomment-413350338
>>> >> - https://github.com/apache/kafka/pull/10484
>>> >> - https://issues.apache.org/jira/browse/KAFKA-6386
>>> >>
>>> >> Best,
>>> >> Bruno
>>> >>
>>> >>
>>> >> On 04.05.22 22:26, François Rosière wrote:
>>> >>> Hi all,
>>> >>>
>>> >>> KIP-832 has been created to allow implementing Spring managed
>>> >> interceptors
>>> >>> for Producers and Consumers.
>>> >>>
>>> >>> At the moment, interceptors are given as configuration classes to the
>>> >>> producer and consumer configurations. So, the idea here would be to
>>> >> create
>>> >>> 2 new constructors to allow using a Producer and Consumer
>>> configuration
>>> >>> instead of properties or a key value map of configurations entries.
>>> >>> Interceptors could then be given as instances by overriding a config
>>> >> method.
>>> >>> More details can be found in the Spring issue.
>>> >>> https://github.com/spring-projects/spring-kafka/issues/2244
>>> >>>
>>> >>> Any feedback, proposal, vote for this KIP would be more than welcome.
>>> >>>
>>> >>> Kind regards,
>>> >>>
>>> >>> Francois R.
>>> >>>
>>> >>> Le lun. 2 mai 2022 à 21:05, François Rosière <
>>> francois.rosi...@gmail.com>
>>> >> a
>>> >>> écrit :
>>> >>>
>>> >>>> Kip link:
>>> >>>>
>>> >>
>>> https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=211882578
>>> >>>>
>>> >>>>
>>> >>>
>>> >>
>>> >
>>>
>>

Reply via email to