GitHub user rangadi opened a pull request:

    https://github.com/apache/beam/pull/2986

    [BEAM-2221] KafkaIO API clean up.

    
    - Removed withKeyCoder() and withValueCoder() methods. 
      - Their meaning changed
    when KafkaIO added support for Deserializers. The coders can be explicitly
    specified using withKeyDeserializerAndCoder(). This makes it explicit to
    the user Deserializer is still required and JavaDoc explains why both
    are required in addition to deserializers.
     
     - Removed 'readWithCoders()' and 'writeWithCoders()' methods. These were 
supposed to be utility methods to show how to use 
`CoderBasedKafkaDeserializer`. But they are too prominently placed and they 
were misused in multiple places. E.g. KafkaIOTest used VarInt coders even 
though the Kafka messages were plain big endian encoded ints and longs. They 
tests still passed!. 
       - These utility methods  are moved `CoderBasedKafkaSerializer` (this 
class implements both `Deserializer` and `Serializer` interface). JavaDoc 
includes usage examples.
    
    


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/rangadi/incubator-beam kafkaio_cleanup

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/beam/pull/2986.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #2986
    
----
commit 89a840a9291dc8de2462e4ce76293d84a24f06f0
Author: Raghu Angadi <[email protected]>
Date:   2017-05-09T00:14:37Z

    KafkaIO API clean up.
    Remove withKeyCoder() and withValueCoder() method. Their meaning changed
    when KafkaIO added support for Deserializers. The coders can be explicitly
    specified using withKeyDeserializerAndCoder(). This makes it explicit to
    the user Deserializer is still required and JavaDoc explains why both
    are required.

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to