Skip to content

Commit 5c8a486

Browse files
committed
feat: add new stages for creating topics in CreateTopics API
Introduce multiple new stages for the CreateTopics API, focusing on various scenarios such as creating topics with valid, invalid, reserved, and existing names, as well as validation-only mode and batch creation. This update enhances the documentation and provides clear guidelines for implementing the CreateTopics functionality.
1 parent c4872c3 commit 5c8a486

File tree

1 file changed

+60
-1
lines changed

1 file changed

+60
-1
lines changed

course-definition.yml

Lines changed: 60 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,15 @@ extensions:
8080
8181
[produce-api]: https://kafka.apache.org/protocol.html#The_Messages_Produce
8282
83+
- slug: "creating-topics"
84+
name: "Creating Topics"
85+
description_markdown: |
86+
In this challenge extension you'll add support for creating topics by implementing the [CreateTopics][create-topics-api] API.
87+
88+
Along the way you'll learn about how Kafka's CreateTopics API works, topic validation, the `__cluster_metadata` topic and more.
89+
90+
[create-topics-api]: https://kafka.apache.org/protocol.html#The_Messages_CreateTopics
91+
8392
stages:
8493
- slug: "vi6"
8594
name: "Bind to a port"
@@ -259,4 +268,54 @@ stages:
259268
difficulty: hard
260269
marketing_md: |-
261270
In this stage, you'll implement producing to multiple topics in a single request.
262-
Stages:
271+
272+
# Creating Topics
273+
274+
- slug: "yb1"
275+
primary_extension_slug: "creating-topics"
276+
name: "Include CreateTopics in APIVersions"
277+
difficulty: easy
278+
marketing_md: |-
279+
In this stage, you'll add the CreateTopics API to the APIVersions response.
280+
281+
- slug: "ve7"
282+
primary_extension_slug: "creating-topics"
283+
name: "CreateTopics with Invalid Topic Name"
284+
difficulty: medium
285+
marketing_md: |-
286+
In this stage, you'll implement the CreateTopics response for invalid topic names.
287+
288+
- slug: "cb8"
289+
primary_extension_slug: "creating-topics"
290+
name: "CreateTopics with Reserved Topic Name"
291+
difficulty: medium
292+
marketing_md: |-
293+
In this stage, you'll implement the CreateTopics response for reserved topic names.
294+
295+
- slug: "us2"
296+
primary_extension_slug: "creating-topics"
297+
name: "CreateTopics with Existing Topic Name"
298+
difficulty: medium
299+
marketing_md: |-
300+
In this stage, you'll implement the CreateTopics response for existing topic names.
301+
302+
- slug: "hh9"
303+
primary_extension_slug: "creating-topics"
304+
name: "CreateTopics with Validation Only"
305+
difficulty: medium
306+
marketing_md: |-
307+
In this stage, you'll implement the CreateTopics response for validation-only mode.
308+
309+
- slug: "rk2"
310+
primary_extension_slug: "creating-topics"
311+
name: "CreateTopics with a single topic"
312+
difficulty: hard
313+
marketing_md: |-
314+
In this stage, you'll implement creating a single topic.
315+
316+
- slug: "fl3"
317+
primary_extension_slug: "creating-topics"
318+
name: "CreateTopics with Multiple Topics"
319+
difficulty: hard
320+
marketing_md: |-
321+
In this stage, you'll implement creating multiple topics in a single request.

0 commit comments

Comments
 (0)