Skip to content

Add C# Proof-of-Concept Port of Core Kafka Client Classes#34

Open
cto-new[bot] wants to merge 1 commit into
trunkfrom
convert-codebase-to-csharp
Open

Add C# Proof-of-Concept Port of Core Kafka Client Classes#34
cto-new[bot] wants to merge 1 commit into
trunkfrom
convert-codebase-to-csharp

Conversation

@cto-new

@cto-new cto-new Bot commented Jun 9, 2025

Copy link
Copy Markdown

Summary

This PR introduces a proof-of-concept C#/.NET port of key Apache Kafka client classes, demonstrating a modern .NET approach and project structure for a potential full conversion.

Details

  • Added .NET solution and projects for Kafka.Common, Kafka.Clients, Kafka.Core, Kafka.Streams, and Kafka.Tests.
  • Converted core Java client classes: ClientRequest, ClientResponse, IRequestCompletionHandler, and related protocol/exception types to C#.
  • Implemented an idiomatic generic IProducer<TKey, TValue> interface, ProducerRecord, and RecordMetadata for .NET.
  • Included a sample application (SimpleProducer) demonstrating API usage (interface only).
  • Added xUnit tests for ClientRequest class to verify correctness.
  • Provided a comprehensive README-CSHARP-PORT.md explaining the proof-of-concept, architecture decisions, and the challenges of a full conversion.
  • Ensured the project builds and passes all unit tests on .NET 8.0.

Warning: Task VM test is not passing, Engine will perform much better if you fix the setup

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants