[ https://issues.apache.org/jira/browse/KAFKA-1049?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13762209#comment-13762209 ]
Jason Rosenberg commented on KAFKA-1049: ---------------------------------------- Perhaps it would be cleaner to have the api specify a factory class instead of the actual encoder class. This way, the factory can implement an api which requires a getEncoder(Properties props) method. > Encoder implementations are required to provide an undocumented constructor. > ---------------------------------------------------------------------------- > > Key: KAFKA-1049 > URL: https://issues.apache.org/jira/browse/KAFKA-1049 > Project: Kafka > Issue Type: Improvement > Reporter: Jason Rosenberg > Priority: Minor > > So, it seems that if I want to set a custom serializer class on the producer > (in 0.8), I have to use a class that includes a special constructor like: > public class MyKafkaEncoder<MyType> implements Encoder<MyType> { > // This constructor is expected by the kafka producer, used by reflection > public MyKafkaEncoder(VerifiableProperties props) { > // what can I do with this? > } > @Override > public byte[] toBytes(MyType message) { > return message.toByteArray(); > } > } > It seems odd that this would be a requirement when implementing an interface. > This seems not to have been the case in 0.7. > What could my encoder class do with the VerifiableProperties? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira