This is an automated email from the ASF dual-hosted git repository.
chia7712 pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/kafka.git
The following commit(s) were added to refs/heads/trunk by this push:
new c254b22a487 MINOR: simplify ensure topic exists condition (#15458)
c254b22a487 is described below
commit c254b22a4877e70617b2710b95ef44b8cc55ce97
Author: PoAn Yang <[email protected]>
AuthorDate: Mon Mar 4 19:50:56 2024 +0800
MINOR: simplify ensure topic exists condition (#15458)
Reviewers: Chia-Ping Tsai <[email protected]>
---
tools/src/main/java/org/apache/kafka/tools/TopicCommand.java | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/tools/src/main/java/org/apache/kafka/tools/TopicCommand.java
b/tools/src/main/java/org/apache/kafka/tools/TopicCommand.java
index 043ae521f5b..66650cb9db5 100644
--- a/tools/src/main/java/org/apache/kafka/tools/TopicCommand.java
+++ b/tools/src/main/java/org/apache/kafka/tools/TopicCommand.java
@@ -208,9 +208,9 @@ public abstract class TopicCommand {
* If set to true, the command will throw an
exception if the topic with the
* requested name does not exist.
*/
- private static void ensureTopicExists(List<String> foundTopics, String
requestedTopic, Boolean requireTopicExists) {
+ private static void ensureTopicExists(List<String> foundTopics,
Optional<String> requestedTopic, Boolean requireTopicExists) {
// If no topic name was mentioned, do not need to throw exception.
- if (!(requestedTopic.isEmpty() ||
!Optional.ofNullable(requestedTopic).isPresent()) && requireTopicExists &&
foundTopics.isEmpty()) {
+ if (requestedTopic.isPresent() && !requestedTopic.get().isEmpty() &&
requireTopicExists && foundTopics.isEmpty()) {
// If given topic doesn't exist then throw exception
throw new IllegalArgumentException(String.format("Topic '%s' does
not exist as expected", requestedTopic));
}
@@ -490,7 +490,7 @@ public abstract class TopicCommand {
public void alterTopic(TopicCommandOptions opts) throws
ExecutionException, InterruptedException {
CommandTopicPartition topic = new CommandTopicPartition(opts);
List<String> topics = getTopics(opts.topic(),
opts.excludeInternalTopics());
- ensureTopicExists(topics, opts.topic().orElse(""),
!opts.ifExists());
+ ensureTopicExists(topics, opts.topic(), !opts.ifExists());
if (!topics.isEmpty()) {
Map<String,
KafkaFuture<org.apache.kafka.clients.admin.TopicDescription>> topicsInfo =
adminClient.describeTopics(topics).topicNameValues();
@@ -556,7 +556,7 @@ public abstract class TopicCommand {
if (useTopicId) {
ensureTopicIdExists(topicIds, inputTopicId.get(),
!opts.ifExists());
} else {
- ensureTopicExists(topics, opts.topic().orElse(""),
!opts.ifExists());
+ ensureTopicExists(topics, opts.topic(), !opts.ifExists());
}
List<org.apache.kafka.clients.admin.TopicDescription>
topicDescriptions = new ArrayList<>();
@@ -632,7 +632,7 @@ public abstract class TopicCommand {
public void deleteTopic(TopicCommandOptions opts) throws
ExecutionException, InterruptedException {
List<String> topics = getTopics(opts.topic(),
opts.excludeInternalTopics());
- ensureTopicExists(topics, opts.topic().orElse(""),
!opts.ifExists());
+ ensureTopicExists(topics, opts.topic(), !opts.ifExists());
adminClient.deleteTopics(Collections.unmodifiableList(topics),
new DeleteTopicsOptions().retryOnQuotaViolation(false)
).all().get();