[ 
https://issues.apache.org/jira/browse/KAFKA-12849?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17351440#comment-17351440
 ] 

A. Sophie Blee-Goldman commented on KAFKA-12849:
------------------------------------------------

Though we went through a similar discussion with TaskId and ultimately decided 
it needed to be an actual class and not an interface, imo those arguments and 
conditions do not really apply to the TaskMetadata class. So I would propose to 
move this to an interface, though I didn't want to get into it during KIP-740 
which had already dragged on for quite long enough :) 

> Consider migrating TaskMetadata to interface with internal implementation
> -------------------------------------------------------------------------
>
>                 Key: KAFKA-12849
>                 URL: https://issues.apache.org/jira/browse/KAFKA-12849
>             Project: Kafka
>          Issue Type: Improvement
>          Components: streams
>            Reporter: A. Sophie Blee-Goldman
>            Priority: Major
>
> In KIP-740 we had to go through a deprecation cycle in order to change the 
> constructor from the original one which accepted the taskId parameter as a 
> string, to the new one which takes a TaskId object directly. We had 
> considered just changing the signature directly without deprecation as this 
> was never intended to be instantiated by users, rather it just acts as a 
> pass-through metadata class. Sort of by definition if there is no reason to 
> ever instantiate it, this seems to indicate it may be better suited as a 
> public interface with the implementation and constructor as internal APIs.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to