├── .github └── workflows │ ├── ci.yml │ ├── release.yaml │ └── test.yaml ├── .gitignore ├── CONTRIBUTING.md ├── LICENSE ├── Makefile ├── README.md ├── S3_CONFIGURATION_EXAMPLE.md ├── docker-compose ├── README.md ├── descriptors │ └── test_descriptors.desc ├── docker-compose.yml ├── scripts │ ├── create_topics.sh │ └── send_test_message.sh ├── start-integration-test.sh ├── start-s3-integration-test.sh ├── start-s3-topic-mapping-test.sh ├── test-s3-integration.sh ├── test-s3-topic-mapping-integration.sh └── topic-mappings │ └── topic-mappings.json ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── images └── demo_serde.gif ├── settings.gradle └── src ├── main └── java │ └── io │ └── github │ └── hursungyun │ └── kafbat │ └── ui │ └── serde │ ├── ProtobufDescriptorSetSerde.java │ ├── auth │ ├── MinioClientFactory.java │ ├── S3Configuration.java │ └── S3CredentialsProvider.java │ ├── scheduler │ └── DescriptorRefreshScheduler.java │ ├── serialization │ ├── ProtobufDeserializer.java │ ├── ProtobufMessageValidator.java │ └── ProtobufSerializer.java │ ├── sources │ ├── DescriptorSource.java │ ├── DescriptorSourceFactory.java │ ├── LocalFileDescriptorSource.java │ ├── S3DescriptorSource.java │ └── S3TopicMappingSource.java │ └── util │ └── MappingComparator.java └── test ├── java └── io │ └── github │ └── hursungyun │ └── kafbat │ └── ui │ └── serde │ ├── GoogleWellKnownTypesTest.java │ ├── IntegrationTest.java │ ├── NestedMessagesTest.java │ ├── OneOfTest.java │ ├── PerformanceAndRegressionTest.java │ ├── ProtobufDescriptorSetSerdeS3IntegrationTest.java │ ├── ProtobufDescriptorSetSerdeTest.java │ ├── SerializationTest.java │ ├── TestUtils.java │ ├── ValidatorTest.java │ ├── auth │ ├── MinioClientFactoryTest.java │ ├── S3ConfigurationTest.java │ └── S3CredentialsProviderTest.java │ ├── scheduler │ └── DescriptorRefreshSchedulerTest.java │ ├── sources │ ├── DescriptorSourceFactoryTest.java │ ├── S3DescriptorSourceTest.java │ └── S3TopicMappingSourceTest.java │ └── util │ └── MappingComparatorTest.java ├── proto ├── nested.proto ├── order.proto ├── user.proto ├── validator_test.proto └── wkt.proto └── resources └── test_descriptors.desc /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.github/workflows/release.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/.github/workflows/release.yaml -------------------------------------------------------------------------------- /.github/workflows/test.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/.github/workflows/test.yaml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/.gitignore -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/README.md -------------------------------------------------------------------------------- /S3_CONFIGURATION_EXAMPLE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/S3_CONFIGURATION_EXAMPLE.md -------------------------------------------------------------------------------- /docker-compose/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/docker-compose/README.md -------------------------------------------------------------------------------- /docker-compose/descriptors/test_descriptors.desc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/docker-compose/descriptors/test_descriptors.desc -------------------------------------------------------------------------------- /docker-compose/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/docker-compose/docker-compose.yml -------------------------------------------------------------------------------- /docker-compose/scripts/create_topics.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/docker-compose/scripts/create_topics.sh -------------------------------------------------------------------------------- /docker-compose/scripts/send_test_message.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/docker-compose/scripts/send_test_message.sh -------------------------------------------------------------------------------- /docker-compose/start-integration-test.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/docker-compose/start-integration-test.sh -------------------------------------------------------------------------------- /docker-compose/start-s3-integration-test.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/docker-compose/start-s3-integration-test.sh -------------------------------------------------------------------------------- /docker-compose/start-s3-topic-mapping-test.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/docker-compose/start-s3-topic-mapping-test.sh -------------------------------------------------------------------------------- /docker-compose/test-s3-integration.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/docker-compose/test-s3-integration.sh -------------------------------------------------------------------------------- /docker-compose/test-s3-topic-mapping-integration.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/docker-compose/test-s3-topic-mapping-integration.sh -------------------------------------------------------------------------------- /docker-compose/topic-mappings/topic-mappings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/docker-compose/topic-mappings/topic-mappings.json -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/gradlew.bat -------------------------------------------------------------------------------- /images/demo_serde.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/images/demo_serde.gif -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'kafbat-ui-serde-protobuf-descriptor' -------------------------------------------------------------------------------- /src/main/java/io/github/hursungyun/kafbat/ui/serde/ProtobufDescriptorSetSerde.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/main/java/io/github/hursungyun/kafbat/ui/serde/ProtobufDescriptorSetSerde.java -------------------------------------------------------------------------------- /src/main/java/io/github/hursungyun/kafbat/ui/serde/auth/MinioClientFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/main/java/io/github/hursungyun/kafbat/ui/serde/auth/MinioClientFactory.java -------------------------------------------------------------------------------- /src/main/java/io/github/hursungyun/kafbat/ui/serde/auth/S3Configuration.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/main/java/io/github/hursungyun/kafbat/ui/serde/auth/S3Configuration.java -------------------------------------------------------------------------------- /src/main/java/io/github/hursungyun/kafbat/ui/serde/auth/S3CredentialsProvider.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/main/java/io/github/hursungyun/kafbat/ui/serde/auth/S3CredentialsProvider.java -------------------------------------------------------------------------------- /src/main/java/io/github/hursungyun/kafbat/ui/serde/scheduler/DescriptorRefreshScheduler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/main/java/io/github/hursungyun/kafbat/ui/serde/scheduler/DescriptorRefreshScheduler.java -------------------------------------------------------------------------------- /src/main/java/io/github/hursungyun/kafbat/ui/serde/serialization/ProtobufDeserializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/main/java/io/github/hursungyun/kafbat/ui/serde/serialization/ProtobufDeserializer.java -------------------------------------------------------------------------------- /src/main/java/io/github/hursungyun/kafbat/ui/serde/serialization/ProtobufMessageValidator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/main/java/io/github/hursungyun/kafbat/ui/serde/serialization/ProtobufMessageValidator.java -------------------------------------------------------------------------------- /src/main/java/io/github/hursungyun/kafbat/ui/serde/serialization/ProtobufSerializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/main/java/io/github/hursungyun/kafbat/ui/serde/serialization/ProtobufSerializer.java -------------------------------------------------------------------------------- /src/main/java/io/github/hursungyun/kafbat/ui/serde/sources/DescriptorSource.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/main/java/io/github/hursungyun/kafbat/ui/serde/sources/DescriptorSource.java -------------------------------------------------------------------------------- /src/main/java/io/github/hursungyun/kafbat/ui/serde/sources/DescriptorSourceFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/main/java/io/github/hursungyun/kafbat/ui/serde/sources/DescriptorSourceFactory.java -------------------------------------------------------------------------------- /src/main/java/io/github/hursungyun/kafbat/ui/serde/sources/LocalFileDescriptorSource.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/main/java/io/github/hursungyun/kafbat/ui/serde/sources/LocalFileDescriptorSource.java -------------------------------------------------------------------------------- /src/main/java/io/github/hursungyun/kafbat/ui/serde/sources/S3DescriptorSource.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/main/java/io/github/hursungyun/kafbat/ui/serde/sources/S3DescriptorSource.java -------------------------------------------------------------------------------- /src/main/java/io/github/hursungyun/kafbat/ui/serde/sources/S3TopicMappingSource.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/main/java/io/github/hursungyun/kafbat/ui/serde/sources/S3TopicMappingSource.java -------------------------------------------------------------------------------- /src/main/java/io/github/hursungyun/kafbat/ui/serde/util/MappingComparator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/main/java/io/github/hursungyun/kafbat/ui/serde/util/MappingComparator.java -------------------------------------------------------------------------------- /src/test/java/io/github/hursungyun/kafbat/ui/serde/GoogleWellKnownTypesTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/java/io/github/hursungyun/kafbat/ui/serde/GoogleWellKnownTypesTest.java -------------------------------------------------------------------------------- /src/test/java/io/github/hursungyun/kafbat/ui/serde/IntegrationTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/java/io/github/hursungyun/kafbat/ui/serde/IntegrationTest.java -------------------------------------------------------------------------------- /src/test/java/io/github/hursungyun/kafbat/ui/serde/NestedMessagesTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/java/io/github/hursungyun/kafbat/ui/serde/NestedMessagesTest.java -------------------------------------------------------------------------------- /src/test/java/io/github/hursungyun/kafbat/ui/serde/OneOfTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/java/io/github/hursungyun/kafbat/ui/serde/OneOfTest.java -------------------------------------------------------------------------------- /src/test/java/io/github/hursungyun/kafbat/ui/serde/PerformanceAndRegressionTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/java/io/github/hursungyun/kafbat/ui/serde/PerformanceAndRegressionTest.java -------------------------------------------------------------------------------- /src/test/java/io/github/hursungyun/kafbat/ui/serde/ProtobufDescriptorSetSerdeS3IntegrationTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/java/io/github/hursungyun/kafbat/ui/serde/ProtobufDescriptorSetSerdeS3IntegrationTest.java -------------------------------------------------------------------------------- /src/test/java/io/github/hursungyun/kafbat/ui/serde/ProtobufDescriptorSetSerdeTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/java/io/github/hursungyun/kafbat/ui/serde/ProtobufDescriptorSetSerdeTest.java -------------------------------------------------------------------------------- /src/test/java/io/github/hursungyun/kafbat/ui/serde/SerializationTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/java/io/github/hursungyun/kafbat/ui/serde/SerializationTest.java -------------------------------------------------------------------------------- /src/test/java/io/github/hursungyun/kafbat/ui/serde/TestUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/java/io/github/hursungyun/kafbat/ui/serde/TestUtils.java -------------------------------------------------------------------------------- /src/test/java/io/github/hursungyun/kafbat/ui/serde/ValidatorTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/java/io/github/hursungyun/kafbat/ui/serde/ValidatorTest.java -------------------------------------------------------------------------------- /src/test/java/io/github/hursungyun/kafbat/ui/serde/auth/MinioClientFactoryTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/java/io/github/hursungyun/kafbat/ui/serde/auth/MinioClientFactoryTest.java -------------------------------------------------------------------------------- /src/test/java/io/github/hursungyun/kafbat/ui/serde/auth/S3ConfigurationTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/java/io/github/hursungyun/kafbat/ui/serde/auth/S3ConfigurationTest.java -------------------------------------------------------------------------------- /src/test/java/io/github/hursungyun/kafbat/ui/serde/auth/S3CredentialsProviderTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/java/io/github/hursungyun/kafbat/ui/serde/auth/S3CredentialsProviderTest.java -------------------------------------------------------------------------------- /src/test/java/io/github/hursungyun/kafbat/ui/serde/scheduler/DescriptorRefreshSchedulerTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/java/io/github/hursungyun/kafbat/ui/serde/scheduler/DescriptorRefreshSchedulerTest.java -------------------------------------------------------------------------------- /src/test/java/io/github/hursungyun/kafbat/ui/serde/sources/DescriptorSourceFactoryTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/java/io/github/hursungyun/kafbat/ui/serde/sources/DescriptorSourceFactoryTest.java -------------------------------------------------------------------------------- /src/test/java/io/github/hursungyun/kafbat/ui/serde/sources/S3DescriptorSourceTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/java/io/github/hursungyun/kafbat/ui/serde/sources/S3DescriptorSourceTest.java -------------------------------------------------------------------------------- /src/test/java/io/github/hursungyun/kafbat/ui/serde/sources/S3TopicMappingSourceTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/java/io/github/hursungyun/kafbat/ui/serde/sources/S3TopicMappingSourceTest.java -------------------------------------------------------------------------------- /src/test/java/io/github/hursungyun/kafbat/ui/serde/util/MappingComparatorTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/java/io/github/hursungyun/kafbat/ui/serde/util/MappingComparatorTest.java -------------------------------------------------------------------------------- /src/test/proto/nested.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/proto/nested.proto -------------------------------------------------------------------------------- /src/test/proto/order.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/proto/order.proto -------------------------------------------------------------------------------- /src/test/proto/user.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/proto/user.proto -------------------------------------------------------------------------------- /src/test/proto/validator_test.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/proto/validator_test.proto -------------------------------------------------------------------------------- /src/test/proto/wkt.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/proto/wkt.proto -------------------------------------------------------------------------------- /src/test/resources/test_descriptors.desc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HurSungYun/kafbat-ui-serde-protobuf-descriptor/HEAD/src/test/resources/test_descriptors.desc --------------------------------------------------------------------------------