Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagejava
titleDefaultConsumerGroupMetadata
class DefaultConsumerGroupMetadata implements ConsumerGroupMetadata {
    private final String groupId;
    private final int memberEpoch;
    private final String memberId;
    private final Optional<String> groupInstanceId;

    DefaultConsumerGroupMetadata(String groupId,
                                        int memberEpoch,
                                        String memberId,
                                        Optional<String> groupInstanceId) {
        this.groupId = Objects.requireNonNull(groupId, "group.id can't be null");
        this.memberEpoch= memberEpoch;
        this.memberId = Objects.requireNonNull(memberId, "member.id can't be null");
        this.groupInstanceId = Objects.requireNonNull(groupInstanceId, "group.instance.id can't be null");
    }

    public String groupId() {
        return groupId;
    }

    public int memberEpoch() {
        return memberEpoch;
    }

    public String memberId() {
        return memberId;
    }

    public Optional<String> groupInstanceId() {
        return groupInstanceId;
    }

    @Override
    public String toString() {
        return String.format("GroupMetadata(groupId = %s, memberEpoch= %d, memberId = %s, groupInstanceId = %s)",
            groupId,       groupId,
       
            memberEpoch,
                memberId,
                groupInstanceId.orElse(""));
    }

    @Override
    public boolean equals(final Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        final DefaultConsumerGroupMetadata that = (DefaultConsumerGroupMetadata) o;
        return memberEpoch== that.memberEpoch &&
                Objects.equals(groupId, that.groupId) &&
                Objects.equals(memberId, that.memberId) &&
                Objects.equals(groupInstanceId, that.groupInstanceId);
    }

    @Override
    public int hashCode() {
        return Objects.hash(groupId, memberEpoch, memberId, groupInstanceId);
    }

}

 

Compatibility, Deprecation, and Migration Plan

...

Code Block
languagejava
titlealternative
publicclass DefaultConsumerGroupMetadata classimplements ConsumerGroupMetadata {
    private final String groupId;
    private final int generationIdmemberEpoch;
    private final String memberId;
    private final Optional<String> groupInstanceId;

    public ConsumerGroupMetadata newInstance(KafkaConsumer<?,?> kafkaConsumer) {
        return kafkaConsumer.groupMetadata();
    }
    
    private ConsumerGroupMetadata(DefaultConsumerGroupMetadata(String groupId,
                                 int generationIdmemberEpoch,
                                 String memberId,
                                 Optional<String> groupInstanceId) {
        this.groupId = Objects.requireNonNull(groupId, "group.id can't be null");
        this.generationId memberEpoch= generationIdmemberEpoch;
        this.memberId = Objects.requireNonNull(memberId, "member.id can't be null");
        this.groupInstanceId = Objects.requireNonNull(groupInstanceId, "group.instance.id can't be null");
    }

    private ConsumerGroupMetadata(String groupId) {
        this(groupId,
            JoinGroupRequest.UNKNOWN_GENERATION_ID,
            JoinGroupRequest.UNKNOWN_MEMBER_ID,
            Optional.empty());
    }

    public String groupId() {
        return groupId;
    }

    public int generationIdmemberEpoch() {
        return generationIdmemberEpoch;
    }

    public String memberId() {
        return memberId;
    }

    public Optional<String> groupInstanceId() {
        return groupInstanceId;
    }

    @Override
    public String toString() {
        return String.format("GroupMetadata(groupId = %s, generationId memberEpoch= %d, memberId = %s, groupInstanceId = %s)",
                groupId,
                generationIdmemberEpoch,
                memberId,
                groupInstanceId.orElse(""));
    }

    @Override
    public boolean equals(final Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        final ConsumerGroupMetadataDefaultConsumerGroupMetadata that = (ConsumerGroupMetadataDefaultConsumerGroupMetadata) o;
        return generationId memberEpoch== that.generationIdmemberEpoch &&
                Objects.equals(groupId, that.groupId) &&
                Objects.equals(memberId, that.memberId) &&
                Objects.equals(groupInstanceId, that.groupInstanceId);
    }

    @Override
    public int hashCode() {
        return Objects.hash(groupId, generationIdmemberEpoch, memberId, groupInstanceId);
    }

}