Versions Compared

Key

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

...

Code Block
languagejava
linenumberstrue
collapsetrue
/**
 * A detailed description of a single streams group in the cluster.
 */
public class StreamsGroupDescription {

    public StreamsGroupDescription(
        final String groupId,
        final int groupEpoch,
        final int targetAssignmentEpoch,
        final int topologyEpoch,
        final Collection<StreamsGroupSubtopologyDescription> subtopologies,
        final Collection<StreamsGroupMemberDescription> members,
        final GroupState groupState,
        final Node coordinator,
        final Set<AclOperation> authorizedOperations
    );

    /**
     * The id of the streams group.
     */
    public String groupId();
    
    /**
     * The epoch of the consumer group.
     */
    public int groupEpoch();
 
    /**
     * The epoch of the target assignment.
     */
    public int targetAssignmentEpoch();

    /**
     * The epoch of the currently used topology.
     */
    public int topologyEpoch();
    
    /**
     * A list of the members of the streams group.
     */
    public Collection<StreamsGroupMemberDescription> members();

    /**
     * A list of the subtopologies in the streams group.
     */
    public Collection<StreamsGroupSubtopologyDescription> subtopologies();

    /**
     * The state of the streams group, or UNKNOWN if the state is too new for us to parse.
     */
    public GroupState groupState();

    /**
     * The group coordinator, or null if the coordinator is not known.
     */
    public Node coordinator();

    /**
     * authorizedOperations for this group, or null if that information is not known.
     */
    public Set<AclOperation> authorizedOperations();
}

...

Code Block
languagejava
linenumberstrue
collapsetrue
/**
 * A detailed description of a single member in the group.
 */
public class StreamsGroupMemberDescription {

    public StreamsGroupMemberDescription(
        final String memberId,
        final int memberEpoch,
        final Optional<String> instanceId,
        final StringOptional<String> rackId,
        final String clientId,
        final String clientHost,
        final int topologyEpoch,
        final String processId,
        final EndpointOptional<Endpoint> userEndpoint,
        final Map<String, String> clientTags,
        final List<TaskOffset> taskOffsets,
        final List<TaskOffset> taskEndOffsets,
        final StreamsGroupMemberAssignment assignment,
        final Optional<StreamsGroupMemberAssignment>StreamsGroupMemberAssignment targetAssignment,
        final boolean isClassic
    );

    /**
     * The id of the group member.
     */
    public String memberId();

    /**
     * The epoch of the group member.
     */
    public int memberEpoch();

    /**
     * The id of the instance, used for static membership, if available.
     */
    public Optional<String> instanceId(); 
    
    /**
     * The rack ID of the group member.
     */
    public StringOptional<String> rackId();
    
    /**
     * The client id of the group member.
     */
    public String clientId();

    /**
     * The host of the group member.
     */
    public String clientHost();

    /**
     * The epoch of the group member. 
     */
    public int memberEpoch();

    /**
     * The epoch of the topology present on the client.
     */
    public int topologyEpoch();
 
    /**
     * Identity of the streams instance that may have multiple clients.
     */
    public String processId(); 

    /**
     * User-defined endpoint for Interactive Queries.
     */
    public EndpointOptional<Endpoint> userEndpoint();

    /**
     * Used for rack-aware assignment algorithm.
     */
    public Map<String, String> clientTags();

    /**
     * Cumulative offsets for tasks.
     */
    public List<TaskOffset> taskOffsets();

    /**
     * Cumulative task changelog end offsets for tasks.
     */
    public List<TaskOffset> taskEndOffsets();

    /**
     * The current assignment.
     */
    public StreamsGroupMemberAssignment assignment();

    /**
     * The target assignment.
     */
    public Optional<StreamsGroupMemberAssignment>StreamsGroupMemberAssignment targetAssignment();     
    
    /**
     * The flag indicating whether a member is classic.
     */
    public boolean isClassic();

    /**
     * The cumulative offset for one task.
     */
    public static class TaskOffset {

        public TaskOffset(final String subtopologyId, final int partition, final long offset);

        /**
         * The subtopology identifier.
         */
        public String subtopologyId();

        /**
         * The partition of the task.
         */
        public int partition();

        /**
         * The cumulative offset (sum of offsets in all input partitions).
         */
        public long offset();
    }
}

...

Code Block
languagejava
linenumberstrue
collapsetrue
/**
 * A description of the assignments of a specific streams group member.
 */
public class StreamsGroupMemberAssignment {

    public StreamsGroupMemberAssignment(
        final List<TaskIds> activeTasks,
        final List<TaskIds> standbyTasks,
        final List<TaskIds> warmupTasks
    );

    /**
     * Active tasks for this client.
     */
    public List<TaskIds> activeTasks();

    /**
     * Standby tasks for this client.
     */
    public List<TaskIds> standbyTasks();
    
    /**
     * Warmup tasks for this client.
     */
    public List<TaskIds> warmupTasks();

    /**
     * All tasks for one subtopology of a member.
     */
    public static class TaskIds {

        public TaskIds(final String subtopologyId, final List<Integer> partitions);

        /**
         * The subtopology identifier.
         */
        public String subtopologyId();

        /**
         * The partitions of the input topics processed by this member.
         */
        public List<Integer> partitions();
    }
}

...