diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/AlterShareGroupOffsetsOptions.java b/clients/src/main/java/org/apache/kafka/clients/admin/AlterShareGroupOffsetsOptions.java index 0aac20ebd9554..b032be5406091 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/AlterShareGroupOffsetsOptions.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/AlterShareGroupOffsetsOptions.java @@ -14,19 +14,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package org.apache.kafka.clients.admin; -import org.apache.kafka.common.annotation.InterfaceStability; - import java.util.Map; /** - * Options for the {@link Admin#alterShareGroupOffsets(String, Map, AlterShareGroupOffsetsOptions)} call. - *

- * The API of this class is evolving, see {@link Admin} for details. + * Options for {@link Admin#alterShareGroupOffsets(String, Map, AlterShareGroupOffsetsOptions)}. */ -@InterfaceStability.Evolving public class AlterShareGroupOffsetsOptions extends AbstractOptions { - } diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/AlterShareGroupOffsetsResult.java b/clients/src/main/java/org/apache/kafka/clients/admin/AlterShareGroupOffsetsResult.java index 293daaadbb925..96582297f7543 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/AlterShareGroupOffsetsResult.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/AlterShareGroupOffsetsResult.java @@ -19,7 +19,6 @@ import org.apache.kafka.common.KafkaFuture; import org.apache.kafka.common.TopicPartition; -import org.apache.kafka.common.annotation.InterfaceStability; import org.apache.kafka.common.errors.ApiException; import org.apache.kafka.common.internals.KafkaFutureImpl; import org.apache.kafka.common.protocol.Errors; @@ -30,10 +29,7 @@ /** * The result of the {@link Admin#alterShareGroupOffsets(String, Map, AlterShareGroupOffsetsOptions)} call. - *

- * The API of this class is evolving, see {@link Admin} for details. */ -@InterfaceStability.Evolving public class AlterShareGroupOffsetsResult { private final KafkaFuture> future; diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/ClassicGroupDescription.java b/clients/src/main/java/org/apache/kafka/clients/admin/ClassicGroupDescription.java index 065c12214552f..5a59eb9698067 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/ClassicGroupDescription.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/ClassicGroupDescription.java @@ -137,7 +137,7 @@ public Node coordinator() { /** * authorizedOperations for this group, or null if that information is not known. */ - public Set authorizedOperations() { + public Set authorizedOperations() { return authorizedOperations; } diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/ConsumerGroupDescription.java b/clients/src/main/java/org/apache/kafka/clients/admin/ConsumerGroupDescription.java index b2c44d4fbeb63..fa9c010393e14 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/ConsumerGroupDescription.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/ConsumerGroupDescription.java @@ -49,7 +49,8 @@ public class ConsumerGroupDescription { /** * @deprecated Since 4.0. Use {@link #ConsumerGroupDescription(String, boolean, Collection, String, GroupType, GroupState, Node, Set, Optional, Optional)} instead. */ - @Deprecated + @SuppressWarnings("removal") + @Deprecated(since = "4.0", forRemoval = true) public ConsumerGroupDescription(String groupId, boolean isSimpleConsumerGroup, Collection members, @@ -62,7 +63,8 @@ public ConsumerGroupDescription(String groupId, /** * @deprecated Since 4.0. Use {@link #ConsumerGroupDescription(String, boolean, Collection, String, GroupType, GroupState, Node, Set, Optional, Optional)} instead. */ - @Deprecated + @SuppressWarnings("removal") + @Deprecated(since = "4.0", forRemoval = true) public ConsumerGroupDescription(String groupId, boolean isSimpleConsumerGroup, Collection members, @@ -76,7 +78,8 @@ public ConsumerGroupDescription(String groupId, /** * @deprecated Since 4.0. Use {@link #ConsumerGroupDescription(String, boolean, Collection, String, GroupType, GroupState, Node, Set, Optional, Optional)} instead. */ - @Deprecated + @SuppressWarnings("removal") + @Deprecated(since = "4.0", forRemoval = true) public ConsumerGroupDescription(String groupId, boolean isSimpleConsumerGroup, Collection members, @@ -182,7 +185,8 @@ public GroupType type() { * The consumer group state, or UNKNOWN if the state is too new for us to parse. * @deprecated Since 4.0. Use {@link #groupState()} instead. */ - @Deprecated + @SuppressWarnings("removal") + @Deprecated(since = "4.0", forRemoval = true) public ConsumerGroupState state() { return ConsumerGroupState.parse(groupState.toString()); } @@ -204,7 +208,7 @@ public Node coordinator() { /** * authorizedOperations for this group, or null if that information is not known. */ - public Set authorizedOperations() { + public Set authorizedOperations() { return authorizedOperations; } diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/ConsumerGroupListing.java b/clients/src/main/java/org/apache/kafka/clients/admin/ConsumerGroupListing.java index d594b50241ca5..15cc15a239bb6 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/ConsumerGroupListing.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/ConsumerGroupListing.java @@ -28,7 +28,8 @@ * A listing of a consumer group in the cluster. * @deprecated Since 4.1. Use {@link Admin#listGroups(ListGroupsOptions)} and {@link GroupListing} instead. */ -@Deprecated(since = "4.1") +@SuppressWarnings("removal") +@Deprecated(since = "4.1", forRemoval = true) public class ConsumerGroupListing { private final String groupId; private final boolean isSimpleConsumerGroup; diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/DeleteShareGroupOffsetsOptions.java b/clients/src/main/java/org/apache/kafka/clients/admin/DeleteShareGroupOffsetsOptions.java index d5a3601315c4b..e38fdf107456f 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/DeleteShareGroupOffsetsOptions.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/DeleteShareGroupOffsetsOptions.java @@ -14,18 +14,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package org.apache.kafka.clients.admin; -import org.apache.kafka.common.annotation.InterfaceStability; - import java.util.Set; /** - * Options for the {@link Admin#deleteShareGroupOffsets(String, Set, DeleteShareGroupOffsetsOptions)} call. - *

- * The API of this class is evolving, see {@link Admin} for details. + * Options for {@link Admin#deleteShareGroupOffsets(String, Set, DeleteShareGroupOffsetsOptions)}. */ -@InterfaceStability.Evolving public class DeleteShareGroupOffsetsOptions extends AbstractOptions { } diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/DeleteShareGroupOffsetsResult.java b/clients/src/main/java/org/apache/kafka/clients/admin/DeleteShareGroupOffsetsResult.java index d9480d4ac062c..65231d1ca0fd7 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/DeleteShareGroupOffsetsResult.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/DeleteShareGroupOffsetsResult.java @@ -17,7 +17,6 @@ package org.apache.kafka.clients.admin; import org.apache.kafka.common.KafkaFuture; -import org.apache.kafka.common.annotation.InterfaceStability; import org.apache.kafka.common.errors.ApiException; import org.apache.kafka.common.internals.KafkaFutureImpl; @@ -26,10 +25,7 @@ /** * The result of the {@link Admin#deleteShareGroupOffsets(String, Set, DeleteShareGroupOffsetsOptions)} call. - *

- * The API of this class is evolving, see {@link Admin} for details. */ -@InterfaceStability.Evolving public class DeleteShareGroupOffsetsResult { private final KafkaFuture> future; diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/DeleteShareGroupsOptions.java b/clients/src/main/java/org/apache/kafka/clients/admin/DeleteShareGroupsOptions.java index 80fd55c732300..1709f169cb16d 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/DeleteShareGroupsOptions.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/DeleteShareGroupsOptions.java @@ -14,18 +14,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package org.apache.kafka.clients.admin; -import org.apache.kafka.common.annotation.InterfaceStability; - import java.util.Collection; /** - * Options for the {@link Admin#deleteShareGroups(Collection, DeleteShareGroupsOptions)} call. - *

- * The API of this class is evolving, see {@link Admin} for details. + * Options for {@link Admin#deleteShareGroups(Collection, DeleteShareGroupsOptions)}. */ -@InterfaceStability.Evolving public class DeleteShareGroupsOptions extends AbstractOptions { } diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/DeleteShareGroupsResult.java b/clients/src/main/java/org/apache/kafka/clients/admin/DeleteShareGroupsResult.java index ff53da08df81f..c4831e58494f6 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/DeleteShareGroupsResult.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/DeleteShareGroupsResult.java @@ -14,11 +14,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package org.apache.kafka.clients.admin; import org.apache.kafka.common.KafkaFuture; -import org.apache.kafka.common.annotation.InterfaceStability; import java.util.Collection; import java.util.HashMap; @@ -26,10 +24,7 @@ /** * The result of the {@link Admin#deleteShareGroups(Collection, DeleteShareGroupsOptions)} call. - *

- * The API of this class is evolving, see {@link Admin} for details. */ -@InterfaceStability.Evolving public class DeleteShareGroupsResult { private final Map> futures; diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/DescribeClassicGroupsOptions.java b/clients/src/main/java/org/apache/kafka/clients/admin/DescribeClassicGroupsOptions.java index ce2149d103f4f..6422e27524ee8 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/DescribeClassicGroupsOptions.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/DescribeClassicGroupsOptions.java @@ -17,16 +17,11 @@ package org.apache.kafka.clients.admin; -import org.apache.kafka.common.annotation.InterfaceStability; - import java.util.Collection; /** * Options for {@link Admin#describeClassicGroups(Collection, DescribeClassicGroupsOptions)}. - *

- * The API of this class is evolving, see {@link Admin} for details. */ -@InterfaceStability.Evolving public class DescribeClassicGroupsOptions extends AbstractOptions { private boolean includeAuthorizedOperations; diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/DescribeClassicGroupsResult.java b/clients/src/main/java/org/apache/kafka/clients/admin/DescribeClassicGroupsResult.java index 7b80f560ebfa6..22d0134569b49 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/DescribeClassicGroupsResult.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/DescribeClassicGroupsResult.java @@ -18,20 +18,15 @@ package org.apache.kafka.clients.admin; import org.apache.kafka.common.KafkaFuture; -import org.apache.kafka.common.annotation.InterfaceStability; import java.util.Collection; import java.util.HashMap; import java.util.Map; import java.util.concurrent.ExecutionException; - /** * The result of the {@link Admin#describeClassicGroups(Collection, DescribeClassicGroupsOptions)}} call. - *

- * The API of this class is evolving, see {@link Admin} for details. */ -@InterfaceStability.Evolving public class DescribeClassicGroupsResult { private final Map> futures; diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/DescribeShareGroupsOptions.java b/clients/src/main/java/org/apache/kafka/clients/admin/DescribeShareGroupsOptions.java index 2ac37bafed13e..47a8f008c44de 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/DescribeShareGroupsOptions.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/DescribeShareGroupsOptions.java @@ -14,19 +14,13 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package org.apache.kafka.clients.admin; -import org.apache.kafka.common.annotation.InterfaceStability; - import java.util.Collection; /** * Options for {@link Admin#describeShareGroups(Collection, DescribeShareGroupsOptions)}. - *

- * The API of this class is evolving, see {@link Admin} for details. */ -@InterfaceStability.Evolving public class DescribeShareGroupsOptions extends AbstractOptions { private boolean includeAuthorizedOperations; diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/DescribeShareGroupsResult.java b/clients/src/main/java/org/apache/kafka/clients/admin/DescribeShareGroupsResult.java index 59641e49ba39a..9ff0fcc610fe0 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/DescribeShareGroupsResult.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/DescribeShareGroupsResult.java @@ -14,11 +14,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package org.apache.kafka.clients.admin; import org.apache.kafka.common.KafkaFuture; -import org.apache.kafka.common.annotation.InterfaceStability; import java.util.Collection; import java.util.HashMap; @@ -27,10 +25,7 @@ /** * The result of the {@link KafkaAdminClient#describeShareGroups(Collection, DescribeShareGroupsOptions)}} call. - *

- * The API of this class is evolving, see {@link Admin} for details. */ -@InterfaceStability.Evolving public class DescribeShareGroupsResult { private final Map> futures; diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/GroupListing.java b/clients/src/main/java/org/apache/kafka/clients/admin/GroupListing.java index 8a0727c284fa6..8097f91ab0b36 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/GroupListing.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/GroupListing.java @@ -14,12 +14,10 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package org.apache.kafka.clients.admin; import org.apache.kafka.common.GroupState; import org.apache.kafka.common.GroupType; -import org.apache.kafka.common.annotation.InterfaceStability; import java.util.Objects; import java.util.Optional; @@ -27,7 +25,6 @@ /** * A listing of a group in the cluster. */ -@InterfaceStability.Evolving public class GroupListing { private final String groupId; private final Optional type; diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java b/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java index 9a50f52fb44ce..8478ed19f80c8 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java @@ -3580,6 +3580,7 @@ public DescribeConsumerGroupsResult describeConsumerGroups(final Collection entry.getKey().idValue, Map.Entry::getValue))); } + @SuppressWarnings("removal") @Deprecated private static final class ListConsumerGroupsResults { private final List errors; diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/ListGroupsOptions.java b/clients/src/main/java/org/apache/kafka/clients/admin/ListGroupsOptions.java index 7d7083f46c5c7..3937f6cb0356d 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/ListGroupsOptions.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/ListGroupsOptions.java @@ -14,22 +14,17 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package org.apache.kafka.clients.admin; import org.apache.kafka.clients.consumer.internals.ConsumerProtocol; import org.apache.kafka.common.GroupState; import org.apache.kafka.common.GroupType; -import org.apache.kafka.common.annotation.InterfaceStability; import java.util.Set; /** * Options for {@link Admin#listGroups()}. - *

- * The API of this class is evolving, see {@link Admin} for details. */ -@InterfaceStability.Evolving public class ListGroupsOptions extends AbstractOptions { private Set groupStates = Set.of(); diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/ListGroupsResult.java b/clients/src/main/java/org/apache/kafka/clients/admin/ListGroupsResult.java index b19c3e38e9cf5..88815bccb3c69 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/ListGroupsResult.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/ListGroupsResult.java @@ -18,7 +18,6 @@ package org.apache.kafka.clients.admin; import org.apache.kafka.common.KafkaFuture; -import org.apache.kafka.common.annotation.InterfaceStability; import org.apache.kafka.common.internals.KafkaFutureImpl; import java.util.ArrayList; @@ -28,10 +27,7 @@ /** * The result of the {@link Admin#listGroups()} call. - *

- * The API of this class is evolving, see {@link Admin} for details. */ -@InterfaceStability.Evolving public class ListGroupsResult { private final KafkaFutureImpl> all; private final KafkaFutureImpl> valid; diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/ListShareGroupOffsetsOptions.java b/clients/src/main/java/org/apache/kafka/clients/admin/ListShareGroupOffsetsOptions.java index bd740c24670db..4d6f4096c5e21 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/ListShareGroupOffsetsOptions.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/ListShareGroupOffsetsOptions.java @@ -14,18 +14,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package org.apache.kafka.clients.admin; -import org.apache.kafka.common.annotation.InterfaceStability; - import java.util.Map; /** * Options for {@link Admin#listShareGroupOffsets(Map, ListShareGroupOffsetsOptions)}. - *

- * The API of this class is evolving, see {@link Admin} for details. */ -@InterfaceStability.Evolving public class ListShareGroupOffsetsOptions extends AbstractOptions { } diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/ListShareGroupOffsetsResult.java b/clients/src/main/java/org/apache/kafka/clients/admin/ListShareGroupOffsetsResult.java index e75735ba2604f..ce3fbf7b24a6f 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/ListShareGroupOffsetsResult.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/ListShareGroupOffsetsResult.java @@ -14,13 +14,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package org.apache.kafka.clients.admin; import org.apache.kafka.clients.admin.internals.CoordinatorKey; import org.apache.kafka.common.KafkaFuture; import org.apache.kafka.common.TopicPartition; -import org.apache.kafka.common.annotation.InterfaceStability; import java.util.HashMap; import java.util.Map; @@ -29,10 +27,7 @@ /** * The result of the {@link Admin#listShareGroupOffsets(Map, ListShareGroupOffsetsOptions)} call. - *

- * The API of this class is evolving, see {@link Admin} for details. */ -@InterfaceStability.Evolving public class ListShareGroupOffsetsResult { private final Map>> futures; diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/ListShareGroupOffsetsSpec.java b/clients/src/main/java/org/apache/kafka/clients/admin/ListShareGroupOffsetsSpec.java index f2e1e79f8040a..08eb50417e6fb 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/ListShareGroupOffsetsSpec.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/ListShareGroupOffsetsSpec.java @@ -14,11 +14,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package org.apache.kafka.clients.admin; import org.apache.kafka.common.TopicPartition; -import org.apache.kafka.common.annotation.InterfaceStability; import java.util.Collection; import java.util.Map; @@ -26,10 +24,7 @@ /** * Specification of share group offsets to list using {@link Admin#listShareGroupOffsets(Map, ListShareGroupOffsetsOptions)}. - *

- * The API of this class is evolving, see {@link Admin} for details. */ -@InterfaceStability.Evolving public class ListShareGroupOffsetsSpec { private Collection topicPartitions; diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/ShareGroupDescription.java b/clients/src/main/java/org/apache/kafka/clients/admin/ShareGroupDescription.java index 469c23428eb9b..b8be6076699cb 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/ShareGroupDescription.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/ShareGroupDescription.java @@ -20,7 +20,6 @@ import org.apache.kafka.common.GroupState; import org.apache.kafka.common.Node; import org.apache.kafka.common.acl.AclOperation; -import org.apache.kafka.common.annotation.InterfaceStability; import java.util.Collection; import java.util.Collections; @@ -32,7 +31,6 @@ /** * A detailed description of a single share group in the cluster. */ -@InterfaceStability.Evolving public class ShareGroupDescription { private final String groupId; private final Collection members; diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/ShareMemberAssignment.java b/clients/src/main/java/org/apache/kafka/clients/admin/ShareMemberAssignment.java index de3be9d73f4dc..9aa86c115ebfe 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/ShareMemberAssignment.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/ShareMemberAssignment.java @@ -17,7 +17,6 @@ package org.apache.kafka.clients.admin; import org.apache.kafka.common.TopicPartition; -import org.apache.kafka.common.annotation.InterfaceStability; import java.util.Collections; import java.util.Objects; @@ -27,7 +26,6 @@ /** * A description of the assignments of a specific share group member. */ -@InterfaceStability.Evolving public class ShareMemberAssignment { private final Set topicPartitions; diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/ShareMemberDescription.java b/clients/src/main/java/org/apache/kafka/clients/admin/ShareMemberDescription.java index db9e41612d026..12434702b8a59 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/ShareMemberDescription.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/ShareMemberDescription.java @@ -16,8 +16,6 @@ */ package org.apache.kafka.clients.admin; -import org.apache.kafka.common.annotation.InterfaceStability; - import java.util.Collections; import java.util.Objects; import java.util.Optional; @@ -25,7 +23,6 @@ /** * A detailed description of a single share group member in the cluster. */ -@InterfaceStability.Evolving public class ShareMemberDescription { private final String memberId; private final Optional rackId; diff --git a/clients/src/main/java/org/apache/kafka/clients/admin/SharePartitionOffsetInfo.java b/clients/src/main/java/org/apache/kafka/clients/admin/SharePartitionOffsetInfo.java index 5948103dc17db..f4a34576bf650 100644 --- a/clients/src/main/java/org/apache/kafka/clients/admin/SharePartitionOffsetInfo.java +++ b/clients/src/main/java/org/apache/kafka/clients/admin/SharePartitionOffsetInfo.java @@ -17,15 +17,12 @@ package org.apache.kafka.clients.admin; -import org.apache.kafka.common.annotation.InterfaceStability; - import java.util.Objects; import java.util.Optional; /** * This class is used to contain the offset and lag information for a share-partition. */ -@InterfaceStability.Evolving public class SharePartitionOffsetInfo { private final long startOffset; private final Optional leaderEpoch; diff --git a/clients/src/main/java/org/apache/kafka/clients/consumer/AcknowledgeType.java b/clients/src/main/java/org/apache/kafka/clients/consumer/AcknowledgeType.java index 9812503e2b669..8f6cf41ba839e 100644 --- a/clients/src/main/java/org/apache/kafka/clients/consumer/AcknowledgeType.java +++ b/clients/src/main/java/org/apache/kafka/clients/consumer/AcknowledgeType.java @@ -16,15 +16,12 @@ */ package org.apache.kafka.clients.consumer; -import org.apache.kafka.common.annotation.InterfaceStability; - import java.util.Locale; /** * The acknowledge type is used with {@link KafkaShareConsumer#acknowledge(ConsumerRecord, AcknowledgeType)} to indicate * whether the record was consumed successfully. */ -@InterfaceStability.Evolving public enum AcknowledgeType { /** The record was consumed successfully. */ ACCEPT((byte) 1), diff --git a/clients/src/main/java/org/apache/kafka/clients/consumer/AcknowledgementCommitCallback.java b/clients/src/main/java/org/apache/kafka/clients/consumer/AcknowledgementCommitCallback.java index c84f9c78d0d1b..4b61244541f41 100644 --- a/clients/src/main/java/org/apache/kafka/clients/consumer/AcknowledgementCommitCallback.java +++ b/clients/src/main/java/org/apache/kafka/clients/consumer/AcknowledgementCommitCallback.java @@ -18,7 +18,6 @@ import org.apache.kafka.common.KafkaException; import org.apache.kafka.common.TopicIdPartition; -import org.apache.kafka.common.annotation.InterfaceStability; import org.apache.kafka.common.errors.AuthorizationException; import org.apache.kafka.common.errors.DisconnectException; import org.apache.kafka.common.errors.InterruptException; @@ -33,7 +32,6 @@ * A callback interface that the user can implement to trigger custom actions when an acknowledgement completes. * The callback may be executed in any thread calling {@link ShareConsumer#poll(java.time.Duration)}. */ -@InterfaceStability.Evolving public interface AcknowledgementCommitCallback { /** diff --git a/clients/src/main/java/org/apache/kafka/clients/consumer/KafkaShareConsumer.java b/clients/src/main/java/org/apache/kafka/clients/consumer/KafkaShareConsumer.java index 2b75ebe36666e..760b0399e4143 100644 --- a/clients/src/main/java/org/apache/kafka/clients/consumer/KafkaShareConsumer.java +++ b/clients/src/main/java/org/apache/kafka/clients/consumer/KafkaShareConsumer.java @@ -27,7 +27,6 @@ import org.apache.kafka.common.MetricName; import org.apache.kafka.common.TopicIdPartition; import org.apache.kafka.common.Uuid; -import org.apache.kafka.common.annotation.InterfaceStability; import org.apache.kafka.common.errors.AuthenticationException; import org.apache.kafka.common.errors.AuthorizationException; import org.apache.kafka.common.errors.InterruptException; @@ -385,7 +384,6 @@ * We have intentionally avoided implementing a particular threading model for processing. Various options for * multithreaded processing are possible, of which the most straightforward is to dedicate a thread to each consumer. */ -@InterfaceStability.Evolving public class KafkaShareConsumer implements ShareConsumer { private static final ShareConsumerDelegateCreator CREATOR = new ShareConsumerDelegateCreator(); diff --git a/clients/src/main/java/org/apache/kafka/clients/consumer/ShareConsumer.java b/clients/src/main/java/org/apache/kafka/clients/consumer/ShareConsumer.java index b61ac72516c71..f7725230fbb80 100644 --- a/clients/src/main/java/org/apache/kafka/clients/consumer/ShareConsumer.java +++ b/clients/src/main/java/org/apache/kafka/clients/consumer/ShareConsumer.java @@ -21,7 +21,6 @@ import org.apache.kafka.common.MetricName; import org.apache.kafka.common.TopicIdPartition; import org.apache.kafka.common.Uuid; -import org.apache.kafka.common.annotation.InterfaceStability; import org.apache.kafka.common.metrics.KafkaMetric; import java.io.Closeable; @@ -37,7 +36,6 @@ * @see KafkaShareConsumer * @see MockShareConsumer */ -@InterfaceStability.Evolving public interface ShareConsumer extends Closeable { /** @@ -134,5 +132,4 @@ public interface ShareConsumer extends Closeable { * @see KafkaShareConsumer#wakeup() */ void wakeup(); - } diff --git a/clients/src/main/java/org/apache/kafka/common/ConsumerGroupState.java b/clients/src/main/java/org/apache/kafka/common/ConsumerGroupState.java index 4f52485aaa156..7be49267c6482 100644 --- a/clients/src/main/java/org/apache/kafka/common/ConsumerGroupState.java +++ b/clients/src/main/java/org/apache/kafka/common/ConsumerGroupState.java @@ -27,7 +27,7 @@ * The consumer group state. * @deprecated Since 4.0. Use {@link GroupState} instead. */ -@Deprecated +@Deprecated(since = "4.0", forRemoval = true) public enum ConsumerGroupState { UNKNOWN("Unknown"), PREPARING_REBALANCE("PreparingRebalance"), diff --git a/clients/src/test/java/org/apache/kafka/clients/admin/ConsumerGroupDescriptionTest.java b/clients/src/test/java/org/apache/kafka/clients/admin/ConsumerGroupDescriptionTest.java index 4327f4db7f678..e790be3e64518 100644 --- a/clients/src/test/java/org/apache/kafka/clients/admin/ConsumerGroupDescriptionTest.java +++ b/clients/src/test/java/org/apache/kafka/clients/admin/ConsumerGroupDescriptionTest.java @@ -16,25 +16,33 @@ */ package org.apache.kafka.clients.admin; -import org.apache.kafka.common.ConsumerGroupState; +import org.apache.kafka.common.GroupState; +import org.apache.kafka.common.GroupType; import org.junit.jupiter.api.Test; +import java.util.Optional; +import java.util.Set; + import static org.junit.jupiter.api.Assertions.assertEquals; public class ConsumerGroupDescriptionTest { @Test - public void testState() { - for (ConsumerGroupState consumerGroupState : ConsumerGroupState.values()) { + public void testGroupState() { + for (GroupState groupState : GroupState.values()) { ConsumerGroupDescription description = new ConsumerGroupDescription( "groupId", false, - null, + Set.of(), "assignor", - consumerGroupState, - null + GroupType.CONSUMER, + groupState, + null, + Set.of(), + Optional.empty(), + Optional.empty() ); - assertEquals(consumerGroupState, description.state()); + assertEquals(groupState, description.groupState()); } } } diff --git a/clients/src/test/java/org/apache/kafka/clients/admin/ConsumerGroupListingTest.java b/clients/src/test/java/org/apache/kafka/clients/admin/ConsumerGroupListingTest.java index 15553b641bb48..5abbebe096fee 100644 --- a/clients/src/test/java/org/apache/kafka/clients/admin/ConsumerGroupListingTest.java +++ b/clients/src/test/java/org/apache/kafka/clients/admin/ConsumerGroupListingTest.java @@ -25,6 +25,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals; public class ConsumerGroupListingTest { + @SuppressWarnings({"deprecation", "removal"}) @Test public void testState() { for (ConsumerGroupState consumerGroupState : ConsumerGroupState.values()) { diff --git a/clients/src/test/java/org/apache/kafka/clients/admin/ListConsumerGroupsOptionsTest.java b/clients/src/test/java/org/apache/kafka/clients/admin/ListConsumerGroupsOptionsTest.java index f20d6e56c9595..779001eb576bb 100644 --- a/clients/src/test/java/org/apache/kafka/clients/admin/ListConsumerGroupsOptionsTest.java +++ b/clients/src/test/java/org/apache/kafka/clients/admin/ListConsumerGroupsOptionsTest.java @@ -25,6 +25,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals; public class ListConsumerGroupsOptionsTest { + @SuppressWarnings({"deprecation", "removal"}) @Test public void testState() { Set consumerGroupStates = Set.of(ConsumerGroupState.values()); diff --git a/clients/src/test/java/org/apache/kafka/clients/admin/ListGroupsOptionsTest.java b/clients/src/test/java/org/apache/kafka/clients/admin/ListGroupsOptionsTest.java index 360da83b8da57..6b5e81a930ad9 100644 --- a/clients/src/test/java/org/apache/kafka/clients/admin/ListGroupsOptionsTest.java +++ b/clients/src/test/java/org/apache/kafka/clients/admin/ListGroupsOptionsTest.java @@ -86,6 +86,16 @@ public void testGroupStates() { assertEquals(groupStates, options.groupStates()); } + @Test + public void testConsumerGroupStates() { + ListGroupsOptions options = new ListGroupsOptions(); + assertTrue(options.groupStates().isEmpty()); + + Set groupStates = GroupState.groupStatesForType(GroupType.CONSUMER); + options = new ListGroupsOptions().inGroupStates(groupStates); + assertEquals(groupStates, options.groupStates()); + } + @Test public void testProtocolTypes() { ListGroupsOptions options = new ListGroupsOptions(); diff --git a/clients/src/test/java/org/apache/kafka/clients/admin/internals/DescribeConsumerGroupsHandlerTest.java b/clients/src/test/java/org/apache/kafka/clients/admin/internals/DescribeConsumerGroupsHandlerTest.java index b91d2f954717f..8b92b429ac4b1 100644 --- a/clients/src/test/java/org/apache/kafka/clients/admin/internals/DescribeConsumerGroupsHandlerTest.java +++ b/clients/src/test/java/org/apache/kafka/clients/admin/internals/DescribeConsumerGroupsHandlerTest.java @@ -266,6 +266,7 @@ public void testSuccessfulHandleConsumerGroupResponse() { assertCompleted(result, expected); } + @SuppressWarnings({"deprecation", "removal"}) @Test public void testSuccessfulHandleClassicGroupResponse() { Collection members = singletonList(new MemberDescription( @@ -346,7 +347,7 @@ private DescribeGroupsResponse buildResponse(Errors error, String protocolType) new DescribedGroup() .setErrorCode(error.code()) .setGroupId(groupId1) - .setGroupState(ConsumerGroupState.STABLE.toString()) + .setGroupState(GroupState.STABLE.toString()) .setProtocolType(protocolType) .setProtocolData("assignor") .setAuthorizedOperations(Utils.to32BitField(emptySet())) diff --git a/clients/src/test/java/org/apache/kafka/common/requests/RequestResponseTest.java b/clients/src/test/java/org/apache/kafka/common/requests/RequestResponseTest.java index 9b0a75506da4c..0d822453f139b 100644 --- a/clients/src/test/java/org/apache/kafka/common/requests/RequestResponseTest.java +++ b/clients/src/test/java/org/apache/kafka/common/requests/RequestResponseTest.java @@ -16,7 +16,6 @@ */ package org.apache.kafka.common.requests; -import org.apache.kafka.common.ConsumerGroupState; import org.apache.kafka.common.ElectionType; import org.apache.kafka.common.GroupState; import org.apache.kafka.common.IsolationLevel; @@ -810,7 +809,7 @@ public void testValidApiVersionsRequest() { @Test public void testListGroupRequestV3FailsWithStates() { ListGroupsRequestData data = new ListGroupsRequestData() - .setStatesFilter(singletonList(ConsumerGroupState.STABLE.name())); + .setStatesFilter(singletonList(GroupState.STABLE.name())); assertThrows(UnsupportedVersionException.class, () -> new ListGroupsRequest.Builder(data).build((short) 3)); } @@ -1189,7 +1188,7 @@ private ConsumerGroupDescribeResponse createConsumerGroupDescribeResponse() { .setGroupId("group") .setErrorCode((short) 0) .setErrorMessage(Errors.forCode((short) 0).message()) - .setGroupState(ConsumerGroupState.EMPTY.toString()) + .setGroupState(GroupState.EMPTY.toString()) .setGroupEpoch(0) .setAssignmentEpoch(0) .setAssignorName("range") diff --git a/group-coordinator/group-coordinator-api/src/main/java/org/apache/kafka/coordinator/group/api/assignor/ShareGroupPartitionAssignor.java b/group-coordinator/group-coordinator-api/src/main/java/org/apache/kafka/coordinator/group/api/assignor/ShareGroupPartitionAssignor.java index 73eb863ab15bd..b285c76a43276 100644 --- a/group-coordinator/group-coordinator-api/src/main/java/org/apache/kafka/coordinator/group/api/assignor/ShareGroupPartitionAssignor.java +++ b/group-coordinator/group-coordinator-api/src/main/java/org/apache/kafka/coordinator/group/api/assignor/ShareGroupPartitionAssignor.java @@ -16,11 +16,8 @@ */ package org.apache.kafka.coordinator.group.api.assignor; -import org.apache.kafka.common.annotation.InterfaceStability; - /** * Server-side partition assignor for share groups used by the GroupCoordinator. */ -@InterfaceStability.Unstable public interface ShareGroupPartitionAssignor extends PartitionAssignor { }