Skip to content

Commit

Permalink
added test for describe/alter topic config
Browse files Browse the repository at this point in the history
  • Loading branch information
terjesannum committed Oct 24, 2018
1 parent cdf39ca commit 256805c
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 2 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# kafka-adminclient-test

Simple test of Kafka AdminClient (create topic)
Simple test of Kafka AdminClient (create topic, describe/alter config)

Run with:
```
Expand Down
26 changes: 25 additions & 1 deletion src/main/java/TopicTest.java
Original file line number Diff line number Diff line change
@@ -1,26 +1,50 @@
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
import org.apache.kafka.clients.admin.AdminClient;
import org.apache.kafka.clients.admin.AdminClientConfig;
import org.apache.kafka.clients.admin.AlterConfigsResult;
import org.apache.kafka.clients.admin.Config;
import org.apache.kafka.clients.admin.ConfigEntry;
import org.apache.kafka.common.config.ConfigResource;
import org.apache.kafka.clients.admin.CreateTopicsResult;
import org.apache.kafka.clients.admin.DescribeConfigsResult;
import org.apache.kafka.clients.admin.DescribeTopicsResult;
import org.apache.kafka.clients.admin.KafkaAdminClient;
import org.apache.kafka.clients.admin.NewTopic;
import org.apache.kafka.common.config.TopicConfig;

public class TopicTest {

public static void main(String args[]) throws Exception {
String bootstrap = args[0];
String topic = args[1];
System.out.println("Creating topic "+topic+" on "+bootstrap);
Properties config = new Properties();
config.put(AdminClientConfig.BOOTSTRAP_SERVERS_CONFIG, bootstrap);
config.put(AdminClientConfig.CLIENT_ID_CONFIG, "topics-test");
config.put(AdminClientConfig.SECURITY_PROTOCOL_CONFIG, "SASL_SSL");
config.put("sasl.mechanism", "PLAIN");
AdminClient admin = KafkaAdminClient.create(config);

System.out.println("Creating topic "+topic+" on "+bootstrap);
NewTopic newTopic = new NewTopic(topic, 1, (short)1);
CreateTopicsResult result = admin.createTopics(Collections.singleton(newTopic));
result.values().get(topic).get();

ConfigResource topicResource = new ConfigResource(ConfigResource.Type.TOPIC, topic);

System.out.println("Getting topic "+topic+" configuration");
DescribeConfigsResult describeResult = admin.describeConfigs(Collections.singleton(topicResource));
Map<ConfigResource, Config> topicConfig = describeResult.all().get();
System.out.println(config);

System.out.println("Modifying topic "+topic+" configuration");
ConfigEntry retentionEntry = new ConfigEntry(TopicConfig.RETENTION_MS_CONFIG, "12345");
Map<ConfigResource, Config> updateConfig = new HashMap<ConfigResource, Config>();
updateConfig.put(topicResource, new Config(Collections.singleton(retentionEntry)));
AlterConfigsResult alterResult = admin.alterConfigs(updateConfig);
alterResult.all().get();
}

}

0 comments on commit 256805c

Please sign in to comment.