kafka-connect-storage-common
kafka-connect-storage-common copied to clipboard
Fix #75 by passing original properties map
The issue being fixed is that the way this interface is currently designed leads to Partitioner being effectively un-extensible, unless they don't need any parameters at all except those defined by the connectors using the partitioner.
The new design puts the onus of turning properties into a configuration map on the partitioner class. Because those classes use recommenders and also use common storage configuration, the interface was extended with two recommender getters, with a default implementation.
TimestampExtractor also gets the same treatment, as it is used from some of the Partitioner implementations.
While this does break API, the existing API is difficult to extend to begin with, which is the reason for the change.
@confluentinc It looks like @dcsobral just signed our Contributor License Agreement. :+1:
Always at your service,
clabot