Skip to content

chore(deps): Bump io-swagger-core-v3 from 2.2.40 to 2.2.41 #3520

chore(deps): Bump io-swagger-core-v3 from 2.2.40 to 2.2.41

chore(deps): Bump io-swagger-core-v3 from 2.2.40 to 2.2.41 #3520

Triggered via pull request December 20, 2025 17:59
Status Success
Total duration 2m 7s
Artifacts

springwolf-core.yml

on: pull_request
Fit to window
Zoom out
Zoom in

Annotations

8 errors
ApiIntegrationTest.asyncApiResourceForVehicleGroupArtifactTest(): springwolf-examples/springwolf-amqp-example/src/test/java/io/github/springwolf/examples/amqp/ApiIntegrationTest.java#L69
org.opentest4j.AssertionFailedError: expected: "{ "asyncapi": "3.0.0", "info": { "title": "Springwolf example project - Kafka", "version": "1.0.0", "description": "This group only contains endpoints that are related to vehicles.", "termsOfService": "http://asyncapi.org/terms", "contact": { "name": "springwolf", "url": "https://github.com/springwolf/springwolf-core", "email": "example@example.com" }, "license": { "name": "Apache License 2.0" }, "x-apitype": "internal", "x-generator": "springwolf" }, "defaultContentType": "application/json", "servers": { "kafka-server": { "host": "kafka:29092", "protocol": "kafka" } }, "channels": { "vehicle-topic": { "address": "vehicle-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } } }, "components": { "schemas": { "SpringKafkaDefaultHeaders-VehicleBase": { "title": "SpringKafkaDefaultHeaders-VehicleBase", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-VehicleBase", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.EnginePower": { "title": "EnginePower", "type": "object", "properties": { "hp": { "type": "integer", "format": "int32" }, "torque": { "type": "integer", "format": "int32" } }, "examples": [ { "hp": 0, "torque": 0 } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "hp": { "format": "int32", "type": "integer" }, "torque": { } }, "title": "EnginePower", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase": { "discriminator": "vehicleType", "title": "VehicleBase", "type": "object", "properties": { "enginePower": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.EnginePower" }, "powerSource": { "type": "string" }, "topSpeed": { "type": "integer", "format": "int32" }, "vehicleType": { "type": "string" } }, "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "examples": [ { "batteryCapacity": 0, "chargeTime": 0, "enginePower": { "hp": 0, "torque": 0 }, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } ], "oneOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto" }, { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "oneOf": [ { "allOf": [ { }, { "properties": { "batteryCapacity": { }, "chargeTime": { "format": "int32", "type": "integer" } }, "type": "object" } ], "description": "Electric vehicle implementation of VehicleBase", "type": "object" }, { "allOf": [ { }, { "properties": { "fuelCapacity": { } }, "type": "object" } ], "description": "Gasoline vehicle implementation of VehicleBase", "type": "object" } ], "properties": { "enginePower": { "properties": { "hp": { }, "torque": { } }, "title": "EnginePower", "type": "object" }, "powerSource": { "type": "string" }, "topSpeed": { }, "vehicleType": { } }, "title": "VehicleBase", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto": { "type": "object", "description": "Electric vehicle implementation of VehicleBase", "examples": [ { "batteryCapacity": 0, "chargeTime": 0, "enginePower": { "hp": 0, "torque": 0 }, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } ], "allOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" }, { "type": "object", "properties": { "batteryCapacity": { "type": "integer", "format": "int32" }, "chargeTime": { "type": "integer", "format": "int32" } } } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "allOf": [ { "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "oneOf": [ { }, { "allOf": [ { }, { "properties": { "fuelCapacity": { "format": "int32", "type": "integer" } }, "type": "object" } ], "description": "Gasoline vehicle implementation of VehicleBase", "type": "object" } ], "properties": { "enginePower": { "properties": { "hp": { }, "torque": { } }, "title": "EnginePower", "type": "object" }, "powerSource": { "type": "string" }, "topSpeed": { }, "vehicleType": { } }, "title": "VehicleBase", "type": "object" }, { "properties": { "batteryCapacity": { }, "chargeTime": { } }, "type": "object" } ], "description": "Electric vehicle implementation of VehicleBase", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto": { "type": "object", "description": "Gasoline vehicle implementation of VehicleBase", "examples": [ { "enginePower": { "hp": 0, "torque": 0 }, "fuelCapacity": 0, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } ], "allOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" }, { "type": "object", "properties": { "fuelCapacity": { "type": "integer", "format": "int32" } } } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "allOf": [ { "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "oneOf": [ { "allOf": [ { }, { "properties": { "batteryCapacity": { }, "chargeTime": { "format": "int32", "type": "integer" } }, "type": "object" } ], "description": "Electric vehicle implementation of VehicleBase", "type": "object" }, { } ], "properties": { "enginePower": { "properties": { "hp": { }, "torque": { } }, "title": "EnginePower", "type": "object" }, "powerSource": { "type": "string" }, "topSpeed": { }, "vehicleType": { } }, "title": "VehicleBase", "type": "object" }, { "properties": { "fuelCapacity": { } }, "type": "object" } ], "description": "Gasoline vehicle implementation of VehicleBase", "type": "object" } } }, "messages": { "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-VehicleBase" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } }, "name": "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase", "title": "VehicleBase", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } } } }, "operations": { "vehicle-topic_receive_receiveExamplePayload": { "action": "receive", "channel": { "$ref": "#/channels/vehicle-topic" }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } }, "messages": [ { "$ref": "#/channels/vehicle-topic/messages/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } ] } } }" but was: "{ "asyncapi": "3.0.0", "info": { "title": "Springwolf example project - Kafka", "version": "1.0.0", "description": "This group only contains endpoints that are related to vehicles.", "termsOfService": "http://asyncapi.org/terms", "contact": { "name": "springwolf", "url": "https://github.com/springwolf/springwolf-core", "email": "example@example.com" }, "license": { "name": "Apache License 2.0" }, "x-apitype": "internal", "x-generator": "springwolf" }, "defaultContentType": "application/json", "servers": { "kafka-server": { "host": "kafka:29092", "protocol": "kafka" } }, "channels": { "vehicle-topic": { "address": "vehicle-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } } }, "components": { "schemas": { "SpringKafkaDefaultHeaders-VehicleBase": { "title": "SpringKafkaDefaultHeaders-VehicleBase", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-VehicleBase", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.EnginePower": { "type": "object", "properties": { "hp": { "type": "integer", "format": "int32" }, "torque": { "type": "integer", "format": "int32" } }, "examples": [ { "hp": 0, "torque": 0 } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "hp": { "format": "int32", "type": "integer" }, "torque": { } }, "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase": { "discriminator": "vehicleType", "title": "VehicleBase", "type": "object", "properties": { "enginePower": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.EnginePower" }, "powerSource": { "type": "string" }, "topSpeed": { "type": "integer", "format": "int32" }, "vehicleType": { "type": "string" } }, "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "examples": [ { "batteryCapacity": 0, "chargeTime": 0, "enginePower": { "hp": 0, "torque": 0 }, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } ], "oneOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto" }, { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "oneOf": [ { "allOf": [ { }, { "properties": { "batteryCapacity": { }, "chargeTime": { "format": "int32", "type": "integer" } }, "type": "object" } ], "description": "Electric vehicle implementation of VehicleBase", "type": "object" }, { "allOf": [ { }, { "properties": { "fuelCapacity": { } }, "type": "object" } ], "description": "Gasoline vehicle implementation of VehicleBase", "type": "object" } ], "properties": { "enginePower": { "properties": { "hp": { }, "torque": { } }, "type": "object" }, "powerSource": { "type": "string" }, "topSpeed": { }, "vehicleType": { } }, "title": "VehicleBase", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto": { "type": "object", "description": "Electric vehicle implementation of VehicleBase", "examples": [ { "batteryCapacity": 0, "chargeTime": 0, "enginePower": { "hp": 0, "torque": 0 }, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } ], "allOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" }, { "type": "object", "properties": { "batteryCapacity": { "type": "integer", "format": "int32" }, "chargeTime": { "type": "integer", "format": "int32" } } } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "allOf": [ { "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "oneOf": [ { }, { "allOf": [ { }, { "properties": { "fuelCapacity": { "format": "int32", "type": "integer" } }, "type": "object" } ], "description": "Gasoline vehicle implementation of VehicleBase", "type": "object" } ], "properties": { "enginePower": { "properties": { "hp": { }, "torque": { } }, "type": "object" }, "powerSource": { "type": "string" }, "topSpeed": { }, "vehicleType": { } }, "title": "VehicleBase", "type": "object" }, { "properties": { "batteryCapacity": { }, "chargeTime": { } }, "type": "object" } ], "description": "Electric vehicle implementation of VehicleBase", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto": { "type": "object", "description": "Gasoline vehicle implementation of VehicleBase", "examples": [ { "enginePower": { "hp": 0, "torque": 0 }, "fuelCapacity": 0, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } ], "allOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" }, { "type": "object", "properties": { "fuelCapacity": { "type": "integer", "format": "int32" } } } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "allOf": [ { "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "oneOf": [ { "allOf": [ { }, { "properties": { "batteryCapacity": { }, "chargeTime": { "format": "int32", "type": "integer" } }, "type": "object" } ], "description": "Electric vehicle implementation of VehicleBase", "type": "object" }, { } ], "properties": { "enginePower": { "properties": { "hp": { }, "torque": { } }, "type": "object" }, "powerSource": { "type": "string" }, "topSpeed": { }, "vehicleType": { } }, "title": "VehicleBase", "type": "object" }, { "properties": { "fuelCapacity": { } }, "type": "object" } ], "description": "Gasoline vehicle implementation of VehicleBase", "type": "object" } } }, "messages": { "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-VehicleBase" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } }, "name": "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase", "title": "VehicleBase", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } } } }, "operations": { "vehicle-topic_receive_receiveExamplePayload": { "action": "receive", "channel": { "$ref": "#/channels/vehicle-topic" }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } }, "messages": [ { "$ref": "#/channels/vehicle-topic/messages/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } ] } } }"
ApiIntegrationTest.asyncApiResourceArtifactTest(): springwolf-examples/springwolf-amqp-example/src/test/java/io/github/springwolf/examples/amqp/ApiIntegrationTest.java#L41
org.opentest4j.AssertionFailedError: expected: "{ "asyncapi": "3.0.0", "info": { "title": "Springwolf example project - Kafka", "version": "1.0.0", "description": "Springwolf [example project](https://github.com/springwolf/springwolf-core/tree/main/springwolf-examples/springwolf-kafka-example) to demonstrate springwolfs abilities, including **markdown** support for descriptions.", "termsOfService": "http://asyncapi.org/terms", "contact": { "name": "springwolf", "url": "https://github.com/springwolf/springwolf-core", "email": "example@example.com" }, "license": { "name": "Apache License 2.0" }, "x-generator": "springwolf" }, "defaultContentType": "application/json", "servers": { "kafka-server": { "host": "kafka:29092", "protocol": "kafka" } }, "channels": { "another-topic": { "address": "another-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "avro-topic": { "address": "avro-topic", "messages": { "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "example-topic": { "address": "example-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "integer-topic": { "address": "integer-topic", "messages": { "java.lang.Integer": { "$ref": "#/components/messages/java.lang.Integer" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "multi-payload-topic": { "address": "multi-payload-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" }, "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" }, "javax.money.MonetaryAmount": { "$ref": "#/components/messages/javax.money.MonetaryAmount" } }, "bindings": { "kafka": { "topic": "multi-payload-topic", "partitions": 3, "replicas": 1, "topicConfiguration": { "cleanup.policy": [ "compact", "delete" ], "retention.ms": 86400000, "retention.bytes": -1, "delete.retention.ms": 86400000, "max.message.bytes": 1048588 }, "bindingVersion": "0.5.0" } } }, "no-payload-used-topic": { "address": "no-payload-used-topic", "messages": { "PayloadNotUsed": { "$ref": "#/components/messages/PayloadNotUsed" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "nullable-topic": { "address": "nullable-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "protobuf-topic": { "address": "protobuf-topic", "messages": { "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "string-topic": { "address": "string-topic", "messages": { "io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope" }, "java.lang.String": { "$ref": "#/components/messages/java.lang.String" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "topic-defined-via-asyncPublisher-annotation": { "address": "topic-defined-via-asyncPublisher-annotation", "messages": { "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" } }, "servers": [ { "$ref": "#/servers/kafka-server" } ], "bindings": { } }, "vehicle-topic": { "address": "vehicle-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "xml-topic": { "address": "xml-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "yaml-topic": { "address": "yaml-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } } }, "components": { "schemas": { "HeadersNotDocumented": { "title": "HeadersNotDocumented", "type": "object", "properties": { }, "description": "There can be headers, but they are not explicitly documented.", "examples": [ { } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "There can be headers, but they are not explicitly documented.", "title": "HeadersNotDocumented", "type": "object" } }, "HeadersNotUsed": { "title": "HeadersNotUsed", "type": "object", "properties": { }, "description": "No headers are present.", "examples": [ { } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "No headers are present.", "title": "HeadersNotUsed", "type": "object" } }, "PayloadNotUsed": { "title": "PayloadNotUsed", "type": "object", "properties": { }, "description": "No payload specified", "examples": [ { } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "No payload specified", "title": "PayloadNotUsed", "type": "object" } }, "SpringDefaultHeaderAndCloudEvent": { "title": "SpringDefaultHeaderAndCloudEvent", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" ] }, "ce_id": { "title": "ce_id", "type": "string", "description": "CloudEvent Id Header", "enum": [ "2c60089e-6f39-459d-8ced-2d6df7e4c03a" ], "examples": [ "2c60089e-6f39-459d-8ced-2d6df7e4c03a" ] }, "ce_source": { "title": "ce_source", "type": "string", "description": "CloudEvent Source Header", "enum": [ "http://localhost" ], "examples": [ "http://localhost" ] }, "ce_specversion": { "title": "ce_specversion", "type": "string", "description": "CloudEvent Spec Version Header", "enum": [ "1.0" ], "examples": [ "1.0" ] }, "ce_subject": { "title": "ce_subject", "type": "string", "description": "CloudEvent Subject Header", "enum": [ "Springwolf example project - Kafka" ], "examples": [ "Springwolf example project - Kafka" ] }, "ce_time": { "title": "ce_time", "type": "string", "description": "CloudEvent Time Header", "enum": [ "2023-10-28 20:01:23+00:00" ], "examples": [ "2023-10-28 20:01:23+00:00" ] }, "ce_type": { "title": "ce_type", "type": "string", "description": "CloudEvent Payload Type Header", "enum": [ "NestedPayloadDto.v1" ], "examples": [ "NestedPayloadDto.v1" ] }, "content-type": { "title": "content-type", "type": "string", "description": "CloudEvent Content-Type Header", "enum": [ "application/json" ], "examples": [ "application/json" ] } }, "description": "Spring __TypeId__ and CloudEvent Headers", "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto", "ce_id": "2c60089e-6f39-459d-8ced-2d6df7e4c03a", "ce_source": "http://localhost", "ce_specversion": "1.0", "ce_subject": "Springwolf example project - Kafka", "ce_time": "2023-10-28 20:01:23+00:00", "ce_type": "NestedPayloadDto.v1", "content-type": "application/json" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Spring __TypeId__ and CloudEvent Headers", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" ], "title": "__TypeId__", "type": "string" }, "ce_id": { "description": "CloudEvent Id Header", "enum": [ "2c60089e-6f39-459d-8ced-2d6df7e4c03a" ], "title": "ce_id", "type": "string" }, "ce_source": { "description": "CloudEvent Source Header", "enum": [ "http://localhost" ], "title": "ce_source", "type": "string" }, "ce_specversion": { "description": "CloudEvent Spec Version Header", "enum": [ "1.0" ], "title": "ce_specversion", "type": "string" }, "ce_subject": { "description": "CloudEvent Subject Header", "enum": [ "Springwolf example project - Kafka" ], "title": "ce_subject", "type": "string" }, "ce_time": { "description": "CloudEvent Time Header", "enum": [ "2023-10-28 20:01:23+00:00" ], "title": "ce_time", "type": "string" }, "ce_type": { "description": "CloudEvent Payload Type Header", "enum": [ "NestedPayloadDto.v1" ], "title": "ce_type", "type": "string" }, "content-type": { "description": "CloudEvent Content-Type Header", "enum": [ "application/json" ], "title": "content-type", "type": "string" } }, "title": "SpringDefaultHeaderAndCloudEvent", "type": "object" } }, "SpringKafkaDefaultHeaders-AnotherPayloadAvroDto": { "title": "SpringKafkaDefaultHeaders-AnotherPayloadAvroDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" ], "examples": [ "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-AnotherPayloadAvroDto", "type": "object" } }, "SpringKafkaDefaultHeaders-AnotherPayloadDto": { "title": "SpringKafkaDefaultHeaders-AnotherPayloadDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-AnotherPayloadDto", "type": "object" } }, "SpringKafkaDefaultHeaders-AnotherTopic": { "title": "SpringKafkaDefaultHeaders-AnotherTopic", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Type ID" }, "my_uuid_field": { "title": "my_uuid_field", "type": "string", "description": "Event identifier", "format": "uuid" } }, "examples": [ { "__TypeId__": "string", "my_uuid_field": "3fa85f64-5717-4562-b3fc-2c963f66afa6" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Type ID", "title": "__TypeId__", "type": "string" }, "my_uuid_field": { "description": "Event identifier", "format": "uuid", "title": "my_uuid_field", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-AnotherTopic", "type": "object" } }, "SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105": { "title": "SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" ] }, "kafka_offset": { "type": "integer", "format": "int32", "examples": [ 0 ] }, "kafka_receivedMessageKey": { "type": "string", "examples": [ "\"string\"" ] }, "kafka_recordMetadata": { "title": "ConsumerRecordMetadata", "type": "object", "examples": [ { } ] } }, "examples": [ { "ConsumerRecordMetadata": { }, "__TypeId__": "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto", "kafka_offset": 0, "kafka_receivedMessageKey": "string" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" ], "title": "__TypeId__", "type": "string" }, "kafka_offset": { "format": "int32", "type": "integer" }, "kafka_receivedMessageKey": { "type": "string" }, "kafka_recordMetadata": { "title": "ConsumerRecordMetadata", "type": "object" } }, "title": "SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105", "type": "object" } }, "SpringKafkaDefaultHeaders-Message": { "title": "SpringKafkaDefaultHeaders-Message", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" ], "examples": [ "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-Message", "type": "object" } }, "SpringKafkaDefaultHeaders-MonetaryAmount": { "title": "SpringKafkaDefaultHeaders-MonetaryAmount", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "javax.money.MonetaryAmount" ], "examples": [ "javax.money.MonetaryAmount" ] } }, "examples": [ { "__TypeId__": "javax.money.MonetaryAmount" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "javax.money.MonetaryAmount" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-MonetaryAmount", "type": "object" } }, "SpringKafkaDefaultHeaders-PayloadNotUsed": { "title": "SpringKafkaDefaultHeaders-PayloadNotUsed", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "PayloadNotUsed" ], "examples": [ "PayloadNotUsed" ] } }, "examples": [ { "__TypeId__": "PayloadNotUsed" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "PayloadNotUsed" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-PayloadNotUsed", "type": "object" } }, "SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto": { "title": "SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto", "type": "object" } }, "SpringKafkaDefaultHeaders-VehicleBase": { "title": "SpringKafkaDefaultHeaders-VehicleBase", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-VehicleBase", "type": "object" } }, "SpringKafkaDefaultHeaders-XmlPayloadDto": { "title": "SpringKafkaDefaultHeaders-XmlPayloadDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-XmlPayloadDto", "type": "object" } }, "SpringKafkaDefaultHeaders-YamlPayloadDto": { "title": "SpringKafkaDefaultHeaders-YamlPayloadDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-YamlPayloadDto", "type": "object" } }, "SpringKafkaDefaultHeaders-integer": { "title": "SpringKafkaDefaultHeaders-integer", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "java.lang.Integer" ], "examples": [ "java.lang.Integer" ] } }, "examples": [ { "__TypeId__": "java.lang.Integer" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "java.lang.Integer" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-integer", "type": "object" } }, "SpringKafkaDefaultHeaders-string": { "title": "SpringKafkaDefaultHeaders-string", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "java.lang.String" ], "examples": [ "java.lang.String" ] } }, "examples": [ { "__TypeId__": "java.lang.String" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "java.lang.String" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-string", "type": "object" } }, "io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope": { "type": "string", "description": "Payload description using @Schema annotation and @AsyncApiPayload within envelope class", "maxLength": 100, "examples": [ "\"string\"" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Payload description using @Schema annotation and @AsyncApiPayload within envelope class", "maxLength": 100, "type": "string" } }, "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto": { "title": "AnotherPayloadAvroDto", "type": "object", "properties": { "examplePayloadAvroDto": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dto.avro.ExamplePayloadAvroDto" }, "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3" ] } }, "examples": [ { "examplePayloadAvroDto": { "someLong": 0, "someString": "string" }, "someEnum": "FOO1" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "examplePayloadAvroDto": { "properties": { "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "ExamplePayloadAvroDto", "type": "object" }, "someEnum": { "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" } }, "title": "AnotherPayloadAvroDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dto.avro.ExamplePayloadAvroDto": { "title": "ExamplePayloadAvroDto", "type": "object", "properties": { "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "examples": [ { "someLong": 0, "someString": "string" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "ExamplePayloadAvroDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message": { "title": "Message", "type": "object", "properties": { "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3", "UNRECOGNIZED" ] }, "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "examples": [ { "someEnum": "FOO1", "someLong": 0, "someString": "string" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "someEnum": { "enum": [ "FOO1", "FOO2", "FOO3", "UNRECOGNIZED" ], "type": "string" }, "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "Message", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "title": "AnotherPayloadDto", "type": "object", "properties": { "example": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" }, "foo": { "type": "string", "description": "Foo field", "maxLength": 100, "examples": [ "bar" ] } }, "description": "Another payload model", "examples": [ { "example": { "someEnum": "FOO2", "someLong": 5, "someString": "some string value" }, "foo": "bar" } ], "required": [ "example" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Another payload model", "properties": { "example": { "description": "Example payload model demonstrating markdown text styling:\n**bold**, *cursive* and <u>underlined</u>\n", "properties": { "someEnum": { "description": "Some enum field", "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "description": "Some long field", "format": "int64", "minimum": 0, "type": "integer" }, "someString": { "description": "### Some string field with Markdown\n\n- **bold**\n- *cursive*\n- images: <img src=\"./assets/springwolf-logo.png\" alt=\"Springwolf\" height=\"50\"/>\n- and code blocks (json, http, java)\n ```json\n {\n \"key1\":\"value1\",\n \"key2\":\"value2\"\n }\n ```\n", "type": "string" } }, "required": [ "someEnum", "someString" ], "title": "ExamplePayloadDto", "type": "object" }, "foo": { "description": "Foo field", "maxLength": 100, "type": "string" } }, "required": [ "example" ], "title": "AnotherPayloadDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto": { "title": "ExamplePayloadDto", "type": "object", "properties": { "someEnum": { "type": "string", "description": "Some enum field", "enum": [ "FOO1", "FOO2", "FOO3" ], "examples": [ "FOO2" ] }, "someLong": { "type": "integer", "description": "Some long field", "format": "int64", "minimum": 0, "examples": [ 5 ] }, "someString": { "type": "string", "description": "### Some string field with Markdown\n\n- **bold**\n- *cursive*\n- images: <img src=\"./assets/springwolf-logo.png\" alt=\"Springwolf\" height=\"50\"/>\n- and code blocks (json, http, java)\n ```json\n {\n \"key1\":\"value1\",\n \"key2\":\"value2\"\n }\n ```\n", "examples": [ "some string value" ] } }, "description": "Example payload model demonstrating markdown text styling:\n**bold**, *cursive* and <u>underlined</u>\n", "examples": [ { "someEnum": "FOO2", "someLong": 5, "someString": "some string value" } ], "required": [ "someEnum", "someString" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Example payload model demonstrating markdown text styling:\n**bold**, *cursive* and <u>underlined</u>\n", "properties": { "someEnum": { "description": "Some enum field", "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "description": "Some long field", "format": "int64", "minimum": 0, "type": "integer" }, "someString": { "description": "### Some string field with Markdown\n\n- **bold**\n- *cursive*\n- images: <img src=\"./assets/springwolf-logo.png\" alt=\"Springwolf\" height=\"50\"/>\n- and code blocks (json, http, java)\n ```json\n {\n \"key1\":\"value1\",\n \"key2\":\"value2\"\n }\n ```\n", "type": "string" } }, "required": [ "someEnum", "someString" ], "title": "ExamplePayloadDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto": { "title": "NestedPayloadDto", "type": "object", "properties": { "examplePayloads": { "type": "array", "items": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" } }, "someStrings": { "type": "array", "items": { "type": "string", "description": "Some string field", "examples": [ "some string value" ] }, "uniqueItems": true } }, "description": "Payload model with nested complex types", "examples": [ { "examplePayloads": [ { "someEnum": "FOO2", "someLong": 5, "someString": "some string value" } ], "someStrings": [ "some string value" ] } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Payload model with nested complex types", "properties": { "examplePayloads": { "items": { "description": "Example payload model demonstrating markdown text styling:\n**bold**, *cursive* and <u>underlined</u>\n", "properties": { "someEnum": { "description": "Some enum field", "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "description": "Some long field", "format": "int64", "minimum": 0, "type": "integer" }, "someString": { "description": "### Some string field with Markdown\n\n- **bold**\n- *cursive*\n- images: <img src=\"./assets/springwolf-logo.png\" alt=\"Springwolf\" height=\"50\"/>\n- and code blocks (json, http, java)\n ```json\n {\n \"key1\":\"value1\",\n \"key2\":\"value2\"\n }\n ```\n", "type": "string" } }, "required": [ "someEnum", "someString" ], "title": "ExamplePayloadDto", "type": "object" }, "type": "array" }, "someStrings": { "items": { "description": "Some string field", "type": "string" }, "type": "array", "uniqueItems": true } }, "title": "NestedPayloadDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto": { "title": "RequiredAndNullablePayloadDto", "type": "object", "properties": { "enumField": { "type": [ "string", "null" ], "description": "Follows OpenAPI 3.1 spec", "enum": [ "COMPLEX1", "COMPLEX2", null ] }, "notRequiredField": { "type": "string", "description": "This field can be skipped, but value cannot be null" }, "requiredAndNullableField": { "type": [ "string", "null" ], "description": "This field can be skipped, or value can be null or present" }, "requiredButNullableField": { "type": [ "string", "null" ], "description": "This field must be present, but value can be null" }, "requiredField": { "type": "string", "description": "This field must be present, and value cannot be null" } }, "description": "Demonstrate required and nullable. Note, @Schema is only descriptive without nullability check", "examples": [ { "enumField": "COMPLEX1", "notRequiredField": "string", "requiredAndNullableField": "string", "requiredButNullableField": "string", "requiredField": "string" } ], "required": [ "enumField", "requiredButNullableField", "requiredField" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Demonstrate required and nullable. Note, @Schema is only descriptive without nullability check", "properties": { "enumField": { "description": "Follows OpenAPI 3.1 spec", "enum": [ "COMPLEX1", "COMPLEX2", null ], "type": [ "string", "null" ] }, "notRequiredField": { "description": "This field can be skipped, but value cannot be null", "type": "string" }, "requiredAndNullableField": { "description": "This field can be skipped, or value can be null or present", "type": [ "string", "null" ] }, "requiredButNullableField": { "description": "This field must be present, but value can be null", "type": [ "string", "null" ] }, "requiredField": { "description": "This field must be present, and value cannot be null", "type": "string" } }, "required": [ "enumField", "requiredButNullableField", "requiredField" ], "title": "RequiredAndNullablePayloadDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto": { "title": "XmlPayloadDto", "type": "string", "properties": { "someAttribute": { "type": "string" }, "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3" ] }, "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "examples": [ "<io.github.springwolf.examples.kafka.dtos.XmlPayloadDto someAttribute=\"string\"><someEnum>FOO1</someEnum><someLong>0</someLong><someString>string</someString></io.github.springwolf.examples.kafka.dtos.XmlPayloadDto>" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "someAttribute": { }, "someEnum": { "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "XmlPayloadDto", "type": "string" } }, "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto": { "title": "YamlPayloadDto", "type": "string", "properties": { "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3" ] }, "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "examples": [ "someEnum: FOO1\nsomeLong: 0\nsomeString: string\n" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "someEnum": { "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "YamlPayloadDto", "type": "string" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.EnginePower": { "title": "EnginePower", "type": "object", "properties": { "hp": { "type": "integer", "format": "int32" }, "torque": { "type": "integer", "format": "int32" } }, "examples": [ { "hp": 0, "torque": 0 } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "hp": { "format": "int32", "type": "integer" }, "torque": { } }, "title": "EnginePower", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase": { "discriminator": "vehicleType", "title": "VehicleBase", "type": "object", "properties": { "enginePower": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.EnginePower" }, "powerSource": { "type": "string" }, "topSpeed": { "type": "integer", "format": "int32" }, "vehicleType": { "type": "string" } }, "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "examples": [ { "batteryCapacity": 0, "chargeTime": 0, "enginePower": { "hp": 0, "torque": 0 }, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } ], "oneOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto" }, { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "oneOf": [ { "allOf": [ { }, { "properties": { "batteryCapacity": { }, "chargeTime": { "format": "int32", "type": "integer" } }, "type": "object" } ], "description": "Electric vehicle implementation of VehicleBase", "type": "object" }, { "allOf": [ { }, { "properties": { "fuelCapacity": { } }, "type": "object" } ], "description": "Gasoline vehicle implementation of VehicleBase", "type": "object" } ], "properties": { "enginePower": { "properties": { "hp": { }, "torque": { } }, "title": "EnginePower", "type": "object" }, "powerSource": { "type": "string" }, "topSpeed": { }, "vehicleType": { } }, "title": "VehicleBase", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto": { "type": "object", "description": "Electric vehicle implementation of VehicleBase", "examples": [ { "batteryCapacity": 0, "chargeTime": 0, "enginePower": { "hp": 0, "torque": 0 }, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } ], "allOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" }, { "type": "object", "properties": { "batteryCapacity": { "type": "integer", "format": "int32" }, "chargeTime": { "type": "integer", "format": "int32" } } } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "allOf": [ { "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "oneOf": [ { }, { "allOf": [ { }, { "properties": { "fuelCapacity": { "format": "int32", "type": "integer" } }, "type": "object" } ], "description": "Gasoline vehicle implementation of VehicleBase", "type": "object" } ], "properties": { "enginePower": { "properties": { "hp": { }, "torque": { } }, "title": "EnginePower", "type": "object" }, "powerSource": { "type": "string" }, "topSpeed": { }, "vehicleType": { } }, "title": "VehicleBase", "type": "object" }, { "properties": { "batteryCapacity": { }, "chargeTime": { } }, "type": "object" } ], "description": "Electric vehicle implementation of VehicleBase", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto": { "type": "object", "description": "Gasoline vehicle implementation of VehicleBase", "examples": [ { "enginePower": { "hp": 0, "torque": 0 }, "fuelCapacity": 0, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } ], "allOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" }, { "type": "object", "properties": { "fuelCapacity": { "type": "integer", "format": "int32" } } } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "allOf": [ { "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "oneOf": [ { "allOf": [ { }, { "properties": { "batteryCapacity": { }, "chargeTime": { "format": "int32", "type": "integer" } }, "type": "object" } ], "description": "Electric vehicle implementation of VehicleBase", "type": "object" }, { } ], "properties": { "enginePower": { "properties": { "hp": { }, "torque": { } }, "title": "EnginePower", "type": "object" }, "powerSource": { "type": "string" }, "topSpeed": { }, "vehicleType": { } }, "title": "VehicleBase", "type": "object" }, { "properties": { "fuelCapacity": { } }, "type": "object" } ], "description": "Gasoline vehicle implementation of VehicleBase", "type": "object" } }, "java.lang.Integer": { "type": "integer", "format": "int32", "examples": [ 0 ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "format": "int32", "type": "integer" } }, "java.lang.String": { "type": "string", "examples": [ "\"string\"" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "type": "string" } }, "javax.money.MonetaryAmount": { "type": "object", "properties": { "amount": { "type": "number", "exclusiveMinimum": 0.01, "examples": [ 99.99 ] }, "currency": { "type": "string", "examples": [ "USD" ] } }, "examples": [ { "amount": 99.99, "currency": "USD" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "amount": { "exclusiveMinimum": 0.01, "type": "number" }, "currency": { "type": "string" } }, "type": "object" } } }, "messages": { "PayloadNotUsed": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-PayloadNotUsed" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "title": "PayloadNotUsed", "type": "object", "properties": { }, "description": "No payload specified" } }, "name": "PayloadNotUsed", "title": "PayloadNotUsed", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope": { "headers": { "$ref": "#/components/schemas/HeadersNotUsed" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope" } }, "name": "StringPayload", "title": "StringEnvelope", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto": { "headers": { "$ref": "#/components/schemas/HeadersNotDocumented" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" } }, "name": "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto", "title": "AnotherPayloadAvroDto", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-Message" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" } }, "name": "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message", "title": "Message", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "headers": { "$ref": "#/com
ApiIntegrationTest.asyncApiResourceArtifactYamlTest(): springwolf-examples/springwolf-amqp-example/src/test/java/io/github/springwolf/examples/amqp/ApiIntegrationTest.java#L55
org.opentest4j.AssertionFailedError: expected: "asyncapi: 3.0.0 info: title: Springwolf example project - Kafka version: 1.0.0 description: "Springwolf [example project](https://github.com/springwolf/springwolf-core/tree/main/springwolf-examples/springwolf-kafka-example)\ \ to demonstrate springwolfs abilities, including **markdown** support for descriptions." termsOfService: http://asyncapi.org/terms contact: name: springwolf url: https://github.com/springwolf/springwolf-core email: example@example.com license: name: Apache License 2.0 x-generator: springwolf defaultContentType: application/json servers: kafka-server: host: kafka:29092 protocol: kafka channels: another-topic: address: another-topic messages: io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto: $ref: "#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" bindings: kafka: bindingVersion: 0.5.0 avro-topic: address: avro-topic messages: io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto: $ref: "#/components/messages/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" bindings: kafka: bindingVersion: 0.5.0 example-topic: address: example-topic messages: io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto: $ref: "#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" bindings: kafka: bindingVersion: 0.5.0 integer-topic: address: integer-topic messages: java.lang.Integer: $ref: "#/components/messages/java.lang.Integer" bindings: kafka: bindingVersion: 0.5.0 multi-payload-topic: address: multi-payload-topic messages: io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto: $ref: "#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto: $ref: "#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" javax.money.MonetaryAmount: $ref: "#/components/messages/javax.money.MonetaryAmount" bindings: kafka: topic: multi-payload-topic partitions: 3 replicas: 1 topicConfiguration: cleanup.policy: - compact - delete retention.ms: 86400000 retention.bytes: -1 delete.retention.ms: 86400000 max.message.bytes: 1048588 bindingVersion: 0.5.0 no-payload-used-topic: address: no-payload-used-topic messages: PayloadNotUsed: $ref: "#/components/messages/PayloadNotUsed" bindings: kafka: bindingVersion: 0.5.0 nullable-topic: address: nullable-topic messages: io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto: $ref: "#/components/messages/io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" bindings: kafka: bindingVersion: 0.5.0 protobuf-topic: address: protobuf-topic messages: io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message: $ref: "#/components/messages/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" bindings: kafka: bindingVersion: 0.5.0 string-topic: address: string-topic messages: io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope: $ref: "#/components/messages/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope" java.lang.String: $ref: "#/components/messages/java.lang.String" bindings: kafka: bindingVersion: 0.5.0 topic-defined-via-asyncPublisher-annotation: address: topic-defined-via-asyncPublisher-annotation messages: io.github.springwolf.examples.kafka.dtos.NestedPayloadDto: $ref: "#/components/messages/io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" servers: - $ref: "#/servers/kafka-server" bindings: {} vehicle-topic: address: vehicle-topic messages: io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase: $ref: "#/components/messages/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" bindings: kafka: bindingVersion: 0.5.0 xml-topic: address: xml-topic messages: io.github.springwolf.examples.kafka.dtos.XmlPayloadDto: $ref: "#/components/messages/io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" bindings: kafka: bindingVersion: 0.5.0 yaml-topic: address: yaml-topic messages: io.github.springwolf.examples.kafka.dtos.YamlPayloadDto: $ref: "#/components/messages/io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" bindings: kafka: bindingVersion: 0.5.0 components: schemas: HeadersNotDocumented: title: HeadersNotDocumented type: object properties: {} description: "There can be headers, but they are not explicitly documented." examples: - {} x-json-schema: $schema: https://json-schema.org/draft-07/schema# description: "There can be headers, but they are not explicitly documented." title: HeadersNotDocumented type: object HeadersNotUsed: title: HeadersNotUsed type: object properties: {} description: No headers are present. examples: - {} x-json-schema: $schema: https://json-schema.org/draft-07/schema# description: No headers are present. title: HeadersNotUsed type: object PayloadNotUsed: title: PayloadNotUsed type: object properties: {} description: No payload specified examples: - {} x-json-schema: $schema: https://json-schema.org/draft-07/schema# description: No payload specified title: PayloadNotUsed type: object SpringDefaultHeaderAndCloudEvent: title: SpringDefaultHeaderAndCloudEvent type: object properties: __TypeId__: title: __TypeId__ type: string description: Spring Type Id Header enum: - io.github.springwolf.examples.kafka.dtos.NestedPayloadDto examples: - io.github.springwolf.examples.kafka.dtos.NestedPayloadDto ce_id: title: ce_id type: string description: CloudEvent Id Header enum: - 2c60089e-6f39-459d-8ced-2d6df7e4c03a examples: - 2c60089e-6f39-459d-8ced-2d6df7e4c03a ce_source: title: ce_source type: string description: CloudEvent Source Header enum: - http://localhost examples: - http://localhost ce_specversion: title: ce_specversion type: string description: CloudEvent Spec Version Header enum: - "1.0" examples: - "1.0" ce_subject: title: ce_subject type: string description: CloudEvent Subject Header enum: - Springwolf example project - Kafka examples: - Springwolf example project - Kafka ce_time: title: ce_time type: string description: CloudEvent Time Header enum: - 2023-10-28 20:01:23+00:00 examples: - 2023-10-28 20:01:23+00:00 ce_type: title: ce_type type: string description: CloudEvent Payload Type Header enum: - NestedPayloadDto.v1 examples: - NestedPayloadDto.v1 content-type: title: content-type type: string description: CloudEvent Content-Type Header enum: - application/json examples: - application/json description: Spring __TypeId__ and CloudEvent Headers examples: - __TypeId__: io.github.springwolf.examples.kafka.dtos.NestedPayloadDto ce_id: 2c60089e-6f39-459d-8ced-2d6df7e4c03a ce_source: http://localhost ce_specversion: "1.0" ce_subject: Springwolf example project - Kafka ce_time: 2023-10-28 20:01:23+00:00 ce_type: NestedPayloadDto.v1 content-type: application/json x-json-schema: $schema: https://json-schema.org/draft-07/schema# description: Spring __TypeId__ and CloudEvent Headers properties: __TypeId__: description: Spring Type Id Header enum: - io.github.springwolf.examples.kafka.dtos.NestedPayloadDto title: __TypeId__ type: string ce_id: description: CloudEvent Id Header enum: - 2c60089e-6f39-459d-8ced-2d6df7e4c03a title: ce_id type: string ce_source: description: CloudEvent Source Header enum: - http://localhost title: ce_source type: string ce_specversion: description: CloudEvent Spec Version Header enum: - "1.0" title: ce_specversion type: string ce_subject: description: CloudEvent Subject Header enum: - Springwolf example project - Kafka title: ce_subject type: string ce_time: description: CloudEvent Time Header enum: - 2023-10-28 20:01:23+00:00 title: ce_time type: string ce_type: description: CloudEvent Payload Type Header enum: - NestedPayloadDto.v1 title: ce_type type: string content-type: description: CloudEvent Content-Type Header enum: - application/json title: content-type type: string title: SpringDefaultHeaderAndCloudEvent type: object SpringKafkaDefaultHeaders-AnotherPayloadAvroDto: title: SpringKafkaDefaultHeaders-AnotherPayloadAvroDto type: object properties: __TypeId__: title: __TypeId__ type: string description: Spring Type Id Header enum: - io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto examples: - io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto examples: - __TypeId__: io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: __TypeId__: description: Spring Type Id Header enum: - io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto title: __TypeId__ type: string title: SpringKafkaDefaultHeaders-AnotherPayloadAvroDto type: object SpringKafkaDefaultHeaders-AnotherPayloadDto: title: SpringKafkaDefaultHeaders-AnotherPayloadDto type: object properties: __TypeId__: title: __TypeId__ type: string description: Spring Type Id Header enum: - io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto examples: - io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto examples: - __TypeId__: io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: __TypeId__: description: Spring Type Id Header enum: - io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto title: __TypeId__ type: string title: SpringKafkaDefaultHeaders-AnotherPayloadDto type: object SpringKafkaDefaultHeaders-AnotherTopic: title: SpringKafkaDefaultHeaders-AnotherTopic type: object properties: __TypeId__: title: __TypeId__ type: string description: Type ID my_uuid_field: title: my_uuid_field type: string description: Event identifier format: uuid examples: - __TypeId__: string my_uuid_field: 3fa85f64-5717-4562-b3fc-2c963f66afa6 x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: __TypeId__: description: Type ID title: __TypeId__ type: string my_uuid_field: description: Event identifier format: uuid title: my_uuid_field type: string title: SpringKafkaDefaultHeaders-AnotherTopic type: object SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105: title: SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105 type: object properties: __TypeId__: title: __TypeId__ type: string description: Spring Type Id Header enum: - io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto examples: - io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto kafka_offset: type: integer format: int32 examples: - 0 kafka_receivedMessageKey: type: string examples: - '"string"' kafka_recordMetadata: title: ConsumerRecordMetadata type: object examples: - {} examples: - ConsumerRecordMetadata: {} __TypeId__: io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto kafka_offset: 0 kafka_receivedMessageKey: string x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: __TypeId__: description: Spring Type Id Header enum: - io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto title: __TypeId__ type: string kafka_offset: format: int32 type: integer kafka_receivedMessageKey: type: string kafka_recordMetadata: title: ConsumerRecordMetadata type: object title: SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105 type: object SpringKafkaDefaultHeaders-Message: title: SpringKafkaDefaultHeaders-Message type: object properties: __TypeId__: title: __TypeId__ type: string description: Spring Type Id Header enum: - io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message examples: - io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message examples: - __TypeId__: io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: __TypeId__: description: Spring Type Id Header enum: - io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message title: __TypeId__ type: string title: SpringKafkaDefaultHeaders-Message type: object SpringKafkaDefaultHeaders-MonetaryAmount: title: SpringKafkaDefaultHeaders-MonetaryAmount type: object properties: __TypeId__: title: __TypeId__ type: string description: Spring Type Id Header enum: - javax.money.MonetaryAmount examples: - javax.money.MonetaryAmount examples: - __TypeId__: javax.money.MonetaryAmount x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: __TypeId__: description: Spring Type Id Header enum: - javax.money.MonetaryAmount title: __TypeId__ type: string title: SpringKafkaDefaultHeaders-MonetaryAmount type: object SpringKafkaDefaultHeaders-PayloadNotUsed: title: SpringKafkaDefaultHeaders-PayloadNotUsed type: object properties: __TypeId__: title: __TypeId__ type: string description: Spring Type Id Header enum: - PayloadNotUsed examples: - PayloadNotUsed examples: - __TypeId__: PayloadNotUsed x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: __TypeId__: description: Spring Type Id Header enum: - PayloadNotUsed title: __TypeId__ type: string title: SpringKafkaDefaultHeaders-PayloadNotUsed type: object SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto: title: SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto type: object properties: __TypeId__: title: __TypeId__ type: string description: Spring Type Id Header enum: - io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto examples: - io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto examples: - __TypeId__: io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: __TypeId__: description: Spring Type Id Header enum: - io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto title: __TypeId__ type: string title: SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto type: object SpringKafkaDefaultHeaders-VehicleBase: title: SpringKafkaDefaultHeaders-VehicleBase type: object properties: __TypeId__: title: __TypeId__ type: string description: Spring Type Id Header enum: - io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase examples: - io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase examples: - __TypeId__: io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: __TypeId__: description: Spring Type Id Header enum: - io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase title: __TypeId__ type: string title: SpringKafkaDefaultHeaders-VehicleBase type: object SpringKafkaDefaultHeaders-XmlPayloadDto: title: SpringKafkaDefaultHeaders-XmlPayloadDto type: object properties: __TypeId__: title: __TypeId__ type: string description: Spring Type Id Header enum: - io.github.springwolf.examples.kafka.dtos.XmlPayloadDto examples: - io.github.springwolf.examples.kafka.dtos.XmlPayloadDto examples: - __TypeId__: io.github.springwolf.examples.kafka.dtos.XmlPayloadDto x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: __TypeId__: description: Spring Type Id Header enum: - io.github.springwolf.examples.kafka.dtos.XmlPayloadDto title: __TypeId__ type: string title: SpringKafkaDefaultHeaders-XmlPayloadDto type: object SpringKafkaDefaultHeaders-YamlPayloadDto: title: SpringKafkaDefaultHeaders-YamlPayloadDto type: object properties: __TypeId__: title: __TypeId__ type: string description: Spring Type Id Header enum: - io.github.springwolf.examples.kafka.dtos.YamlPayloadDto examples: - io.github.springwolf.examples.kafka.dtos.YamlPayloadDto examples: - __TypeId__: io.github.springwolf.examples.kafka.dtos.YamlPayloadDto x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: __TypeId__: description: Spring Type Id Header enum: - io.github.springwolf.examples.kafka.dtos.YamlPayloadDto title: __TypeId__ type: string title: SpringKafkaDefaultHeaders-YamlPayloadDto type: object SpringKafkaDefaultHeaders-integer: title: SpringKafkaDefaultHeaders-integer type: object properties: __TypeId__: title: __TypeId__ type: string description: Spring Type Id Header enum: - java.lang.Integer examples: - java.lang.Integer examples: - __TypeId__: java.lang.Integer x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: __TypeId__: description: Spring Type Id Header enum: - java.lang.Integer title: __TypeId__ type: string title: SpringKafkaDefaultHeaders-integer type: object SpringKafkaDefaultHeaders-string: title: SpringKafkaDefaultHeaders-string type: object properties: __TypeId__: title: __TypeId__ type: string description: Spring Type Id Header enum: - java.lang.String examples: - java.lang.String examples: - __TypeId__: java.lang.String x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: __TypeId__: description: Spring Type Id Header enum: - java.lang.String title: __TypeId__ type: string title: SpringKafkaDefaultHeaders-string type: object io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope: type: string description: Payload description using @Schema annotation and @AsyncApiPayload within envelope class maxLength: 100 examples: - '"string"' x-json-schema: $schema: https://json-schema.org/draft-07/schema# description: Payload description using @Schema annotation and @AsyncApiPayload within envelope class maxLength: 100 type: string io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto: title: AnotherPayloadAvroDto type: object properties: examplePayloadAvroDto: $ref: "#/components/schemas/io.github.springwolf.examples.kafka.dto.avro.ExamplePayloadAvroDto" someEnum: type: string enum: - FOO1 - FOO2 - FOO3 examples: - examplePayloadAvroDto: someLong: 0 someString: string someEnum: FOO1 x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: examplePayloadAvroDto: properties: someLong: format: int64 type: integer someString: type: string title: ExamplePayloadAvroDto type: object someEnum: enum: - FOO1 - FOO2 - FOO3 type: string title: AnotherPayloadAvroDto type: object io.github.springwolf.examples.kafka.dto.avro.ExamplePayloadAvroDto: title: ExamplePayloadAvroDto type: object properties: someLong: type: integer format: int64 someString: type: string examples: - someLong: 0 someString: string x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: someLong: format: int64 type: integer someString: type: string title: ExamplePayloadAvroDto type: object io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message: title: Message type: object properties: someEnum: type: string enum: - FOO1 - FOO2 - FOO3 - UNRECOGNIZED someLong: type: integer format: int64 someString: type: string examples: - someEnum: FOO1 someLong: 0 someString: string x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: someEnum: enum: - FOO1 - FOO2 - FOO3 - UNRECOGNIZED type: string someLong: format: int64 type: integer someString: type: string title: Message type: object io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto: title: AnotherPayloadDto type: object properties: example: $ref: "#/components/schemas/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" foo: type: string description: Foo field maxLength: 100 examples: - bar description: Another payload model examples: - example: someEnum: FOO2 someLong: 5 someString: some string value foo: bar required: - example x-json-schema: $schema: https://json-schema.org/draft-07/schema# description: Another payload model properties: example: description: | Example payload model demonstrating markdown text styling: **bold**, *cursive* and <u>underlined</u> properties: someEnum: description: Some enum field enum: - FOO1 - FOO2 - FOO3 type: string someLong: description: Some long field format: int64 minimum: 0 type: integer someString: description: | ### Some string field with Markdown - **bold** - *cursive* - images: <img src="./assets/springwolf-logo.png" alt="Springwolf" height="50"/> - and code blocks (json, http, java) ```json { "key1":"value1", "key2":"value2" } ``` type: string required: - someEnum - someString title: ExamplePayloadDto type: object foo: description: Foo field maxLength: 100 type: string required: - example title: AnotherPayloadDto type: object io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto: title: ExamplePayloadDto type: object properties: someEnum: type: string description: Some enum field enum: - FOO1 - FOO2 - FOO3 examples: - FOO2 someLong: type: integer description: Some long field format: int64 minimum: 0 examples: - 5 someString: type: string description: | ### Some string field with Markdown - **bold** - *cursive* - images: <img src="./assets/springwolf-logo.png" alt="Springwolf" height="50"/> - and code blocks (json, http, java) ```json { "key1":"value1", "key2":"value2" } ``` examples: - some string value description: | Example payload model demonstrating markdown text styling: **bold**, *cursive* and <u>underlined</u> examples: - someEnum: FOO2 someLong: 5 someString: some string value required: - someEnum - someString x-json-schema: $schema: https://json-schema.org/draft-07/schema# description: | Example payload model demonstrating markdown text styling: **bold**, *cursive* and <u>underlined</u> properties: someEnum: description: Some enum field enum: - FOO1 - FOO2 - FOO3 type: string someLong: description: Some long field format: int64 minimum: 0 type: integer someString: description: | ### Some string field with Markdown - **bold** - *cursive* - images: <img src="./assets/springwolf-logo.png" alt="Springwolf" height="50"/> - and code blocks (json, http, java) ```json { "key1":"value1", "key2":"value2" } ``` type: string required: - someEnum - someString title: ExamplePayloadDto type: object io.github.springwolf.examples.kafka.dtos.NestedPayloadDto: title: NestedPayloadDto type: object properties: examplePayloads: type: array items: $ref: "#/components/schemas/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" someStrings: type: array items: type: string description: Some string field examples: - some string value uniqueItems: true description: Payload model with nested complex types examples: - examplePayloads: - someEnum: FOO2 someLong: 5 someString: some string value someStrings: - some string value x-json-schema: $schema: https://json-schema.org/draft-07/schema# description: Payload model with nested complex types properties: examplePayloads: items: description: | Example payload model demonstrating markdown text styling: **bold**, *cursive* and <u>underlined</u> properties: someEnum: description: Some enum field enum: - FOO1 - FOO2 - FOO3 type: string someLong: description: Some long field format: int64 minimum: 0 type: integer someString: description: | ### Some string field with Markdown - **bold** - *cursive* - images: <img src="./assets/springwolf-logo.png" alt="Springwolf" height="50"/> - and code blocks (json, http, java) ```json { "key1":"value1", "key2":"value2" } ``` type: string required: - someEnum - someString title: ExamplePayloadDto type: object type: array someStrings: items: description: Some string field type: string type: array uniqueItems: true title: NestedPayloadDto type: object io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto: title: RequiredAndNullablePayloadDto type: object properties: enumField: type: - string - "null" description: Follows OpenAPI 3.1 spec enum: - COMPLEX1 - COMPLEX2 - null notRequiredField: type: string description: "This field can be skipped, but value cannot be null" requiredAndNullableField: type: - string - "null" description: "This field can be skipped, or value can be null or present" requiredButNullableField: type: - string - "null" description: "This field must be present, but value can be null" requiredField: type: string description: "This field must be present, and value cannot be null" description: "Demonstrate required and nullable. Note, @Schema is only descriptive\ \ without nullability check" examples: - enumField: COMPLEX1 notRequiredField: string requiredAndNullableField: string requiredButNullableField: string requiredField: string required: - enumField - requiredButNullableField - requiredField x-json-schema: $schema: https://json-schema.org/draft-07/schema# description: "Demonstrate required and nullable. Note, @Schema is only descriptive\ \ without nullability check" properties: enumField: description: Follows OpenAPI 3.1 spec enum: - COMPLEX1 - COMPLEX2 - null type: - string - "null" notRequiredField: description: "This field can be skipped, but value cannot be null" type: string requiredAndNullableField: description: "This field can be skipped, or value can be null or present" type: - string - "null" requiredButNullableField: description: "This field must be present, but value can be null" type: - string - "null" requiredField: description: "This field must be present, and value cannot be null" type: string required: - enumField - requiredButNullableField - requiredField title: RequiredAndNullablePayloadDto type: object io.github.springwolf.examples.kafka.dtos.XmlPayloadDto: title: XmlPayloadDto type: string properties: someAttribute: type: string someEnum: type: string enum: - FOO1 - FOO2 - FOO3 someLong: type: integer format: int64 someString: type: string examples: - <io.github.springwolf.examples.kafka.dtos.XmlPayloadDto someAttribute="string"><someEnum>FOO1</someEnum><someLong>0</someLong><someString>string</someString></io.github.springwolf.examples.kafka.dtos.XmlPayloadDto> x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: someAttribute: {} someEnum: enum: - FOO1 - FOO2 - FOO3 type: string someLong: format: int64 type: integer someString: type: string title: XmlPayloadDto type: string io.github.springwolf.examples.kafka.dtos.YamlPayloadDto: title: YamlPayloadDto type: string properties: someEnum: type: string enum: - FOO1 - FOO2 - FOO3 someLong: type: integer format: int64 someString: type: string examples: - | someEnum: FOO1 someLong: 0 someString: string x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: someEnum: enum: - FOO1 - FOO2 - FOO3 type: string someLong: format: int64 type: integer someString: type: string title: YamlPayloadDto type: string io.github.springwolf.examples.kafka.dtos.discriminator.EnginePower: title: EnginePower type: object properties: hp: type: integer format: int32 torque: type: integer format: int32 examples: - hp: 0 torque: 0 x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: hp: format: int32 type: integer torque: {} title: EnginePower type: object io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase: discriminator: vehicleType title: VehicleBase type: object properties: enginePower: $ref: "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.EnginePower" powerSource: type: string topSpeed: type: integer format: int32 vehicleType: type: string description: Demonstrates the use of discriminator for polymorphic deserialization (not publishable) examples: - batteryCapacity: 0 chargeTime: 0 enginePower: hp: 0 torque: 0 powerSource: string topSpeed: 0 vehicleType: string oneOf: - $ref: "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto" - $ref: "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto" x-json-schema: $schema: https://json-schema.org/draft-07/schema# description: Demonstrates the use of discriminator for polymorphic deserialization (not publishable) oneOf: - allOf: - {} - properties: batteryCapacity: {} chargeTime: format: int32 type: integer type: object description: Electric vehicle implementation of VehicleBase type: object - allOf: - {} - properties: fuelCapacity: {} type: object description: Gasoline vehicle implementation of VehicleBase type: object properties: enginePower: properties: hp: {} torque: {} title: EnginePower type: object powerSource: type: string topSpeed: {} vehicleType: {} title: VehicleBase type: object io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto: type: object description: Electric vehicle implementation of VehicleBase examples: - batteryCapacity: 0 chargeTime: 0 enginePower: hp: 0 torque: 0 powerSource: string topSpeed: 0 vehicleType: string allOf: - $ref: "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" - type: object properties: batteryCapacity: type: integer format: int32 chargeTime: type: integer format: int32 x-json-schema: $schema: https://json-schema.org/draft-07/schema# allOf: - description: Demonstrates the use of discriminator for polymorphic deserialization (not publishable) oneOf: - {} - allOf: - {} - properties: fuelCapacity: format: int32 type: integer type: object description: Gasoline vehicle implementation of VehicleBase type: object properties: enginePower: properties: hp: {} torque: {} title: EnginePower type: object powerSource: type: string topSpeed: {} vehicleType: {} title: VehicleBase type: object - properties: batteryCapacity: {} chargeTime: {} type: object description: Electric vehicle implementation of VehicleBase type: object io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto: type: object description: Gasoline vehicle implementation of VehicleBase examples: - enginePower: hp: 0 torque: 0 fuelCapacity: 0 powerSource: string topSpeed: 0 vehicleType: string allOf: - $ref: "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" - type: object properties: fuelCapacity: type: integer format: int32 x-json-schema: $schema: https://json-schema.org/draft-07/schema# allOf: - description: Demonstrates the use of discriminator for polymorphic deserialization (not publishable) oneOf: - allOf: - {} - properties: batteryCapacity: {} chargeTime: format: int32 type: integer type: object description: Electric vehicle implementation of VehicleBase type: object - {} properties: enginePower: properties: hp: {} torque: {} title: EnginePower type: object powerSource: type: string topSpeed: {} vehicleType: {} title: VehicleBase type: object - properties: fuelCapacity: {} type: object description: Gasoline vehicle implementation of VehicleBase type: object java.lang.Integer: type: integer format: int32 examples: - 0 x-json-schema: $schema: https://json-schema.org/draft-07/schema# format: int32 type: integer java.lang.String: type: string examples: - '"string"' x-json-schema: $schema: https://json-schema.org/draft-07/schema# type: string javax.money.MonetaryAmount: type: object properties: amount: type: number exclusiveMinimum: 0.01 examples: - 99.99 currency: type: string examples: - USD examples: - amount: 99.99 currency: USD x-json-schema: $schema: https://json-schema.org/draft-07/schema# properties: amount: exclusiveMinimum: 0.01 type: number currency: type: string type: object messages: PayloadNotUsed: headers: $ref: "#/components/schemas/SpringKafkaDefaultHeaders-PayloadNotUsed" payload: schemaFormat: application/vnd.aai.asyncapi+json;version=3.0.0 schema: title: PayloadNotUsed type: object properties: {} description: No payload specified name: PayloadNotUsed title: PayloadNotUsed bindings: kafka: bindingVersion: 0.5.0 io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope: headers: $ref: "#/components/schemas/HeadersNotUsed" payload: schemaFormat: application/vnd.aai.asyncapi+json;version=3.0.0 schema: $ref: "#/components/schemas/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope" name: StringPayload title: StringEnvelope bindings: kafka: bindingVersion: 0.5.0 io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto: headers: $ref: "#/components/schemas/HeadersNotDocumented" payload: schemaFormat: application/vnd.aai.asyncapi+json;version=3.0.0 schema: $ref: "#/components/schemas/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" name: io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto title: AnotherPayloadAvroDto bindings: kafka: bindingVersion: 0.5.0 io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message: headers: $ref: "#/components/schemas/SpringKafkaDefaultHeaders-Message" payload: schemaFormat: application/vnd.aai.asyncapi+json;version=3.0.0 schema: $ref: "#/components/schemas/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" name: io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message title: Message bindings: kafka: bindingVersion: 0.5.0 io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto: headers: $ref: "#/components/schemas/SpringKafkaDefaultHeaders-AnotherTopic" payload: schemaFormat: application/vnd.aai.asyncapi+json;version=3.0.0 schema: $ref: "#/components/schemas/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" name: io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto title: AnotherPayloadDto bindings: kafka: bindingVersion: 0.5.0 io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto: headers: $ref: "#/components/schemas/SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105" payload: schemaFormat: application/vnd.aai.asyncapi+json;version=3.0.0 schema: $ref: "#/components/schemas/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" name: io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto title: ExamplePayloadDto bindings: kafka: bindingVersion: 0.5.0 io.github.springwolf.examples.kafka.dtos.NestedPayloadDto: headers: $ref: "#/components/schemas/SpringDefaultHeaderAndCloudEvent" payload: schemaFormat: application/vnd.aai.asyncapi+json;version=3.0.0 schema: $ref: "#/components/schemas/io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" name: io.github.springwolf.examples.kafka.dtos.NestedPayloadDto title: NestedPayloadDto bindings: kafka: key: type: string description: Kafka Producer Message Key examples: - example-key bindingVersion: 0.5.0 io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto: headers: $ref: "#/components/schemas/SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto" payload: schemaFormat: application/vnd.aai.asyncapi+json;version=3.0.0 schema: $ref: "#/components/schemas/io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" name: io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto title: RequiredAndNullablePayloadDto bindings: kafka: bindingVersion: 0.5.0 io.github.springwolf.examples.kafka.dtos.XmlPayloadDto: headers: $ref: "#/components/schemas/HeadersNotDocumented" payload: schemaFormat: application/vnd.aai.asyncapi+json;version=3.0.0 schema: $ref: "#/components/schemas/io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" contentType: text/xml name: io.github.springwolf.examples.kafka.dtos.XmlPayloadDto title: XmlPayloadDto description: Showcases a xml based message bindings: kafka: bindingVersion: 0.5.0 io.github.springwolf.examples.kafka.dtos.YamlPayloadDto: headers: $ref: "#/components/schemas/HeadersNotDocumented" payload: schemaFormat: application/vnd.aai.asyncapi+json;version=3.0.0 schema: $ref: "#/components/schemas/io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" contentType: application/yaml name: io.github.springwolf.examples.kafka.dtos.YamlPayloadDto title: YamlPayloadDto description: Showcases a yaml based message bindings: kafka: bindingVersion: 0.5.0 io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase: headers: $ref: "#/components/schemas/SpringKafkaDefaultHeaders-VehicleBase" payload: schemaFormat: application/vnd.aai.asyncapi+json;version=3.0.0 schema: $ref: "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" name: io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase title: VehicleBase bindings: kafka: bindingVersion: 0.5.0 java.lang.Integer: headers: $ref: "#/components/schemas/SpringKafkaDefaultHeaders-integer" payload: schemaFormat: application/vnd.aai.asyncapi+json;version=3.0.0 schema: type: integer format: int32 examples: - 0 name: java.lang.Integer title: integer bindings: kafka: bindingVersion: 0.5.0 java.lang.String: headers: $ref: "#/components/schemas/SpringKafkaDefaultHeaders-string" payload: schemaFormat: application/vnd.aai.asyncapi+json;version=3.0.0 schema: type: string examples: - '"string"' name: java.lang.String title: string bindings: kafka: bindingVersion: 0.5.0 javax.money.MonetaryAmount: headers: $ref: "#/components/schemas/SpringKafkaDefaultHeaders-MonetaryAmount" payload: schemaFormat: application/vnd.aai.asyncapi+json;version=3.0.0 schema: $ref: "#/components/schemas/javax.money.MonetaryAmount" name: javax.money.MonetaryAmount title: MonetaryAmount bindings: kafka: key: type: string description: Kafka Consumer Message Key examples: - example-key bindingVersion: 0.5.0 operations: another-topic_receive_receiveAnotherPayloadBatched: action: receive channel: $ref: "#/channels/another-topic" bindings: kafka: groupId: type: string enum: - example-group-id bindingVersion: 0.5.0 messages: - $ref: "#/channels/another-topic/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" another-topic_send_sendMessage: action: send channel: $ref: "#/channels/another-topic" title: another-topic_send description: Auto-generated description bindings: kafka: bindingVersion: 0.5.0 messages: - $ref: "#/channels/another-topic/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" avro-topic_receive_receiveExampleAvroPayload: action: receive channel: $ref: "#/channels/avro-topic" title: avro-topic_receive description: Requires a running kafka-schema-registry. See docker-compose.yml to start it bindings: kafka: bindingVersion: 0.5.0 messages: - $ref: "#/channels/avro-topic/messages/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" example-topic_receive_receiveExamplePayload: action: receive channel: $ref: "#/channels/example-topic" bindings: kafka: bindingVersion: 0.5.0 messages: - $ref: "#/channels/example-topic/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" integer-topic_receive_receiveIntegerPayload: action: receive channel: $ref: "#/channels/integer-topic" bindings: kafka: bindingVersion: 0.5.0 messages: - $ref: "#/channels/integer-topic/messages/java.lang.Integer" multi-payload-topic_receive_ExampleClassLevelKafkaListener: action: receive channel: $ref: "#/channels/multi-payload-topic" bindings: kafka: bindingVersion: 0.5.0 messages: - $ref: "#/channels/multi-payload-topic/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" - $ref: "#/channels/multi-payload-topic/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" - $ref: "#/channels/multi-payload-topic/messages/javax.money.MonetaryAmount" multi-payload-topic_receive_receiveMonetaryAmount: action: receive channel: $ref: "#/channels/multi-payload-topic" title: multi-payload-topic_receive description: Override description in the AsyncListener annotation with servers at kafka:29092 bindings: kafka: groupId: type: string enum: - foo-groupId clientId: type: string enum: - foo-clientId bindingVersion: 0.5.0 messages: - $ref: "#/channels/multi-payload-topic/messages/javax.money.MonetaryAmount" no-payload-used-topic_receive_receiveExamplePayload: action: receive channel: $ref: "#/channels/no-payload-used-topic" bindings: kafka: bindingVersion: 0.5.0 messages: - $ref: "#/channels/no-payload-used-topic/messages/PayloadNotUsed" nullable-topic_receive_receiveNullablePayload: action: receive channel: $ref: "#/channels/nullable-topic" bindings: kafka: bindingVersion: 0.5.0 messages: - $ref: "#/channels/nullable-topic/messages/io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" protobuf-topic_receive_receiveExampleProtobufPayload: action: receive channel: $ref: "#/channels/protobuf-topic" bindings: kafka: bindingVersion: 0.5.0 messages: - $ref: "#/channels/protobuf-topic/messages/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" string-topic_receive_receiveStringPayload: action: receive channel: $ref: "#/channels/string-topic" title: string-topic_receive description: Final classes (like String) can be documented using an envelope class and the @AsyncApiPayload annotation. bindings: kafka: bindingVersion: 0.5.0 messages: - $ref: "#/channels/string-topic/messages/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope" - $ref: "#/channels/string-topic/messages/java.lang.String" topic-defined-via-asyncPublisher-annotation_send_sendMessage: action: send channel: $ref: "#/channels/topic-defined-via-asyncPublisher-annotation" title: topic-defined-via-asyncPublisher-annotation_send description: "Custom, optional description defined in the AsyncPublisher annotation" bindings: kafka: clientId: type: string enum: - foo-clientId bindingVersion: 0.5.0 messages: - $ref: "#/channels/topic-defined-via-asyncPublisher-annotation/messages/io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" vehicle-topic_receive_receiveExamplePayload: action: receive channel: $ref: "#/channels/vehicle-topic" bindings: kafka: bindingVersion: 0.5.0 messages: - $ref: "#/channels/vehicle-topic/messages/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" xml-topic_receive_receiveExamplePayload: action: receive channel: $ref: "#/channels/xml-topic" title: xml-topic_receive description: Auto-generated description bindings: kafka: bindingVersion: 0.5.0 messages: - $ref: "#/channels/xml-topic/messages/io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" yaml-topic_receive_receiveExamplePayload: action: receive channel: $ref: "#/channels/yaml-topic" title: yaml-topic_receive description: Auto-generated description bindings: kafka: bindingVersion: 0.5.0 messages: - $ref: "#/channels/yaml-topic/messages/io.github.springwolf.examples.kafka.dtos.YamlPayloadDto"" but was: "asyncapi: 3.0.0 info: title: Springwolf example project - Kafka version: 1.0.0 description: "Springwolf [example project](https://github.com/springwolf/springwolf-core/tree/main/springwolf-examples/springwolf-kafka-example)\ \ to demonstrate springwolfs abilities, including **markdown** support for descriptions." termsOfService: http://asyncapi.org/terms contact: name: springwolf url: https://github.com/springwolf/springwolf-core email: example@example.com license: name: Apache License 2.0 x-generator: springwolf defaultContentType: application/json servers: kafka-server: host: kafka:29092 protocol: kafka channels: another-topic: address: another-topic messages: io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto: $ref: "#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" bindings: kafka: bindingVersion: 0.5.0 avro-topic: address: avro-topic messages: io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto: $ref: "#/components/messages/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" bindings: kafka: bindingVersion: 0.5.0 example-topic: address: example-topic messages: io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto: $ref: "#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" bindings: kafka: bindingVersion: 0.5.0 integer-topic: address: integer-topic messages: java.lang.Integer: $ref: "#/components/messages/java.lang.Integer" bindings: kafka: bindingVersion: 0.5.0 multi-payload-topic: address: multi-payload-topic messages: io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto: $ref: "#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto: $ref: "#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" javax.money.MonetaryAmount: $ref: "#/components/messages/javax.money.MonetaryAmount" bindings: kafka: topic: multi-payload-topic partitions: 3 replicas: 1 topicConfiguration: cleanup.policy: - compact - delete retention.ms: 86400000 retention.bytes: -1 delete.retention.ms: 86400000 max.message.bytes: 1048588 bindingVersion: 0.5.0 no-payload-used-topic: address: no-payload-used-topic messages: PayloadNotUsed: $ref: "#/components/messages/PayloadNotUsed" bindings: kafka: bindingVersion: 0.5.0 nullable-topic: address: nullable-topic messages: io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto: $ref: "#/components/messages/io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" bindings: kafka: bindingVersion: 0.5.0 protobuf-topic: address: protobuf-topic messages: io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message: $ref: "#/components/messages/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" bindings: kafka: bindingVersion: 0.5.0 string-topic: address: string-topic messages: io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope: $ref: "#/components/messages/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope" java.lang.String: $ref: "#/components/messages/java.lang.String" bindings: kafka: bindingVersion: 0.5.0 topic-defined-via-asyncPublisher-annotation: address: topic-defined-via-asyncPublisher-annotation messages: io.github.springwolf.examples.kafka.d
ApiIntegrationWithActuatorIntegrationTest.asyncApiResourceArtifactTest(): springwolf-examples/springwolf-kafka-example/src/test/java/io/github/springwolf/examples/kafka/ApiIntegrationWithActuatorIntegrationTest.java#L48
org.opentest4j.AssertionFailedError: expected: "{ "asyncapi": "3.0.0", "info": { "title": "Springwolf example project - Kafka", "version": "1.0.0", "description": "Springwolf [example project](https://github.com/springwolf/springwolf-core/tree/main/springwolf-examples/springwolf-kafka-example) to demonstrate springwolfs abilities, including **markdown** support for descriptions.", "termsOfService": "http://asyncapi.org/terms", "contact": { "name": "springwolf", "url": "https://github.com/springwolf/springwolf-core", "email": "example@example.com" }, "license": { "name": "Apache License 2.0" }, "x-generator": "springwolf" }, "defaultContentType": "application/json", "servers": { "kafka-server": { "host": "localhost:9092", "protocol": "kafka" } }, "channels": { "another-topic": { "address": "another-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "avro-topic": { "address": "avro-topic", "messages": { "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "example-topic": { "address": "example-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "integer-topic": { "address": "integer-topic", "messages": { "java.lang.Integer": { "$ref": "#/components/messages/java.lang.Integer" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "multi-payload-topic": { "address": "multi-payload-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" }, "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" }, "javax.money.MonetaryAmount": { "$ref": "#/components/messages/javax.money.MonetaryAmount" } }, "bindings": { "kafka": { "topic": "multi-payload-topic", "partitions": 3, "replicas": 1, "topicConfiguration": { "cleanup.policy": [ "compact", "delete" ], "retention.ms": 86400000, "retention.bytes": -1, "delete.retention.ms": 86400000, "max.message.bytes": 1048588 }, "bindingVersion": "0.5.0" } } }, "no-payload-used-topic": { "address": "no-payload-used-topic", "messages": { "PayloadNotUsed": { "$ref": "#/components/messages/PayloadNotUsed" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "nullable-topic": { "address": "nullable-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "protobuf-topic": { "address": "protobuf-topic", "messages": { "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "string-topic": { "address": "string-topic", "messages": { "io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope" }, "java.lang.String": { "$ref": "#/components/messages/java.lang.String" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "topic-defined-via-asyncPublisher-annotation": { "address": "topic-defined-via-asyncPublisher-annotation", "messages": { "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" } }, "servers": [ { "$ref": "#/servers/kafka-server" } ], "bindings": { } }, "vehicle-topic": { "address": "vehicle-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "xml-topic": { "address": "xml-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "yaml-topic": { "address": "yaml-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } } }, "components": { "schemas": { "HeadersNotDocumented": { "title": "HeadersNotDocumented", "type": "object", "properties": { }, "description": "There can be headers, but they are not explicitly documented.", "examples": [ { } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "There can be headers, but they are not explicitly documented.", "title": "HeadersNotDocumented", "type": "object" } }, "HeadersNotUsed": { "title": "HeadersNotUsed", "type": "object", "properties": { }, "description": "No headers are present.", "examples": [ { } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "No headers are present.", "title": "HeadersNotUsed", "type": "object" } }, "PayloadNotUsed": { "title": "PayloadNotUsed", "type": "object", "properties": { }, "description": "No payload specified", "examples": [ { } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "No payload specified", "title": "PayloadNotUsed", "type": "object" } }, "SpringDefaultHeaderAndCloudEvent": { "title": "SpringDefaultHeaderAndCloudEvent", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" ] }, "ce_id": { "title": "ce_id", "type": "string", "description": "CloudEvent Id Header", "enum": [ "2c60089e-6f39-459d-8ced-2d6df7e4c03a" ], "examples": [ "2c60089e-6f39-459d-8ced-2d6df7e4c03a" ] }, "ce_source": { "title": "ce_source", "type": "string", "description": "CloudEvent Source Header", "enum": [ "http://localhost" ], "examples": [ "http://localhost" ] }, "ce_specversion": { "title": "ce_specversion", "type": "string", "description": "CloudEvent Spec Version Header", "enum": [ "1.0" ], "examples": [ "1.0" ] }, "ce_subject": { "title": "ce_subject", "type": "string", "description": "CloudEvent Subject Header", "enum": [ "Springwolf example project - Kafka" ], "examples": [ "Springwolf example project - Kafka" ] }, "ce_time": { "title": "ce_time", "type": "string", "description": "CloudEvent Time Header", "enum": [ "2023-10-28 20:01:23+00:00" ], "examples": [ "2023-10-28 20:01:23+00:00" ] }, "ce_type": { "title": "ce_type", "type": "string", "description": "CloudEvent Payload Type Header", "enum": [ "NestedPayloadDto.v1" ], "examples": [ "NestedPayloadDto.v1" ] }, "content-type": { "title": "content-type", "type": "string", "description": "CloudEvent Content-Type Header", "enum": [ "application/json" ], "examples": [ "application/json" ] } }, "description": "Spring __TypeId__ and CloudEvent Headers", "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto", "ce_id": "2c60089e-6f39-459d-8ced-2d6df7e4c03a", "ce_source": "http://localhost", "ce_specversion": "1.0", "ce_subject": "Springwolf example project - Kafka", "ce_time": "2023-10-28 20:01:23+00:00", "ce_type": "NestedPayloadDto.v1", "content-type": "application/json" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Spring __TypeId__ and CloudEvent Headers", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" ], "title": "__TypeId__", "type": "string" }, "ce_id": { "description": "CloudEvent Id Header", "enum": [ "2c60089e-6f39-459d-8ced-2d6df7e4c03a" ], "title": "ce_id", "type": "string" }, "ce_source": { "description": "CloudEvent Source Header", "enum": [ "http://localhost" ], "title": "ce_source", "type": "string" }, "ce_specversion": { "description": "CloudEvent Spec Version Header", "enum": [ "1.0" ], "title": "ce_specversion", "type": "string" }, "ce_subject": { "description": "CloudEvent Subject Header", "enum": [ "Springwolf example project - Kafka" ], "title": "ce_subject", "type": "string" }, "ce_time": { "description": "CloudEvent Time Header", "enum": [ "2023-10-28 20:01:23+00:00" ], "title": "ce_time", "type": "string" }, "ce_type": { "description": "CloudEvent Payload Type Header", "enum": [ "NestedPayloadDto.v1" ], "title": "ce_type", "type": "string" }, "content-type": { "description": "CloudEvent Content-Type Header", "enum": [ "application/json" ], "title": "content-type", "type": "string" } }, "title": "SpringDefaultHeaderAndCloudEvent", "type": "object" } }, "SpringKafkaDefaultHeaders-AnotherPayloadAvroDto": { "title": "SpringKafkaDefaultHeaders-AnotherPayloadAvroDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" ], "examples": [ "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-AnotherPayloadAvroDto", "type": "object" } }, "SpringKafkaDefaultHeaders-AnotherPayloadDto": { "title": "SpringKafkaDefaultHeaders-AnotherPayloadDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-AnotherPayloadDto", "type": "object" } }, "SpringKafkaDefaultHeaders-AnotherTopic": { "title": "SpringKafkaDefaultHeaders-AnotherTopic", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Type ID" }, "my_uuid_field": { "title": "my_uuid_field", "type": "string", "description": "Event identifier", "format": "uuid" } }, "examples": [ { "__TypeId__": "string", "my_uuid_field": "3fa85f64-5717-4562-b3fc-2c963f66afa6" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Type ID", "title": "__TypeId__", "type": "string" }, "my_uuid_field": { "description": "Event identifier", "format": "uuid", "title": "my_uuid_field", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-AnotherTopic", "type": "object" } }, "SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105": { "title": "SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" ] }, "kafka_offset": { "type": "integer", "format": "int32", "examples": [ 0 ] }, "kafka_receivedMessageKey": { "type": "string", "examples": [ "\"string\"" ] }, "kafka_recordMetadata": { "title": "ConsumerRecordMetadata", "type": "object", "examples": [ { } ] } }, "examples": [ { "ConsumerRecordMetadata": { }, "__TypeId__": "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto", "kafka_offset": 0, "kafka_receivedMessageKey": "string" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" ], "title": "__TypeId__", "type": "string" }, "kafka_offset": { "format": "int32", "type": "integer" }, "kafka_receivedMessageKey": { "type": "string" }, "kafka_recordMetadata": { "title": "ConsumerRecordMetadata", "type": "object" } }, "title": "SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105", "type": "object" } }, "SpringKafkaDefaultHeaders-Message": { "title": "SpringKafkaDefaultHeaders-Message", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" ], "examples": [ "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-Message", "type": "object" } }, "SpringKafkaDefaultHeaders-MonetaryAmount": { "title": "SpringKafkaDefaultHeaders-MonetaryAmount", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "javax.money.MonetaryAmount" ], "examples": [ "javax.money.MonetaryAmount" ] } }, "examples": [ { "__TypeId__": "javax.money.MonetaryAmount" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "javax.money.MonetaryAmount" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-MonetaryAmount", "type": "object" } }, "SpringKafkaDefaultHeaders-PayloadNotUsed": { "title": "SpringKafkaDefaultHeaders-PayloadNotUsed", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "PayloadNotUsed" ], "examples": [ "PayloadNotUsed" ] } }, "examples": [ { "__TypeId__": "PayloadNotUsed" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "PayloadNotUsed" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-PayloadNotUsed", "type": "object" } }, "SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto": { "title": "SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto", "type": "object" } }, "SpringKafkaDefaultHeaders-VehicleBase": { "title": "SpringKafkaDefaultHeaders-VehicleBase", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-VehicleBase", "type": "object" } }, "SpringKafkaDefaultHeaders-XmlPayloadDto": { "title": "SpringKafkaDefaultHeaders-XmlPayloadDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-XmlPayloadDto", "type": "object" } }, "SpringKafkaDefaultHeaders-YamlPayloadDto": { "title": "SpringKafkaDefaultHeaders-YamlPayloadDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-YamlPayloadDto", "type": "object" } }, "SpringKafkaDefaultHeaders-integer": { "title": "SpringKafkaDefaultHeaders-integer", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "java.lang.Integer" ], "examples": [ "java.lang.Integer" ] } }, "examples": [ { "__TypeId__": "java.lang.Integer" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "java.lang.Integer" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-integer", "type": "object" } }, "SpringKafkaDefaultHeaders-string": { "title": "SpringKafkaDefaultHeaders-string", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "java.lang.String" ], "examples": [ "java.lang.String" ] } }, "examples": [ { "__TypeId__": "java.lang.String" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "java.lang.String" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-string", "type": "object" } }, "io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope": { "type": "string", "description": "Payload description using @Schema annotation and @AsyncApiPayload within envelope class", "maxLength": 100, "examples": [ "\"string\"" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Payload description using @Schema annotation and @AsyncApiPayload within envelope class", "maxLength": 100, "type": "string" } }, "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto": { "title": "AnotherPayloadAvroDto", "type": "object", "properties": { "examplePayloadAvroDto": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dto.avro.ExamplePayloadAvroDto" }, "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3" ] } }, "examples": [ { "examplePayloadAvroDto": { "someLong": 0, "someString": "string" }, "someEnum": "FOO1" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "examplePayloadAvroDto": { "properties": { "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "ExamplePayloadAvroDto", "type": "object" }, "someEnum": { "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" } }, "title": "AnotherPayloadAvroDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dto.avro.ExamplePayloadAvroDto": { "title": "ExamplePayloadAvroDto", "type": "object", "properties": { "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "examples": [ { "someLong": 0, "someString": "string" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "ExamplePayloadAvroDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message": { "title": "Message", "type": "object", "properties": { "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3", "UNRECOGNIZED" ] }, "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "examples": [ { "someEnum": "FOO1", "someLong": 0, "someString": "string" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "someEnum": { "enum": [ "FOO1", "FOO2", "FOO3", "UNRECOGNIZED" ], "type": "string" }, "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "Message", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "title": "AnotherPayloadDto", "type": "object", "properties": { "example": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" }, "foo": { "type": "string", "description": "Foo field", "maxLength": 100, "examples": [ "bar" ] } }, "description": "Another payload model", "examples": [ { "example": { "someEnum": "FOO2", "someLong": 5, "someString": "some string value" }, "foo": "bar" } ], "required": [ "example" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Another payload model", "properties": { "example": { "description": "Example payload model demonstrating markdown text styling:\n**bold**, *cursive* and <u>underlined</u>\n", "properties": { "someEnum": { "description": "Some enum field", "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "description": "Some long field", "format": "int64", "minimum": 0, "type": "integer" }, "someString": { "description": "### Some string field with Markdown\n\n- **bold**\n- *cursive*\n- images: <img src=\"./assets/springwolf-logo.png\" alt=\"Springwolf\" height=\"50\"/>\n- and code blocks (json, http, java)\n ```json\n {\n \"key1\":\"value1\",\n \"key2\":\"value2\"\n }\n ```\n", "type": "string" } }, "required": [ "someEnum", "someString" ], "title": "ExamplePayloadDto", "type": "object" }, "foo": { "description": "Foo field", "maxLength": 100, "type": "string" } }, "required": [ "example" ], "title": "AnotherPayloadDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto": { "title": "ExamplePayloadDto", "type": "object", "properties": { "someEnum": { "type": "string", "description": "Some enum field", "enum": [ "FOO1", "FOO2", "FOO3" ], "examples": [ "FOO2" ] }, "someLong": { "type": "integer", "description": "Some long field", "format": "int64", "minimum": 0, "examples": [ 5 ] }, "someString": { "type": "string", "description": "### Some string field with Markdown\n\n- **bold**\n- *cursive*\n- images: <img src=\"./assets/springwolf-logo.png\" alt=\"Springwolf\" height=\"50\"/>\n- and code blocks (json, http, java)\n ```json\n {\n \"key1\":\"value1\",\n \"key2\":\"value2\"\n }\n ```\n", "examples": [ "some string value" ] } }, "description": "Example payload model demonstrating markdown text styling:\n**bold**, *cursive* and <u>underlined</u>\n", "examples": [ { "someEnum": "FOO2", "someLong": 5, "someString": "some string value" } ], "required": [ "someEnum", "someString" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Example payload model demonstrating markdown text styling:\n**bold**, *cursive* and <u>underlined</u>\n", "properties": { "someEnum": { "description": "Some enum field", "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "description": "Some long field", "format": "int64", "minimum": 0, "type": "integer" }, "someString": { "description": "### Some string field with Markdown\n\n- **bold**\n- *cursive*\n- images: <img src=\"./assets/springwolf-logo.png\" alt=\"Springwolf\" height=\"50\"/>\n- and code blocks (json, http, java)\n ```json\n {\n \"key1\":\"value1\",\n \"key2\":\"value2\"\n }\n ```\n", "type": "string" } }, "required": [ "someEnum", "someString" ], "title": "ExamplePayloadDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto": { "title": "NestedPayloadDto", "type": "object", "properties": { "examplePayloads": { "type": "array", "items": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" } }, "someStrings": { "type": "array", "items": { "type": "string", "description": "Some string field", "examples": [ "some string value" ] }, "uniqueItems": true } }, "description": "Payload model with nested complex types", "examples": [ { "examplePayloads": [ { "someEnum": "FOO2", "someLong": 5, "someString": "some string value" } ], "someStrings": [ "some string value" ] } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Payload model with nested complex types", "properties": { "examplePayloads": { "items": { "description": "Example payload model demonstrating markdown text styling:\n**bold**, *cursive* and <u>underlined</u>\n", "properties": { "someEnum": { "description": "Some enum field", "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "description": "Some long field", "format": "int64", "minimum": 0, "type": "integer" }, "someString": { "description": "### Some string field with Markdown\n\n- **bold**\n- *cursive*\n- images: <img src=\"./assets/springwolf-logo.png\" alt=\"Springwolf\" height=\"50\"/>\n- and code blocks (json, http, java)\n ```json\n {\n \"key1\":\"value1\",\n \"key2\":\"value2\"\n }\n ```\n", "type": "string" } }, "required": [ "someEnum", "someString" ], "title": "ExamplePayloadDto", "type": "object" }, "type": "array" }, "someStrings": { "items": { "description": "Some string field", "type": "string" }, "type": "array", "uniqueItems": true } }, "title": "NestedPayloadDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto": { "title": "RequiredAndNullablePayloadDto", "type": "object", "properties": { "enumField": { "type": [ "string", "null" ], "description": "Follows OpenAPI 3.1 spec", "enum": [ "COMPLEX1", "COMPLEX2", null ] }, "notRequiredField": { "type": "string", "description": "This field can be skipped, but value cannot be null" }, "requiredAndNullableField": { "type": [ "string", "null" ], "description": "This field can be skipped, or value can be null or present" }, "requiredButNullableField": { "type": [ "string", "null" ], "description": "This field must be present, but value can be null" }, "requiredField": { "type": "string", "description": "This field must be present, and value cannot be null" } }, "description": "Demonstrate required and nullable. Note, @Schema is only descriptive without nullability check", "examples": [ { "enumField": "COMPLEX1", "notRequiredField": "string", "requiredAndNullableField": "string", "requiredButNullableField": "string", "requiredField": "string" } ], "required": [ "enumField", "requiredButNullableField", "requiredField" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Demonstrate required and nullable. Note, @Schema is only descriptive without nullability check", "properties": { "enumField": { "description": "Follows OpenAPI 3.1 spec", "enum": [ "COMPLEX1", "COMPLEX2", null ], "type": [ "string", "null" ] }, "notRequiredField": { "description": "This field can be skipped, but value cannot be null", "type": "string" }, "requiredAndNullableField": { "description": "This field can be skipped, or value can be null or present", "type": [ "string", "null" ] }, "requiredButNullableField": { "description": "This field must be present, but value can be null", "type": [ "string", "null" ] }, "requiredField": { "description": "This field must be present, and value cannot be null", "type": "string" } }, "required": [ "enumField", "requiredButNullableField", "requiredField" ], "title": "RequiredAndNullablePayloadDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto": { "title": "XmlPayloadDto", "type": "string", "properties": { "someAttribute": { "type": "string" }, "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3" ] }, "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "examples": [ "<io.github.springwolf.examples.kafka.dtos.XmlPayloadDto someAttribute=\"string\"><someEnum>FOO1</someEnum><someLong>0</someLong><someString>string</someString></io.github.springwolf.examples.kafka.dtos.XmlPayloadDto>" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "someAttribute": { }, "someEnum": { "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "XmlPayloadDto", "type": "string" } }, "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto": { "title": "YamlPayloadDto", "type": "string", "properties": { "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3" ] }, "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "examples": [ "someEnum: FOO1\nsomeLong: 0\nsomeString: string\n" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "someEnum": { "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "YamlPayloadDto", "type": "string" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.EnginePower": { "title": "EnginePower", "type": "object", "properties": { "hp": { "type": "integer", "format": "int32" }, "torque": { "type": "integer", "format": "int32" } }, "examples": [ { "hp": 0, "torque": 0 } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "hp": { "format": "int32", "type": "integer" }, "torque": { } }, "title": "EnginePower", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase": { "discriminator": "vehicleType", "title": "VehicleBase", "type": "object", "properties": { "enginePower": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.EnginePower" }, "powerSource": { "type": "string" }, "topSpeed": { "type": "integer", "format": "int32" }, "vehicleType": { "type": "string" } }, "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "examples": [ { "batteryCapacity": 0, "chargeTime": 0, "enginePower": { "hp": 0, "torque": 0 }, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } ], "oneOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto" }, { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "oneOf": [ { "allOf": [ { }, { "properties": { "batteryCapacity": { }, "chargeTime": { "format": "int32", "type": "integer" } }, "type": "object" } ], "description": "Electric vehicle implementation of VehicleBase", "type": "object" }, { "allOf": [ { }, { "properties": { "fuelCapacity": { } }, "type": "object" } ], "description": "Gasoline vehicle implementation of VehicleBase", "type": "object" } ], "properties": { "enginePower": { "properties": { "hp": { }, "torque": { } }, "title": "EnginePower", "type": "object" }, "powerSource": { "type": "string" }, "topSpeed": { }, "vehicleType": { } }, "title": "VehicleBase", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto": { "type": "object", "description": "Electric vehicle implementation of VehicleBase", "examples": [ { "batteryCapacity": 0, "chargeTime": 0, "enginePower": { "hp": 0, "torque": 0 }, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } ], "allOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" }, { "type": "object", "properties": { "batteryCapacity": { "type": "integer", "format": "int32" }, "chargeTime": { "type": "integer", "format": "int32" } } } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "allOf": [ { "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "oneOf": [ { }, { "allOf": [ { }, { "properties": { "fuelCapacity": { "format": "int32", "type": "integer" } }, "type": "object" } ], "description": "Gasoline vehicle implementation of VehicleBase", "type": "object" } ], "properties": { "enginePower": { "properties": { "hp": { }, "torque": { } }, "title": "EnginePower", "type": "object" }, "powerSource": { "type": "string" }, "topSpeed": { }, "vehicleType": { } }, "title": "VehicleBase", "type": "object" }, { "properties": { "batteryCapacity": { }, "chargeTime": { } }, "type": "object" } ], "description": "Electric vehicle implementation of VehicleBase", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto": { "type": "object", "description": "Gasoline vehicle implementation of VehicleBase", "examples": [ { "enginePower": { "hp": 0, "torque": 0 }, "fuelCapacity": 0, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } ], "allOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" }, { "type": "object", "properties": { "fuelCapacity": { "type": "integer", "format": "int32" } } } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "allOf": [ { "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "oneOf": [ { "allOf": [ { }, { "properties": { "batteryCapacity": { }, "chargeTime": { "format": "int32", "type": "integer" } }, "type": "object" } ], "description": "Electric vehicle implementation of VehicleBase", "type": "object" }, { } ], "properties": { "enginePower": { "properties": { "hp": { }, "torque": { } }, "title": "EnginePower", "type": "object" }, "powerSource": { "type": "string" }, "topSpeed": { }, "vehicleType": { } }, "title": "VehicleBase", "type": "object" }, { "properties": { "fuelCapacity": { } }, "type": "object" } ], "description": "Gasoline vehicle implementation of VehicleBase", "type": "object" } }, "java.lang.Integer": { "type": "integer", "format": "int32", "examples": [ 0 ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "format": "int32", "type": "integer" } }, "java.lang.String": { "type": "string", "examples": [ "\"string\"" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "type": "string" } }, "javax.money.MonetaryAmount": { "type": "object", "properties": { "amount": { "type": "number", "exclusiveMinimum": 0.01, "examples": [ 99.99 ] }, "currency": { "type": "string", "examples": [ "USD" ] } }, "examples": [ { "amount": 99.99, "currency": "USD" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "amount": { "exclusiveMinimum": 0.01, "type": "number" }, "currency": { "type": "string" } }, "type": "object" } } }, "messages": { "PayloadNotUsed": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-PayloadNotUsed" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "title": "PayloadNotUsed", "type": "object", "properties": { }, "description": "No payload specified" } }, "name": "PayloadNotUsed", "title": "PayloadNotUsed", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope": { "headers": { "$ref": "#/components/schemas/HeadersNotUsed" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope" } }, "name": "StringPayload", "title": "StringEnvelope", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto": { "headers": { "$ref": "#/components/schemas/HeadersNotDocumented" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" } }, "name": "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto", "title": "AnotherPayloadAvroDto", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-Message" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" } }, "name": "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message", "title": "Message", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "headers": { "$ref": "#/
ApiSystemTest.asyncapiDocsShouldReturnTheCorrectJsonResponse(): springwolf-examples/springwolf-amqp-example/src/test/java/io/github/springwolf/examples/amqp/ApiSystemTest.java#L55
org.opentest4j.AssertionFailedError: expected: "{ "asyncapi": "3.0.0", "info": { "title": "Springwolf example project - Kafka", "version": "1.0.0", "description": "Springwolf [example project](https://github.com/springwolf/springwolf-core/tree/main/springwolf-examples/springwolf-kafka-example) to demonstrate springwolfs abilities, including **markdown** support for descriptions.", "termsOfService": "http://asyncapi.org/terms", "contact": { "name": "springwolf", "url": "https://github.com/springwolf/springwolf-core", "email": "example@example.com" }, "license": { "name": "Apache License 2.0" }, "x-generator": "springwolf" }, "defaultContentType": "application/json", "servers": { "kafka-server": { "host": "kafka:29092", "protocol": "kafka" } }, "channels": { "another-topic": { "address": "another-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "avro-topic": { "address": "avro-topic", "messages": { "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "example-topic": { "address": "example-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "integer-topic": { "address": "integer-topic", "messages": { "java.lang.Integer": { "$ref": "#/components/messages/java.lang.Integer" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "multi-payload-topic": { "address": "multi-payload-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" }, "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" }, "javax.money.MonetaryAmount": { "$ref": "#/components/messages/javax.money.MonetaryAmount" } }, "bindings": { "kafka": { "topic": "multi-payload-topic", "partitions": 3, "replicas": 1, "topicConfiguration": { "cleanup.policy": [ "compact", "delete" ], "retention.ms": 86400000, "retention.bytes": -1, "delete.retention.ms": 86400000, "max.message.bytes": 1048588 }, "bindingVersion": "0.5.0" } } }, "no-payload-used-topic": { "address": "no-payload-used-topic", "messages": { "PayloadNotUsed": { "$ref": "#/components/messages/PayloadNotUsed" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "nullable-topic": { "address": "nullable-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "protobuf-topic": { "address": "protobuf-topic", "messages": { "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "string-topic": { "address": "string-topic", "messages": { "io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope" }, "java.lang.String": { "$ref": "#/components/messages/java.lang.String" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "topic-defined-via-asyncPublisher-annotation": { "address": "topic-defined-via-asyncPublisher-annotation", "messages": { "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" } }, "servers": [ { "$ref": "#/servers/kafka-server" } ], "bindings": { } }, "vehicle-topic": { "address": "vehicle-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "xml-topic": { "address": "xml-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "yaml-topic": { "address": "yaml-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } } }, "components": { "schemas": { "HeadersNotDocumented": { "title": "HeadersNotDocumented", "type": "object", "properties": { }, "description": "There can be headers, but they are not explicitly documented.", "examples": [ { } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "There can be headers, but they are not explicitly documented.", "title": "HeadersNotDocumented", "type": "object" } }, "HeadersNotUsed": { "title": "HeadersNotUsed", "type": "object", "properties": { }, "description": "No headers are present.", "examples": [ { } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "No headers are present.", "title": "HeadersNotUsed", "type": "object" } }, "PayloadNotUsed": { "title": "PayloadNotUsed", "type": "object", "properties": { }, "description": "No payload specified", "examples": [ { } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "No payload specified", "title": "PayloadNotUsed", "type": "object" } }, "SpringDefaultHeaderAndCloudEvent": { "title": "SpringDefaultHeaderAndCloudEvent", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" ] }, "ce_id": { "title": "ce_id", "type": "string", "description": "CloudEvent Id Header", "enum": [ "2c60089e-6f39-459d-8ced-2d6df7e4c03a" ], "examples": [ "2c60089e-6f39-459d-8ced-2d6df7e4c03a" ] }, "ce_source": { "title": "ce_source", "type": "string", "description": "CloudEvent Source Header", "enum": [ "http://localhost" ], "examples": [ "http://localhost" ] }, "ce_specversion": { "title": "ce_specversion", "type": "string", "description": "CloudEvent Spec Version Header", "enum": [ "1.0" ], "examples": [ "1.0" ] }, "ce_subject": { "title": "ce_subject", "type": "string", "description": "CloudEvent Subject Header", "enum": [ "Springwolf example project - Kafka" ], "examples": [ "Springwolf example project - Kafka" ] }, "ce_time": { "title": "ce_time", "type": "string", "description": "CloudEvent Time Header", "enum": [ "2023-10-28 20:01:23+00:00" ], "examples": [ "2023-10-28 20:01:23+00:00" ] }, "ce_type": { "title": "ce_type", "type": "string", "description": "CloudEvent Payload Type Header", "enum": [ "NestedPayloadDto.v1" ], "examples": [ "NestedPayloadDto.v1" ] }, "content-type": { "title": "content-type", "type": "string", "description": "CloudEvent Content-Type Header", "enum": [ "application/json" ], "examples": [ "application/json" ] } }, "description": "Spring __TypeId__ and CloudEvent Headers", "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto", "ce_id": "2c60089e-6f39-459d-8ced-2d6df7e4c03a", "ce_source": "http://localhost", "ce_specversion": "1.0", "ce_subject": "Springwolf example project - Kafka", "ce_time": "2023-10-28 20:01:23+00:00", "ce_type": "NestedPayloadDto.v1", "content-type": "application/json" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Spring __TypeId__ and CloudEvent Headers", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" ], "title": "__TypeId__", "type": "string" }, "ce_id": { "description": "CloudEvent Id Header", "enum": [ "2c60089e-6f39-459d-8ced-2d6df7e4c03a" ], "title": "ce_id", "type": "string" }, "ce_source": { "description": "CloudEvent Source Header", "enum": [ "http://localhost" ], "title": "ce_source", "type": "string" }, "ce_specversion": { "description": "CloudEvent Spec Version Header", "enum": [ "1.0" ], "title": "ce_specversion", "type": "string" }, "ce_subject": { "description": "CloudEvent Subject Header", "enum": [ "Springwolf example project - Kafka" ], "title": "ce_subject", "type": "string" }, "ce_time": { "description": "CloudEvent Time Header", "enum": [ "2023-10-28 20:01:23+00:00" ], "title": "ce_time", "type": "string" }, "ce_type": { "description": "CloudEvent Payload Type Header", "enum": [ "NestedPayloadDto.v1" ], "title": "ce_type", "type": "string" }, "content-type": { "description": "CloudEvent Content-Type Header", "enum": [ "application/json" ], "title": "content-type", "type": "string" } }, "title": "SpringDefaultHeaderAndCloudEvent", "type": "object" } }, "SpringKafkaDefaultHeaders-AnotherPayloadAvroDto": { "title": "SpringKafkaDefaultHeaders-AnotherPayloadAvroDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" ], "examples": [ "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-AnotherPayloadAvroDto", "type": "object" } }, "SpringKafkaDefaultHeaders-AnotherPayloadDto": { "title": "SpringKafkaDefaultHeaders-AnotherPayloadDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-AnotherPayloadDto", "type": "object" } }, "SpringKafkaDefaultHeaders-AnotherTopic": { "title": "SpringKafkaDefaultHeaders-AnotherTopic", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Type ID" }, "my_uuid_field": { "title": "my_uuid_field", "type": "string", "description": "Event identifier", "format": "uuid" } }, "examples": [ { "__TypeId__": "string", "my_uuid_field": "3fa85f64-5717-4562-b3fc-2c963f66afa6" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Type ID", "title": "__TypeId__", "type": "string" }, "my_uuid_field": { "description": "Event identifier", "format": "uuid", "title": "my_uuid_field", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-AnotherTopic", "type": "object" } }, "SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105": { "title": "SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" ] }, "kafka_offset": { "type": "integer", "format": "int32", "examples": [ 0 ] }, "kafka_receivedMessageKey": { "type": "string", "examples": [ "\"string\"" ] }, "kafka_recordMetadata": { "title": "ConsumerRecordMetadata", "type": "object", "examples": [ { } ] } }, "examples": [ { "ConsumerRecordMetadata": { }, "__TypeId__": "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto", "kafka_offset": 0, "kafka_receivedMessageKey": "string" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" ], "title": "__TypeId__", "type": "string" }, "kafka_offset": { "format": "int32", "type": "integer" }, "kafka_receivedMessageKey": { "type": "string" }, "kafka_recordMetadata": { "title": "ConsumerRecordMetadata", "type": "object" } }, "title": "SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105", "type": "object" } }, "SpringKafkaDefaultHeaders-Message": { "title": "SpringKafkaDefaultHeaders-Message", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" ], "examples": [ "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-Message", "type": "object" } }, "SpringKafkaDefaultHeaders-MonetaryAmount": { "title": "SpringKafkaDefaultHeaders-MonetaryAmount", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "javax.money.MonetaryAmount" ], "examples": [ "javax.money.MonetaryAmount" ] } }, "examples": [ { "__TypeId__": "javax.money.MonetaryAmount" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "javax.money.MonetaryAmount" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-MonetaryAmount", "type": "object" } }, "SpringKafkaDefaultHeaders-PayloadNotUsed": { "title": "SpringKafkaDefaultHeaders-PayloadNotUsed", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "PayloadNotUsed" ], "examples": [ "PayloadNotUsed" ] } }, "examples": [ { "__TypeId__": "PayloadNotUsed" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "PayloadNotUsed" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-PayloadNotUsed", "type": "object" } }, "SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto": { "title": "SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto", "type": "object" } }, "SpringKafkaDefaultHeaders-VehicleBase": { "title": "SpringKafkaDefaultHeaders-VehicleBase", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-VehicleBase", "type": "object" } }, "SpringKafkaDefaultHeaders-XmlPayloadDto": { "title": "SpringKafkaDefaultHeaders-XmlPayloadDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-XmlPayloadDto", "type": "object" } }, "SpringKafkaDefaultHeaders-YamlPayloadDto": { "title": "SpringKafkaDefaultHeaders-YamlPayloadDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-YamlPayloadDto", "type": "object" } }, "SpringKafkaDefaultHeaders-integer": { "title": "SpringKafkaDefaultHeaders-integer", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "java.lang.Integer" ], "examples": [ "java.lang.Integer" ] } }, "examples": [ { "__TypeId__": "java.lang.Integer" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "java.lang.Integer" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-integer", "type": "object" } }, "SpringKafkaDefaultHeaders-string": { "title": "SpringKafkaDefaultHeaders-string", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "java.lang.String" ], "examples": [ "java.lang.String" ] } }, "examples": [ { "__TypeId__": "java.lang.String" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "java.lang.String" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-string", "type": "object" } }, "io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope": { "type": "string", "description": "Payload description using @Schema annotation and @AsyncApiPayload within envelope class", "maxLength": 100, "examples": [ "\"string\"" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Payload description using @Schema annotation and @AsyncApiPayload within envelope class", "maxLength": 100, "type": "string" } }, "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto": { "title": "AnotherPayloadAvroDto", "type": "object", "properties": { "examplePayloadAvroDto": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dto.avro.ExamplePayloadAvroDto" }, "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3" ] } }, "examples": [ { "examplePayloadAvroDto": { "someLong": 0, "someString": "string" }, "someEnum": "FOO1" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "examplePayloadAvroDto": { "properties": { "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "ExamplePayloadAvroDto", "type": "object" }, "someEnum": { "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" } }, "title": "AnotherPayloadAvroDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dto.avro.ExamplePayloadAvroDto": { "title": "ExamplePayloadAvroDto", "type": "object", "properties": { "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "examples": [ { "someLong": 0, "someString": "string" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "ExamplePayloadAvroDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message": { "title": "Message", "type": "object", "properties": { "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3", "UNRECOGNIZED" ] }, "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "examples": [ { "someEnum": "FOO1", "someLong": 0, "someString": "string" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "someEnum": { "enum": [ "FOO1", "FOO2", "FOO3", "UNRECOGNIZED" ], "type": "string" }, "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "Message", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "title": "AnotherPayloadDto", "type": "object", "properties": { "example": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" }, "foo": { "type": "string", "description": "Foo field", "maxLength": 100, "examples": [ "bar" ] } }, "description": "Another payload model", "examples": [ { "example": { "someEnum": "FOO2", "someLong": 5, "someString": "some string value" }, "foo": "bar" } ], "required": [ "example" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Another payload model", "properties": { "example": { "description": "Example payload model demonstrating markdown text styling:\n**bold**, *cursive* and <u>underlined</u>\n", "properties": { "someEnum": { "description": "Some enum field", "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "description": "Some long field", "format": "int64", "minimum": 0, "type": "integer" }, "someString": { "description": "### Some string field with Markdown\n\n- **bold**\n- *cursive*\n- images: <img src=\"./assets/springwolf-logo.png\" alt=\"Springwolf\" height=\"50\"/>\n- and code blocks (json, http, java)\n ```json\n {\n \"key1\":\"value1\",\n \"key2\":\"value2\"\n }\n ```\n", "type": "string" } }, "required": [ "someEnum", "someString" ], "title": "ExamplePayloadDto", "type": "object" }, "foo": { "description": "Foo field", "maxLength": 100, "type": "string" } }, "required": [ "example" ], "title": "AnotherPayloadDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto": { "title": "ExamplePayloadDto", "type": "object", "properties": { "someEnum": { "type": "string", "description": "Some enum field", "enum": [ "FOO1", "FOO2", "FOO3" ], "examples": [ "FOO2" ] }, "someLong": { "type": "integer", "description": "Some long field", "format": "int64", "minimum": 0, "examples": [ 5 ] }, "someString": { "type": "string", "description": "### Some string field with Markdown\n\n- **bold**\n- *cursive*\n- images: <img src=\"./assets/springwolf-logo.png\" alt=\"Springwolf\" height=\"50\"/>\n- and code blocks (json, http, java)\n ```json\n {\n \"key1\":\"value1\",\n \"key2\":\"value2\"\n }\n ```\n", "examples": [ "some string value" ] } }, "description": "Example payload model demonstrating markdown text styling:\n**bold**, *cursive* and <u>underlined</u>\n", "examples": [ { "someEnum": "FOO2", "someLong": 5, "someString": "some string value" } ], "required": [ "someEnum", "someString" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Example payload model demonstrating markdown text styling:\n**bold**, *cursive* and <u>underlined</u>\n", "properties": { "someEnum": { "description": "Some enum field", "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "description": "Some long field", "format": "int64", "minimum": 0, "type": "integer" }, "someString": { "description": "### Some string field with Markdown\n\n- **bold**\n- *cursive*\n- images: <img src=\"./assets/springwolf-logo.png\" alt=\"Springwolf\" height=\"50\"/>\n- and code blocks (json, http, java)\n ```json\n {\n \"key1\":\"value1\",\n \"key2\":\"value2\"\n }\n ```\n", "type": "string" } }, "required": [ "someEnum", "someString" ], "title": "ExamplePayloadDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto": { "title": "NestedPayloadDto", "type": "object", "properties": { "examplePayloads": { "type": "array", "items": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" } }, "someStrings": { "type": "array", "items": { "type": "string", "description": "Some string field", "examples": [ "some string value" ] }, "uniqueItems": true } }, "description": "Payload model with nested complex types", "examples": [ { "examplePayloads": [ { "someEnum": "FOO2", "someLong": 5, "someString": "some string value" } ], "someStrings": [ "some string value" ] } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Payload model with nested complex types", "properties": { "examplePayloads": { "items": { "description": "Example payload model demonstrating markdown text styling:\n**bold**, *cursive* and <u>underlined</u>\n", "properties": { "someEnum": { "description": "Some enum field", "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "description": "Some long field", "format": "int64", "minimum": 0, "type": "integer" }, "someString": { "description": "### Some string field with Markdown\n\n- **bold**\n- *cursive*\n- images: <img src=\"./assets/springwolf-logo.png\" alt=\"Springwolf\" height=\"50\"/>\n- and code blocks (json, http, java)\n ```json\n {\n \"key1\":\"value1\",\n \"key2\":\"value2\"\n }\n ```\n", "type": "string" } }, "required": [ "someEnum", "someString" ], "title": "ExamplePayloadDto", "type": "object" }, "type": "array" }, "someStrings": { "items": { "description": "Some string field", "type": "string" }, "type": "array", "uniqueItems": true } }, "title": "NestedPayloadDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto": { "title": "RequiredAndNullablePayloadDto", "type": "object", "properties": { "enumField": { "type": [ "string", "null" ], "description": "Follows OpenAPI 3.1 spec", "enum": [ "COMPLEX1", "COMPLEX2", null ] }, "notRequiredField": { "type": "string", "description": "This field can be skipped, but value cannot be null" }, "requiredAndNullableField": { "type": [ "string", "null" ], "description": "This field can be skipped, or value can be null or present" }, "requiredButNullableField": { "type": [ "string", "null" ], "description": "This field must be present, but value can be null" }, "requiredField": { "type": "string", "description": "This field must be present, and value cannot be null" } }, "description": "Demonstrate required and nullable. Note, @Schema is only descriptive without nullability check", "examples": [ { "enumField": "COMPLEX1", "notRequiredField": "string", "requiredAndNullableField": "string", "requiredButNullableField": "string", "requiredField": "string" } ], "required": [ "enumField", "requiredButNullableField", "requiredField" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Demonstrate required and nullable. Note, @Schema is only descriptive without nullability check", "properties": { "enumField": { "description": "Follows OpenAPI 3.1 spec", "enum": [ "COMPLEX1", "COMPLEX2", null ], "type": [ "string", "null" ] }, "notRequiredField": { "description": "This field can be skipped, but value cannot be null", "type": "string" }, "requiredAndNullableField": { "description": "This field can be skipped, or value can be null or present", "type": [ "string", "null" ] }, "requiredButNullableField": { "description": "This field must be present, but value can be null", "type": [ "string", "null" ] }, "requiredField": { "description": "This field must be present, and value cannot be null", "type": "string" } }, "required": [ "enumField", "requiredButNullableField", "requiredField" ], "title": "RequiredAndNullablePayloadDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto": { "title": "XmlPayloadDto", "type": "string", "properties": { "someAttribute": { "type": "string" }, "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3" ] }, "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "examples": [ "<io.github.springwolf.examples.kafka.dtos.XmlPayloadDto someAttribute=\"string\"><someEnum>FOO1</someEnum><someLong>0</someLong><someString>string</someString></io.github.springwolf.examples.kafka.dtos.XmlPayloadDto>" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "someAttribute": { }, "someEnum": { "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "XmlPayloadDto", "type": "string" } }, "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto": { "title": "YamlPayloadDto", "type": "string", "properties": { "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3" ] }, "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "examples": [ "someEnum: FOO1\nsomeLong: 0\nsomeString: string\n" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "someEnum": { "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "YamlPayloadDto", "type": "string" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.EnginePower": { "title": "EnginePower", "type": "object", "properties": { "hp": { "type": "integer", "format": "int32" }, "torque": { "type": "integer", "format": "int32" } }, "examples": [ { "hp": 0, "torque": 0 } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "hp": { "format": "int32", "type": "integer" }, "torque": { } }, "title": "EnginePower", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase": { "discriminator": "vehicleType", "title": "VehicleBase", "type": "object", "properties": { "enginePower": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.EnginePower" }, "powerSource": { "type": "string" }, "topSpeed": { "type": "integer", "format": "int32" }, "vehicleType": { "type": "string" } }, "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "examples": [ { "batteryCapacity": 0, "chargeTime": 0, "enginePower": { "hp": 0, "torque": 0 }, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } ], "oneOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto" }, { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "oneOf": [ { "allOf": [ { }, { "properties": { "batteryCapacity": { }, "chargeTime": { "format": "int32", "type": "integer" } }, "type": "object" } ], "description": "Electric vehicle implementation of VehicleBase", "type": "object" }, { "allOf": [ { }, { "properties": { "fuelCapacity": { } }, "type": "object" } ], "description": "Gasoline vehicle implementation of VehicleBase", "type": "object" } ], "properties": { "enginePower": { "properties": { "hp": { }, "torque": { } }, "title": "EnginePower", "type": "object" }, "powerSource": { "type": "string" }, "topSpeed": { }, "vehicleType": { } }, "title": "VehicleBase", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto": { "type": "object", "description": "Electric vehicle implementation of VehicleBase", "examples": [ { "batteryCapacity": 0, "chargeTime": 0, "enginePower": { "hp": 0, "torque": 0 }, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } ], "allOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" }, { "type": "object", "properties": { "batteryCapacity": { "type": "integer", "format": "int32" }, "chargeTime": { "type": "integer", "format": "int32" } } } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "allOf": [ { "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "oneOf": [ { }, { "allOf": [ { }, { "properties": { "fuelCapacity": { "format": "int32", "type": "integer" } }, "type": "object" } ], "description": "Gasoline vehicle implementation of VehicleBase", "type": "object" } ], "properties": { "enginePower": { "properties": { "hp": { }, "torque": { } }, "title": "EnginePower", "type": "object" }, "powerSource": { "type": "string" }, "topSpeed": { }, "vehicleType": { } }, "title": "VehicleBase", "type": "object" }, { "properties": { "batteryCapacity": { }, "chargeTime": { } }, "type": "object" } ], "description": "Electric vehicle implementation of VehicleBase", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto": { "type": "object", "description": "Gasoline vehicle implementation of VehicleBase", "examples": [ { "enginePower": { "hp": 0, "torque": 0 }, "fuelCapacity": 0, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } ], "allOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" }, { "type": "object", "properties": { "fuelCapacity": { "type": "integer", "format": "int32" } } } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "allOf": [ { "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "oneOf": [ { "allOf": [ { }, { "properties": { "batteryCapacity": { }, "chargeTime": { "format": "int32", "type": "integer" } }, "type": "object" } ], "description": "Electric vehicle implementation of VehicleBase", "type": "object" }, { } ], "properties": { "enginePower": { "properties": { "hp": { }, "torque": { } }, "title": "EnginePower", "type": "object" }, "powerSource": { "type": "string" }, "topSpeed": { }, "vehicleType": { } }, "title": "VehicleBase", "type": "object" }, { "properties": { "fuelCapacity": { } }, "type": "object" } ], "description": "Gasoline vehicle implementation of VehicleBase", "type": "object" } }, "java.lang.Integer": { "type": "integer", "format": "int32", "examples": [ 0 ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "format": "int32", "type": "integer" } }, "java.lang.String": { "type": "string", "examples": [ "\"string\"" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "type": "string" } }, "javax.money.MonetaryAmount": { "type": "object", "properties": { "amount": { "type": "number", "exclusiveMinimum": 0.01, "examples": [ 99.99 ] }, "currency": { "type": "string", "examples": [ "USD" ] } }, "examples": [ { "amount": 99.99, "currency": "USD" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "amount": { "exclusiveMinimum": 0.01, "type": "number" }, "currency": { "type": "string" } }, "type": "object" } } }, "messages": { "PayloadNotUsed": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-PayloadNotUsed" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "title": "PayloadNotUsed", "type": "object", "properties": { }, "description": "No payload specified" } }, "name": "PayloadNotUsed", "title": "PayloadNotUsed", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope": { "headers": { "$ref": "#/components/schemas/HeadersNotUsed" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope" } }, "name": "StringPayload", "title": "StringEnvelope", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto": { "headers": { "$ref": "#/components/schemas/HeadersNotDocumented" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" } }, "name": "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto", "title": "AnotherPayloadAvroDto", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-Message" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" } }, "name": "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message", "title": "Message", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "headers": { "$ref": "#/com
OpenApiGeneratorSystemTest.asyncApiResourceArtifactTest(): springwolf-examples/springwolf-kafka-example/src/test/java/io/github/springwolf/examples/kafka/OpenApiGeneratorSystemTest.java#L36
org.opentest4j.AssertionFailedError: expected: "{"asyncapi":"3.0.0","info":{"title":"Springwolfexampleproject-Kafka","version":"1.0.0","description":"Springwolf[exampleproject](https://github.com/springwolf/springwolf-core/tree/main/springwolf-examples/springwolf-kafka-example)todemonstratespringwolfsabilities,including**markdown**supportfordescriptions.","termsOfService":"http://asyncapi.org/terms","contact":{"name":"springwolf","url":"https://github.com/springwolf/springwolf-core","email":"example@example.com"},"license":{"name":"ApacheLicense2.0"},"x-generator":"springwolf"},"defaultContentType":"application/json","servers":{"kafka-server":{"host":"kafka:29092","protocol":"kafka"}},"channels":{"another-topic":{"address":"another-topic","messages":{"io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"avro-topic":{"address":"avro-topic","messages":{"io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"example-topic":{"address":"example-topic","messages":{"io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"integer-topic":{"address":"integer-topic","messages":{"java.lang.Integer":{"$ref":"#/components/messages/java.lang.Integer"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"multi-payload-topic":{"address":"multi-payload-topic","messages":{"io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto"},"io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto"},"javax.money.MonetaryAmount":{"$ref":"#/components/messages/javax.money.MonetaryAmount"}},"bindings":{"kafka":{"topic":"multi-payload-topic","partitions":3,"replicas":1,"topicConfiguration":{"cleanup.policy":["compact","delete"],"retention.ms":86400000,"retention.bytes":-1,"delete.retention.ms":86400000,"max.message.bytes":1048588},"bindingVersion":"0.5.0"}}},"no-payload-used-topic":{"address":"no-payload-used-topic","messages":{"PayloadNotUsed":{"$ref":"#/components/messages/PayloadNotUsed"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"nullable-topic":{"address":"nullable-topic","messages":{"io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"protobuf-topic":{"address":"protobuf-topic","messages":{"io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"string-topic":{"address":"string-topic","messages":{"io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope"},"java.lang.String":{"$ref":"#/components/messages/java.lang.String"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"topic-defined-via-asyncPublisher-annotation":{"address":"topic-defined-via-asyncPublisher-annotation","messages":{"io.github.springwolf.examples.kafka.dtos.NestedPayloadDto":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dtos.NestedPayloadDto"}},"servers":[{"$ref":"#/servers/kafka-server"}],"bindings":{}},"vehicle-topic":{"address":"vehicle-topic","messages":{"io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"xml-topic":{"address":"xml-topic","messages":{"io.github.springwolf.examples.kafka.dtos.XmlPayloadDto":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dtos.XmlPayloadDto"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"yaml-topic":{"address":"yaml-topic","messages":{"io.github.springwolf.examples.kafka.dtos.YamlPayloadDto":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dtos.YamlPayloadDto"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}}},"components":{"schemas":{"HeadersNotDocumented":{"title":"HeadersNotDocumented","type":"object","properties":{},"description":"Therecanbeheaders,buttheyarenotexplicitlydocumented.","examples":[{}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","description":"Therecanbeheaders,buttheyarenotexplicitlydocumented.","title":"HeadersNotDocumented","type":"object"}},"HeadersNotUsed":{"title":"HeadersNotUsed","type":"object","properties":{},"description":"Noheadersarepresent.","examples":[{}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","description":"Noheadersarepresent.","title":"HeadersNotUsed","type":"object"}},"PayloadNotUsed":{"title":"PayloadNotUsed","type":"object","properties":{},"description":"Nopayloadspecified","examples":[{}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","description":"Nopayloadspecified","title":"PayloadNotUsed","type":"object"}},"SpringDefaultHeaderAndCloudEvent":{"title":"SpringDefaultHeaderAndCloudEvent","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.NestedPayloadDto"],"examples":["io.github.springwolf.examples.kafka.dtos.NestedPayloadDto"]},"ce_id":{"title":"ce_id","type":"string","description":"CloudEventIdHeader","enum":["2c60089e-6f39-459d-8ced-2d6df7e4c03a"],"examples":["2c60089e-6f39-459d-8ced-2d6df7e4c03a"]},"ce_source":{"title":"ce_source","type":"string","description":"CloudEventSourceHeader","enum":["http://localhost"],"examples":["http://localhost"]},"ce_specversion":{"title":"ce_specversion","type":"string","description":"CloudEventSpecVersionHeader","enum":["1.0"],"examples":["1.0"]},"ce_subject":{"title":"ce_subject","type":"string","description":"CloudEventSubjectHeader","enum":["Springwolfexampleproject-Kafka"],"examples":["Springwolfexampleproject-Kafka"]},"ce_time":{"title":"ce_time","type":"string","description":"CloudEventTimeHeader","enum":["2023-10-2820:01:23+00:00"],"examples":["2023-10-2820:01:23+00:00"]},"ce_type":{"title":"ce_type","type":"string","description":"CloudEventPayloadTypeHeader","enum":["NestedPayloadDto.v1"],"examples":["NestedPayloadDto.v1"]},"content-type":{"title":"content-type","type":"string","description":"CloudEventContent-TypeHeader","enum":["application/json"],"examples":["application/json"]}},"description":"Spring__TypeId__andCloudEventHeaders","examples":[{"__TypeId__":"io.github.springwolf.examples.kafka.dtos.NestedPayloadDto","ce_id":"2c60089e-6f39-459d-8ced-2d6df7e4c03a","ce_source":"http://localhost","ce_specversion":"1.0","ce_subject":"Springwolfexampleproject-Kafka","ce_time":"2023-10-2820:01:23+00:00","ce_type":"NestedPayloadDto.v1","content-type":"application/json"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","description":"Spring__TypeId__andCloudEventHeaders","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.NestedPayloadDto"],"title":"__TypeId__","type":"string"},"ce_id":{"description":"CloudEventIdHeader","enum":["2c60089e-6f39-459d-8ced-2d6df7e4c03a"],"title":"ce_id","type":"string"},"ce_source":{"description":"CloudEventSourceHeader","enum":["http://localhost"],"title":"ce_source","type":"string"},"ce_specversion":{"description":"CloudEventSpecVersionHeader","enum":["1.0"],"title":"ce_specversion","type":"string"},"ce_subject":{"description":"CloudEventSubjectHeader","enum":["Springwolfexampleproject-Kafka"],"title":"ce_subject","type":"string"},"ce_time":{"description":"CloudEventTimeHeader","enum":["2023-10-2820:01:23+00:00"],"title":"ce_time","type":"string"},"ce_type":{"description":"CloudEventPayloadTypeHeader","enum":["NestedPayloadDto.v1"],"title":"ce_type","type":"string"},"content-type":{"description":"CloudEventContent-TypeHeader","enum":["application/json"],"title":"content-type","type":"string"}},"title":"SpringDefaultHeaderAndCloudEvent","type":"object"}},"SpringKafkaDefaultHeaders-AnotherPayloadAvroDto":{"title":"SpringKafkaDefaultHeaders-AnotherPayloadAvroDto","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto"],"examples":["io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto"]}},"examples":[{"__TypeId__":"io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-AnotherPayloadAvroDto","type":"object"}},"SpringKafkaDefaultHeaders-AnotherPayloadDto":{"title":"SpringKafkaDefaultHeaders-AnotherPayloadDto","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto"],"examples":["io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto"]}},"examples":[{"__TypeId__":"io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-AnotherPayloadDto","type":"object"}},"SpringKafkaDefaultHeaders-AnotherTopic":{"title":"SpringKafkaDefaultHeaders-AnotherTopic","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"TypeID"},"my_uuid_field":{"title":"my_uuid_field","type":"string","description":"Eventidentifier","format":"uuid"}},"examples":[{"__TypeId__":"string","my_uuid_field":"3fa85f64-5717-4562-b3fc-2c963f66afa6"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"TypeID","title":"__TypeId__","type":"string"},"my_uuid_field":{"description":"Eventidentifier","format":"uuid","title":"my_uuid_field","type":"string"}},"title":"SpringKafkaDefaultHeaders-AnotherTopic","type":"object"}},"SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105":{"title":"SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto"],"examples":["io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto"]},"kafka_offset":{"type":"integer","format":"int32","examples":[0]},"kafka_receivedMessageKey":{"type":"string","examples":["\"string\""]},"kafka_recordMetadata":{"title":"ConsumerRecordMetadata","type":"object","examples":[{}]}},"examples":[{"ConsumerRecordMetadata":{},"__TypeId__":"io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto","kafka_offset":0,"kafka_receivedMessageKey":"string"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto"],"title":"__TypeId__","type":"string"},"kafka_offset":{"format":"int32","type":"integer"},"kafka_receivedMessageKey":{"type":"string"},"kafka_recordMetadata":{"title":"ConsumerRecordMetadata","type":"object"}},"title":"SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105","type":"object"}},"SpringKafkaDefaultHeaders-Message":{"title":"SpringKafkaDefaultHeaders-Message","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message"],"examples":["io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message"]}},"examples":[{"__TypeId__":"io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-Message","type":"object"}},"SpringKafkaDefaultHeaders-MonetaryAmount":{"title":"SpringKafkaDefaultHeaders-MonetaryAmount","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["javax.money.MonetaryAmount"],"examples":["javax.money.MonetaryAmount"]}},"examples":[{"__TypeId__":"javax.money.MonetaryAmount"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["javax.money.MonetaryAmount"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-MonetaryAmount","type":"object"}},"SpringKafkaDefaultHeaders-PayloadNotUsed":{"title":"SpringKafkaDefaultHeaders-PayloadNotUsed","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["PayloadNotUsed"],"examples":["PayloadNotUsed"]}},"examples":[{"__TypeId__":"PayloadNotUsed"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["PayloadNotUsed"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-PayloadNotUsed","type":"object"}},"SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto":{"title":"SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto"],"examples":["io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto"]}},"examples":[{"__TypeId__":"io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto","type":"object"}},"SpringKafkaDefaultHeaders-VehicleBase":{"title":"SpringKafkaDefaultHeaders-VehicleBase","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase"],"examples":["io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase"]}},"examples":[{"__TypeId__":"io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-VehicleBase","type":"object"}},"SpringKafkaDefaultHeaders-XmlPayloadDto":{"title":"SpringKafkaDefaultHeaders-XmlPayloadDto","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.XmlPayloadDto"],"examples":["io.github.springwolf.examples.kafka.dtos.XmlPayloadDto"]}},"examples":[{"__TypeId__":"io.github.springwolf.examples.kafka.dtos.XmlPayloadDto"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.XmlPayloadDto"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-XmlPayloadDto","type":"object"}},"SpringKafkaDefaultHeaders-YamlPayloadDto":{"title":"SpringKafkaDefaultHeaders-YamlPayloadDto","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.YamlPayloadDto"],"examples":["io.github.springwolf.examples.kafka.dtos.YamlPayloadDto"]}},"examples":[{"__TypeId__":"io.github.springwolf.examples.kafka.dtos.YamlPayloadDto"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.YamlPayloadDto"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-YamlPayloadDto","type":"object"}},"SpringKafkaDefaultHeaders-integer":{"title":"SpringKafkaDefaultHeaders-integer","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["java.lang.Integer"],"examples":["java.lang.Integer"]}},"examples":[{"__TypeId__":"java.lang.Integer"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["java.lang.Integer"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-integer","type":"object"}},"SpringKafkaDefaultHeaders-string":{"title":"SpringKafkaDefaultHeaders-string","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["java.lang.String"],"examples":["java.lang.String"]}},"examples":[{"__TypeId__":"java.lang.String"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["java.lang.String"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-string","type":"object"}},"io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope":{"type":"string","description":"Payloaddescriptionusing@Schemaannotationand@AsyncApiPayloadwithinenvelopeclass","maxLength":100,"examples":["\"string\""],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","description":"Payloaddescriptionusing@Schemaannotationand@AsyncApiPayloadwithinenvelopeclass","maxLength":100,"type":"string"}},"io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto":{"title":"AnotherPayloadAvroDto","type":"object","properties":{"examplePayloadAvroDto":{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.dto.avro.ExamplePayloadAvroDto"},"someEnum":{"type":"string","enum":["FOO1","FOO2","FOO3"]}},"examples":[{"examplePayloadAvroDto":{"someLong":0,"someString":"string"},"someEnum":"FOO1"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"examplePayloadAvroDto":{"properties":{"someLong":{"format":"int64","type":"integer"},"someString":{"type":"string"}},"title":"ExamplePayloadAvroDto","type":"object"},"someEnum":{"enum":["FOO1","FOO2","FOO3"],"type":"string"}},"title":"AnotherPayloadAvroDto","type":"object"}},"io.github.springwolf.examples.kafka.dto.avro.ExamplePayloadAvroDto":{"title":"ExamplePayloadAvroDto","type":"object","properties":{"someLong":{"type":"integer","format":"int64"},"someString":{"type":"string"}},"examples":[{"someLong":0,"someString":"string"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"someLong":{"format":"int64","type":"integer"},"someString":{"type":"string"}},"title":"ExamplePayloadAvroDto","type":"object"}},"io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message":{"title":"Message","type":"object","properties":{"someEnum":{"type":"string","enum":["FOO1","FOO2","FOO3","UNRECOGNIZED"]},"someLong":{"type":"integer","format":"int64"},"someString":{"type":"string"}},"examples":[{"someEnum":"FOO1","someLong":0,"someString":"string"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"someEnum":{"enum":["FOO1","FOO2","FOO3","UNRECOGNIZED"],"type":"string"},"someLong":{"format":"int64","type":"integer"},"someString":{"type":"string"}},"title":"Message","type":"object"}},"io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto":{"title":"AnotherPayloadDto","type":"object","properties":{"example":{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto"},"foo":{"type":"string","description":"Foofield","maxLength":100,"examples":["bar"]}},"description":"Anotherpayloadmodel","examples":[{"example":{"someEnum":"FOO2","someLong":5,"someString":"somestringvalue"},"foo":"bar"}],"required":["example"],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","description":"Anotherpayloadmodel","properties":{"example":{"description":"Examplepayloadmodeldemonstratingmarkdowntextstyling:\n**bold**,*cursive*and<u>underlined</u>\n","properties":{"someEnum":{"description":"Someenumfield","enum":["FOO1","FOO2","FOO3"],"type":"string"},"someLong":{"description":"Somelongfield","format":"int64","minimum":0,"type":"integer"},"someString":{"description":"###SomestringfieldwithMarkdown\n\n-**bold**\n-*cursive*\n-images:<imgsrc=\"./assets/springwolf-logo.png\"alt=\"Springwolf\"height=\"50\"/>\n-andcodeblocks(json,http,java)\n```json\n{\n\"key1\":\"value1\",\n\"key2\":\"value2\"\n}\n```\n","type":"string"}},"required":["someEnum","someString"],"title":"ExamplePayloadDto","type":"object"},"foo":{"description":"Foofield","maxLength":100,"type":"string"}},"required":["example"],"title":"AnotherPayloadDto","type":"object"}},"io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto":{"title":"ExamplePayloadDto","type":"object","properties":{"someEnum":{"type":"string","description":"Someenumfield","enum":["FOO1","FOO2","FOO3"],"examples":["FOO2"]},"someLong":{"type":"integer","description":"Somelongfield","format":"int64","minimum":0,"examples":[5]},"someString":{"type":"string","description":"###SomestringfieldwithMarkdown\n\n-**bold**\n-*cursive*\n-images:<imgsrc=\"./assets/springwolf-logo.png\"alt=\"Springwolf\"height=\"50\"/>\n-andcodeblocks(json,http,java)\n```json\n{\n\"key1\":\"value1\",\n\"key2\":\"value2\"\n}\n```\n","examples":["somestringvalue"]}},"description":"Examplepayloadmodeldemonstratingmarkdowntextstyling:\n**bold**,*cursive*and<u>underlined</u>\n","examples":[{"someEnum":"FOO2","someLong":5,"someString":"somestringvalue"}],"required":["someEnum","someString"],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","description":"Examplepayloadmodeldemonstratingmarkdowntextstyling:\n**bold**,*cursive*and<u>underlined</u>\n","properties":{"someEnum":{"description":"Someenumfield","enum":["FOO1","FOO2","FOO3"],"type":"string"},"someLong":{"description":"Somelongfield","format":"int64","minimum":0,"type":"integer"},"someString":{"description":"###SomestringfieldwithMarkdown\n\n-**bold**\n-*cursive*\n-images:<imgsrc=\"./assets/springwolf-logo.png\"alt=\"Springwolf\"height=\"50\"/>\n-andcodeblocks(json,http,java)\n```json\n{\n\"key1\":\"value1\",\n\"key2\":\"value2\"\n}\n```\n","type":"string"}},"required":["someEnum","someString"],"title":"ExamplePayloadDto","type":"object"}},"io.github.springwolf.examples.kafka.dtos.NestedPayloadDto":{"title":"NestedPayloadDto","type":"object","properties":{"examplePayloads":{"type":"array","items":{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto"}},"someStrings":{"type":"array","items":{"type":"string","description":"Somestringfield","examples":["somestringvalue"]},"uniqueItems":true}},"description":"Payloadmodelwithnestedcomplextypes","examples":[{"examplePayloads":[{"someEnum":"FOO2","someLong":5,"someString":"somestringvalue"}],"someStrings":["somestringvalue"]}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","description":"Payloadmodelwithnestedcomplextypes","properties":{"examplePayloads":{"items":{"description":"Examplepayloadmodeldemonstratingmarkdowntextstyling:\n**bold**,*cursive*and<u>underlined</u>\n","properties":{"someEnum":{"description":"Someenumfield","enum":["FOO1","FOO2","FOO3"],"type":"string"},"someLong":{"description":"Somelongfield","format":"int64","minimum":0,"type":"integer"},"someString":{"description":"###SomestringfieldwithMarkdown\n\n-**bold**\n-*cursive*\n-images:<imgsrc=\"./assets/springwolf-logo.png\"alt=\"Springwolf\"height=\"50\"/>\n-andcodeblocks(json,http,java)\n```json\n{\n\"key1\":\"value1\",\n\"key2\":\"value2\"\n}\n```\n","type":"string"}},"required":["someEnum","someString"],"title":"ExamplePayloadDto","type":"object"},"type":"array"},"someStrings":{"items":{"description":"Somestringfield","type":"string"},"type":"array","uniqueItems":true}},"title":"NestedPayloadDto","type":"object"}},"io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto":{"title":"RequiredAndNullablePayloadDto","type":"object","properties":{"enumField":{"type":["string","null"],"description":"FollowsOpenAPI3.1spec","enum":["COMPLEX1","COMPLEX2",null]},"notRequiredField":{"type":"string","description":"Thisfieldcanbeskipped,butvaluecannotbenull"},"requiredAndNullableField":{"type":["string","null"],"description":"Thisfieldcanbeskipped,orvaluecanbenullorpresent"},"requiredButNullableField":{"type":["string","null"],"description":"Thisfieldmustbepresent,butvaluecanbenull"},"requiredField":{"type":"string","description":"Thisfieldmustbepresent,andvaluecannotbenull"}},"description":"Demonstraterequiredandnullable.Note,@Schemaisonlydescriptivewithoutnullabilitycheck","examples":[{"enumField":"COMPLEX1","notRequiredField":"string","requiredAndNullableField":"string","requiredButNullableField":"string","requiredField":"string"}],"required":["enumField","requiredButNullableField","requiredField"],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","description":"Demonstraterequiredandnullable.Note,@Schemaisonlydescriptivewithoutnullabilitycheck","properties":{"enumField":{"description":"FollowsOpenAPI3.1spec","enum":["COMPLEX1","COMPLEX2",null],"type":["string","null"]},"notRequiredField":{"description":"Thisfieldcanbeskipped,butvaluecannotbenull","type":"string"},"requiredAndNullableField":{"description":"Thisfieldcanbeskipped,orvaluecanbenullorpresent","type":["string","null"]},"requiredButNullableField":{"description":"Thisfieldmustbepresent,butvaluecanbenull","type":["string","null"]},"requiredField":{"description":"Thisfieldmustbepresent,andvaluecannotbenull","type":"string"}},"required":["enumField","requiredButNullableField","requiredField"],"title":"RequiredAndNullablePayloadDto","type":"object"}},"io.github.springwolf.examples.kafka.dtos.XmlPayloadDto":{"title":"XmlPayloadDto","type":"string","properties":{"someAttribute":{"type":"string"},"someEnum":{"type":"string","enum":["FOO1","FOO2","FOO3"]},"someLong":{"type":"integer","format":"int64"},"someString":{"type":"string"}},"examples":["<io.github.springwolf.examples.kafka.dtos.XmlPayloadDtosomeAttribute=\"string\"><someEnum>FOO1</someEnum><someLong>0</someLong><someString>string</someString></io.github.springwolf.examples.kafka.dtos.XmlPayloadDto>"],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"someAttribute":{},"someEnum":{"enum":["FOO1","FOO2","FOO3"],"type":"string"},"someLong":{"format":"int64","type":"integer"},"someString":{"type":"string"}},"title":"XmlPayloadDto","type":"string"}},"io.github.springwolf.examples.kafka.dtos.YamlPayloadDto":{"title":"YamlPayloadDto","type":"string","properties":{"someEnum":{"type":"string","enum":["FOO1","FOO2","FOO3"]},"someLong":{"type":"integer","format":"int64"},"someString":{"type":"string"}},"examples":["someEnum:FOO1\nsomeLong:0\nsomeString:string\n"],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"someEnum":{"enum":["FOO1","FOO2","FOO3"],"type":"string"},"someLong":{"format":"int64","type":"integer"},"someString":{"type":"string"}},"title":"YamlPayloadDto","type":"string"}},"io.github.springwolf.examples.kafka.dtos.discriminator.EnginePower":{"title":"EnginePower","type":"object","properties":{"hp":{"type":"integer","format":"int32"},"torque":{"type":"integer","format":"int32"}},"examples":[{"hp":0,"torque":0}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"hp":{"format":"int32","type":"integer"},"torque":{}},"title":"EnginePower","type":"object"}},"io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase":{"discriminator":"vehicleType","title":"VehicleBase","type":"object","properties":{"enginePower":{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.EnginePower"},"powerSource":{"type":"string"},"topSpeed":{"type":"integer","format":"int32"},"vehicleType":{"type":"string"}},"description":"Demonstratestheuseofdiscriminatorforpolymorphicdeserialization(notpublishable)","examples":[{"batteryCapacity":0,"chargeTime":0,"enginePower":{"hp":0,"torque":0},"powerSource":"string","topSpeed":0,"vehicleType":"string"}],"oneOf":[{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto"},{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","description":"Demonstratestheuseofdiscriminatorforpolymorphicdeserialization(notpublishable)","oneOf":[{"allOf":[{},{"properties":{"batteryCapacity":{},"chargeTime":{"format":"int32","type":"integer"}},"type":"object"}],"description":"ElectricvehicleimplementationofVehicleBase","type":"object"},{"allOf":[{},{"properties":{"fuelCapacity":{}},"type":"object"}],"description":"GasolinevehicleimplementationofVehicleBase","type":"object"}],"properties":{"enginePower":{"properties":{"hp":{},"torque":{}},"title":"EnginePower","type":"object"},"powerSource":{"type":"string"},"topSpeed":{},"vehicleType":{}},"title":"VehicleBase","type":"object"}},"io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto":{"type":"object","description":"ElectricvehicleimplementationofVehicleBase","examples":[{"batteryCapacity":0,"chargeTime":0,"enginePower":{"hp":0,"torque":0},"powerSource":"string","topSpeed":0,"vehicleType":"string"}],"allOf":[{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase"},{"type":"object","properties":{"batteryCapacity":{"type":"integer","format":"int32"},"chargeTime":{"type":"integer","format":"int32"}}}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","allOf":[{"description":"Demonstratestheuseofdiscriminatorforpolymorphicdeserialization(notpublishable)","oneOf":[{},{"allOf":[{},{"properties":{"fuelCapacity":{"format":"int32","type":"integer"}},"type":"object"}],"description":"GasolinevehicleimplementationofVehicleBase","type":"object"}],"properties":{"enginePower":{"properties":{"hp":{},"torque":{}},"title":"EnginePower","type":"object"},"powerSource":{"type":"string"},"topSpeed":{},"vehicleType":{}},"title":"VehicleBase","type":"object"},{"properties":{"batteryCapacity":{},"chargeTime":{}},"type":"object"}],"description":"ElectricvehicleimplementationofVehicleBase","type":"object"}},"io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto":{"type":"object","description":"GasolinevehicleimplementationofVehicleBase","examples":[{"enginePower":{"hp":0,"torque":0},"fuelCapacity":0,"powerSource":"string","topSpeed":0,"vehicleType":"string"}],"allOf":[{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase"},{"type":"object","properties":{"fuelCapacity":{"type":"integer","format":"int32"}}}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","allOf":[{"description":"Demonstratestheuseofdiscriminatorforpolymorphicdeserialization(notpublishable)","oneOf":[{"allOf":[{},{"properties":{"batteryCapacity":{},"chargeTime":{"format":"int32","type":"integer"}},"type":"object"}],"description":"ElectricvehicleimplementationofVehicleBase","type":"object"},{}],"properties":{"enginePower":{"properties":{"hp":{},"torque":{}},"title":"EnginePower","type":"object"},"powerSource":{"type":"string"},"topSpeed":{},"vehicleType":{}},"title":"VehicleBase","type":"object"},{"properties":{"fuelCapacity":{}},"type":"object"}],"description":"GasolinevehicleimplementationofVehicleBase","type":"object"}},"java.lang.Integer":{"type":"integer","format":"int32","examples":[0],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","format":"int32","type":"integer"}},"java.lang.String":{"type":"string","examples":["\"string\""],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","type":"string"}},"javax.money.MonetaryAmount":{"type":"object","properties":{"amount":{"type":"number","exclusiveMinimum":0.01,"examples":[99.99]},"currency":{"type":"string","examples":["USD"]}},"examples":[{"amount":99.99,"currency":"USD"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"amount":{"exclusiveMinimum":0.01,"type":"number"},"currency":{"type":"string"}},"type":"object"}}},"messages":{"PayloadNotUsed":{"headers":{"$ref":"#/components/schemas/SpringKafkaDefaultHeaders-PayloadNotUsed"},"payload":{"schemaFormat":"application/vnd.aai.asyncapi+json;version=3.0.0","schema":{"title":"PayloadNotUsed","type":"object","properties":{},"description":"Nopayloadspecified"}},"name":"PayloadNotUsed","title":"PayloadNotUsed","bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope":{"headers":{"$ref":"#/components/schemas/HeadersNotUsed"},"payload":{"schemaFormat":"application/vnd.aai.asyncapi+json;version=3.0.0","schema":{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope"}},"name":"StringPayload","title":"StringEnvelope","bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto":{"headers":{"$ref":"#/components/schemas/HeadersNotDocumented"},"payload":{"schemaFormat":"application/vnd.aai.asyncapi+json;version=3.0.0","schema":{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto"}},"name":"io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto","title":"AnotherPayloadAvroDto","bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message":{"headers":{"$ref":"#/components/schemas/SpringKafkaDefaultHeaders-Message"},"payload":{"schemaFormat":"application/vnd.aai.asyncapi+json;version=3.0.0","schema":{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message"}},"name":"io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message","title":"Message","bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto":{"headers":{"$ref":"#/components/schemas/SpringKafkaDefaultHeaders-AnotherTopic"},"payload":{"schemaFormat":"application/vnd.aai.asyncapi+json;version=3.0.0","schema":{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto"}},"name":"io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto","title":"AnotherPayloadDto","bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto":{"headers":{"$ref":"#/components/schemas/SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105"},"payload":{"schemaFormat":"application/vnd.aai.asyncapi+json;version=3.0.0","schema":{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto"}},"name":"io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto","title":"ExamplePayloadDto","bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"io.github.springwolf.examples.kafka.dtos.NestedPayloadDto":{"headers":{"$ref":"#/components/schemas/SpringDefaultHeaderAndCloudEvent"},"payload":{"schemaFormat":"application/vnd.aai.asyncapi+json;version=3.0.0","schema":{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.dtos.NestedPayloadDto"}},"name":"io.github.springwolf.examples.kafka.dtos.NestedPayloadDto","title":"NestedPayloadDto","bindings":{"kafka":{"key":{"type":"string","description":"KafkaProducerMessageKey","examples":["example-key"]},"bindingVersion":"0.5.0"}}},"io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto":{"headers":{"$ref":"#/components/schemas/SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto"},"payload":{"schemaFormat":"application/vnd.aai.asyncapi+json;version=3.0.0","schema":{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto"}},"name":"io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto","title":"RequiredAndNullablePayloadDto","bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"io.github.springwolf.examples.kafka.dtos.XmlPayloadDto":{"headers":{"$ref":"#/components/schemas/HeadersNotDocumented"},"payload":{"schemaFormat":"application/vnd.aai.asyncapi+json;version=3.0.0","schema":{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.dtos.XmlPayloadDto"}},"contentType":"text/xml","name":"io.github.springwolf.examples.kafka.dtos.XmlPayloadDto","title":"XmlPayloadDto","description":"Showcasesaxmlbasedmessage","bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"io.github.springwolf.examples.kafka.dtos.YamlPayloadDto":{"headers":{"$ref":"#/components/schemas/HeadersNotDocumented"},"payload":{"schemaFormat":"application/vnd.aai.asyncapi+json;version=3.0.0","schema":{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.dtos.YamlPayloadDto"}},"contentType":"application/yaml","name":"io.github.springwolf.examples.kafka.dtos.YamlPayloadDto","title":"YamlPayloadDto","description":"Showcasesayamlbasedmessage","bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase":{"headers":{"$ref":"#/components/schemas/SpringKafkaDefaultHeaders-VehicleBase"},"payload":{"schemaFormat":"application/vnd.aai.asyncapi+json;version=3.0.0","schema":{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase"}},"name":"io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase","title":"VehicleBase","bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"java.lang.Integer":{"headers":{"$ref":"#/components/schemas/SpringKafkaDefaultHeaders-integer"},"payload":{"schemaFormat":"application/vnd.aai.asyncapi+json;version=3.0.0","schema":{"type":"integer","format":"int32","examples":[0]}},"name":"java.lang.Integer","title":"integer","bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"java.lang.String":{"headers":{"$ref":"#/components/schemas/SpringKafkaDefaultHeaders-string"},"payload":{"schemaFormat":"application/vnd.aai.asyncapi+json;version=3.0.0","schema":{"type":"string","examples":["\"string\""]}},"name":"java.lang.String","title":"string","bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"javax.money.MonetaryAmount":{"headers":{"$ref":"#/components/schemas/SpringKafkaDefaultHeaders-MonetaryAmount"},"payload":{"schemaFormat":"application/vnd.aai.asyncapi+json;version=3.0.0","schema":{"$ref":"#/components/schemas/javax.money.MonetaryAmount"}},"name":"javax.money.MonetaryAmount","title":"MonetaryAmount","bindings":{"kafka":{"key":{"type":"string","description":"KafkaConsumerMessageKey","examples":["example-key"]},"bindingVersion":"0.5.0"}}}}},"operations":{"another-topic_receive_receiveAnotherPayloadBatched":{"action":"receive","channel":{"$ref":"#/channels/another-topic"},"bindings":{"kafka":{"groupId":{"type":"string","enum":["example-group-id"]},"bindingVersion":"0.5.0"}},"messages":[{"$ref":"#/channels/another-topic/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto"}]},"another-topic_send_sendMessage":{"action":"send","channel":{"$ref":"#/channels/another-topic"},"title":"another-topic_send","description":"Auto-generateddescription","bindings":{"kafka":{"bindingVersion":"0.5.0"}},"messages":[{"$ref":"#/channels/another-topic/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto"}]},"avro-topic_receive_receiveExampleAvroPayload":{"action":"receive","channel":{"$ref":"#/channels/avro-topic"},"title":"avro-topic_receive","description":"Requiresarunningkafka-schema-registry.Seedocker-compose.ymltostartit","bindings":{"kafka":{"bindingVersion":"0.5.0"}},"messages":[{"$ref":"#/channels/avro-topic/messages/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto"}]},"example-topic_receive_receiveExamplePayload":{"action":"receive","channel":{"$ref":"#/channels/example-topic"},"bindings":{"kafka":{"bindingVersion":"0.5.0"}},"messages":[{"$ref":"#/channels/example-topic/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto"}]},"integer-topic_receive_receiveIntegerPayload":{"action":"receive","channel":{"$ref":"#/channels/integer-topic"},"bindings":{"kafka":{"bindingVersion":"0.5.0"}},"messages":[{"$ref":"#/channels/integer-topic/messages/java.lang.Integer"}]},"multi-payload-topic_receive_ExampleClassLevelKafkaListener":{"action":"receive","channel":{"$ref":"#/channels/multi-payload-topic"},"bindings":{"kafka":{"bindingVersion":"0.5.0"}},"messages":[{"$ref":"#/channels/multi-payload-topic/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto"},{"$ref":"#/channels/multi-payload-topic/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto"},{"$ref":"#/channels/multi-payload-topic/messages/javax.money.MonetaryAmount"}]},"multi-payload-topic_receive_receiveMonetaryAmount":{"action":"receive","channel":{"$ref":"#/channels/multi-payload-topic"},"title":"multi-payload-topic_receive","description":"OverridedescriptionintheAsyncListenerannotationwithserversatkafka:29092","bindings":{"kafka":{"groupId":{"type":"string","enum":["foo-groupId"]},"clientId":{"type":"string","enum":["foo-clientId"]},"bindingVersion":"0.5.0"}},"messages":[{"$ref":"#/channels/multi-payload-topic/messages/javax.money.MonetaryAmount"}]},"no-payload-used-topic_receive_receiveExamplePayload":{"action":"receive","channel":{"$ref":"#/channels/no-payload-used-topic"},"bindings":{"kafka":{"bindingVersion":"0.5.0"}},"messages":[{"$ref":"#/channels/no-payload-used-topic/messages/PayloadNotUsed"}]},"nullable-topic_receive_receiveNullablePayload":{"action":"receive","channel":{"$ref":"#/channels/nullable-topic"},"bindings":{"kafka":{"bindingVersion":"0.5.0"}},"messages":[{"$ref":"#/channels/nullable-topic/messages/io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto"}]},"protobuf-topic_receive_receiveExampleProtobufPayload":{"action":"receive","channel":{"$ref":"#/channels/protobuf-topic"},"bindings":{"kafka":{"bindingVersion":"0.5.0"}},"messages":[{"$ref":"#/channels/protobuf-topic/messages/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message"}]},"string-topic_receive_receiveStringPayload":{"action":"receive","channel":{"$ref":"#/channels/string-topic"},"title":"string-topic_receive","description":"Finalclasses(likeString)canbedocumentedusinganenvelopeclassandthe@AsyncApiPayloadannotation.","bindings":{"kafka":{"bindingVersion":"0.5.0"}},"messages":[{"$ref":"#/channels/string-topic/messages/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope"},{"$ref":"#/channels/string-topic/messages/java.lang.String"}]},"topic-defined-via-asyncPublisher-annotation_send_sendMessage":{"action":"send","channel":{"$ref":"#/channels/topic-defined-via-asyncPublisher-annotation"},"title":"topic-defined-via-asyncPublisher-annotation_send","description":"Custom,optionaldescriptiondefinedintheAsyncPublisherannotation","bindings":{"kafka":{"clientId":{"type":"string","enum":["foo-clientId"]},"bindingVersion":"0.5.0"}},"messages":[{"$ref":"#/channels/topic-defined-via-asyncPublisher-annotation/messages/io.github.springwolf.examples.kafka.dtos.NestedPayloadDto"}]},"vehicle-topic_receive_receiveExamplePayload":{"action":"receive","channel":{"$ref":"#/channels/vehicle-topic"},"bindings":{"kafka":{"bindingVersion":"0.5.0"}},"messages":[{"$ref":"#/channels/vehicle-topic/messages/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase"}]},"xml-topic_receive_receiveExamplePayload":{"action":"receive","channel":{"$ref":"#/channels/xml-topic"},"title":"xml-topic_receive","description":"Auto-generateddescription","bindings":{"kafka":{"bindingVersion":"0.5.0"}},"messages":[{"$ref":"#/channels/xml-topic/messages/io.github.springwolf.examples.kafka.dtos.XmlPayloadDto"}]},"yaml-topic_receive_receiveExamplePayload":{"action":"receive","channel":{"$ref":"#/channels/yaml-topic"},"title":"yaml-topic_receive","description":"Auto-generateddescription","bindings":{"kafka":{"bindingVersion":"0.5.0"}},"messages":[{"$ref":"#/channels/yaml-topic/messages/io.github.springwolf.examples.kafka.dtos.YamlPayloadDto"}]}}}" but was: "{"asyncapi":"3.0.0","info":{"title":"Springwolfexampleproject-Kafka","version":"1.0.0","description":"Springwolf[exampleproject](https://github.com/springwolf/springwolf-core/tree/main/springwolf-examples/springwolf-kafka-example)todemonstratespringwolfsabilities,including**markdown**supportfordescriptions.","termsOfService":"http://asyncapi.org/terms","contact":{"name":"springwolf","url":"https://github.com/springwolf/springwolf-core","email":"example@example.com"},"license":{"name":"ApacheLicense2.0"},"x-generator":"springwolf"},"defaultContentType":"application/json","servers":{"kafka-server":{"host":"kafka:29092","protocol":"kafka"}},"channels":{"another-topic":{"address":"another-topic","messages":{"io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"avro-topic":{"address":"avro-topic","messages":{"io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"example-topic":{"address":"example-topic","messages":{"io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"integer-topic":{"address":"integer-topic","messages":{"java.lang.Integer":{"$ref":"#/components/messages/java.lang.Integer"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"multi-payload-topic":{"address":"multi-payload-topic","messages":{"io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto"},"io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto"},"javax.money.MonetaryAmount":{"$ref":"#/components/messages/javax.money.MonetaryAmount"}},"bindings":{"kafka":{"topic":"multi-payload-topic","partitions":3,"replicas":1,"topicConfiguration":{"cleanup.policy":["compact","delete"],"retention.ms":86400000,"retention.bytes":-1,"delete.retention.ms":86400000,"max.message.bytes":1048588},"bindingVersion":"0.5.0"}}},"no-payload-used-topic":{"address":"no-payload-used-topic","messages":{"PayloadNotUsed":{"$ref":"#/components/messages/PayloadNotUsed"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"nullable-topic":{"address":"nullable-topic","messages":{"io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"protobuf-topic":{"address":"protobuf-topic","messages":{"io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"string-topic":{"address":"string-topic","messages":{"io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope"},"java.lang.String":{"$ref":"#/components/messages/java.lang.String"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"topic-defined-via-asyncPublisher-annotation":{"address":"topic-defined-via-asyncPublisher-annotation","messages":{"io.github.springwolf.examples.kafka.dtos.NestedPayloadDto":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dtos.NestedPayloadDto"}},"servers":[{"$ref":"#/servers/kafka-server"}],"bindings":{}},"vehicle-topic":{"address":"vehicle-topic","messages":{"io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"xml-topic":{"address":"xml-topic","messages":{"io.github.springwolf.examples.kafka.dtos.XmlPayloadDto":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dtos.XmlPayloadDto"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}},"yaml-topic":{"address":"yaml-topic","messages":{"io.github.springwolf.examples.kafka.dtos.YamlPayloadDto":{"$ref":"#/components/messages/io.github.springwolf.examples.kafka.dtos.YamlPayloadDto"}},"bindings":{"kafka":{"bindingVersion":"0.5.0"}}}},"components":{"schemas":{"HeadersNotDocumented":{"title":"HeadersNotDocumented","type":"object","properties":{},"description":"Therecanbeheaders,buttheyarenotexplicitlydocumented.","examples":[{}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","description":"Therecanbeheaders,buttheyarenotexplicitlydocumented.","title":"HeadersNotDocumented","type":"object"}},"HeadersNotUsed":{"title":"HeadersNotUsed","type":"object","properties":{},"description":"Noheadersarepresent.","examples":[{}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","description":"Noheadersarepresent.","title":"HeadersNotUsed","type":"object"}},"PayloadNotUsed":{"title":"PayloadNotUsed","type":"object","properties":{},"description":"Nopayloadspecified","examples":[{}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","description":"Nopayloadspecified","title":"PayloadNotUsed","type":"object"}},"SpringDefaultHeaderAndCloudEvent":{"title":"SpringDefaultHeaderAndCloudEvent","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.NestedPayloadDto"],"examples":["io.github.springwolf.examples.kafka.dtos.NestedPayloadDto"]},"ce_id":{"title":"ce_id","type":"string","description":"CloudEventIdHeader","enum":["2c60089e-6f39-459d-8ced-2d6df7e4c03a"],"examples":["2c60089e-6f39-459d-8ced-2d6df7e4c03a"]},"ce_source":{"title":"ce_source","type":"string","description":"CloudEventSourceHeader","enum":["http://localhost"],"examples":["http://localhost"]},"ce_specversion":{"title":"ce_specversion","type":"string","description":"CloudEventSpecVersionHeader","enum":["1.0"],"examples":["1.0"]},"ce_subject":{"title":"ce_subject","type":"string","description":"CloudEventSubjectHeader","enum":["Springwolfexampleproject-Kafka"],"examples":["Springwolfexampleproject-Kafka"]},"ce_time":{"title":"ce_time","type":"string","description":"CloudEventTimeHeader","enum":["2023-10-2820:01:23+00:00"],"examples":["2023-10-2820:01:23+00:00"]},"ce_type":{"title":"ce_type","type":"string","description":"CloudEventPayloadTypeHeader","enum":["NestedPayloadDto.v1"],"examples":["NestedPayloadDto.v1"]},"content-type":{"title":"content-type","type":"string","description":"CloudEventContent-TypeHeader","enum":["application/json"],"examples":["application/json"]}},"description":"Spring__TypeId__andCloudEventHeaders","examples":[{"__TypeId__":"io.github.springwolf.examples.kafka.dtos.NestedPayloadDto","ce_id":"2c60089e-6f39-459d-8ced-2d6df7e4c03a","ce_source":"http://localhost","ce_specversion":"1.0","ce_subject":"Springwolfexampleproject-Kafka","ce_time":"2023-10-2820:01:23+00:00","ce_type":"NestedPayloadDto.v1","content-type":"application/json"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","description":"Spring__TypeId__andCloudEventHeaders","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.NestedPayloadDto"],"title":"__TypeId__","type":"string"},"ce_id":{"description":"CloudEventIdHeader","enum":["2c60089e-6f39-459d-8ced-2d6df7e4c03a"],"title":"ce_id","type":"string"},"ce_source":{"description":"CloudEventSourceHeader","enum":["http://localhost"],"title":"ce_source","type":"string"},"ce_specversion":{"description":"CloudEventSpecVersionHeader","enum":["1.0"],"title":"ce_specversion","type":"string"},"ce_subject":{"description":"CloudEventSubjectHeader","enum":["Springwolfexampleproject-Kafka"],"title":"ce_subject","type":"string"},"ce_time":{"description":"CloudEventTimeHeader","enum":["2023-10-2820:01:23+00:00"],"title":"ce_time","type":"string"},"ce_type":{"description":"CloudEventPayloadTypeHeader","enum":["NestedPayloadDto.v1"],"title":"ce_type","type":"string"},"content-type":{"description":"CloudEventContent-TypeHeader","enum":["application/json"],"title":"content-type","type":"string"}},"title":"SpringDefaultHeaderAndCloudEvent","type":"object"}},"SpringKafkaDefaultHeaders-AnotherPayloadAvroDto":{"title":"SpringKafkaDefaultHeaders-AnotherPayloadAvroDto","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto"],"examples":["io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto"]}},"examples":[{"__TypeId__":"io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-AnotherPayloadAvroDto","type":"object"}},"SpringKafkaDefaultHeaders-AnotherPayloadDto":{"title":"SpringKafkaDefaultHeaders-AnotherPayloadDto","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto"],"examples":["io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto"]}},"examples":[{"__TypeId__":"io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-AnotherPayloadDto","type":"object"}},"SpringKafkaDefaultHeaders-AnotherTopic":{"title":"SpringKafkaDefaultHeaders-AnotherTopic","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"TypeID"},"my_uuid_field":{"title":"my_uuid_field","type":"string","description":"Eventidentifier","format":"uuid"}},"examples":[{"__TypeId__":"string","my_uuid_field":"3fa85f64-5717-4562-b3fc-2c963f66afa6"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"TypeID","title":"__TypeId__","type":"string"},"my_uuid_field":{"description":"Eventidentifier","format":"uuid","title":"my_uuid_field","type":"string"}},"title":"SpringKafkaDefaultHeaders-AnotherTopic","type":"object"}},"SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105":{"title":"SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto"],"examples":["io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto"]},"kafka_offset":{"type":"integer","format":"int32","examples":[0]},"kafka_receivedMessageKey":{"type":"string","examples":["\"string\""]},"kafka_recordMetadata":{"title":"ConsumerRecordMetadata","type":"object","examples":[{}]}},"examples":[{"ConsumerRecordMetadata":{},"__TypeId__":"io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto","kafka_offset":0,"kafka_receivedMessageKey":"string"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto"],"title":"__TypeId__","type":"string"},"kafka_offset":{"format":"int32","type":"integer"},"kafka_receivedMessageKey":{"type":"string"},"kafka_recordMetadata":{"title":"ConsumerRecordMetadata","type":"object"}},"title":"SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105","type":"object"}},"SpringKafkaDefaultHeaders-Message":{"title":"SpringKafkaDefaultHeaders-Message","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message"],"examples":["io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message"]}},"examples":[{"__TypeId__":"io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-Message","type":"object"}},"SpringKafkaDefaultHeaders-MonetaryAmount":{"title":"SpringKafkaDefaultHeaders-MonetaryAmount","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["javax.money.MonetaryAmount"],"examples":["javax.money.MonetaryAmount"]}},"examples":[{"__TypeId__":"javax.money.MonetaryAmount"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["javax.money.MonetaryAmount"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-MonetaryAmount","type":"object"}},"SpringKafkaDefaultHeaders-PayloadNotUsed":{"title":"SpringKafkaDefaultHeaders-PayloadNotUsed","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["PayloadNotUsed"],"examples":["PayloadNotUsed"]}},"examples":[{"__TypeId__":"PayloadNotUsed"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["PayloadNotUsed"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-PayloadNotUsed","type":"object"}},"SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto":{"title":"SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto"],"examples":["io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto"]}},"examples":[{"__TypeId__":"io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto","type":"object"}},"SpringKafkaDefaultHeaders-VehicleBase":{"title":"SpringKafkaDefaultHeaders-VehicleBase","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase"],"examples":["io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase"]}},"examples":[{"__TypeId__":"io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-VehicleBase","type":"object"}},"SpringKafkaDefaultHeaders-XmlPayloadDto":{"title":"SpringKafkaDefaultHeaders-XmlPayloadDto","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.XmlPayloadDto"],"examples":["io.github.springwolf.examples.kafka.dtos.XmlPayloadDto"]}},"examples":[{"__TypeId__":"io.github.springwolf.examples.kafka.dtos.XmlPayloadDto"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.XmlPayloadDto"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-XmlPayloadDto","type":"object"}},"SpringKafkaDefaultHeaders-YamlPayloadDto":{"title":"SpringKafkaDefaultHeaders-YamlPayloadDto","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.YamlPayloadDto"],"examples":["io.github.springwolf.examples.kafka.dtos.YamlPayloadDto"]}},"examples":[{"__TypeId__":"io.github.springwolf.examples.kafka.dtos.YamlPayloadDto"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["io.github.springwolf.examples.kafka.dtos.YamlPayloadDto"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-YamlPayloadDto","type":"object"}},"SpringKafkaDefaultHeaders-integer":{"title":"SpringKafkaDefaultHeaders-integer","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["java.lang.Integer"],"examples":["java.lang.Integer"]}},"examples":[{"__TypeId__":"java.lang.Integer"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["java.lang.Integer"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-integer","type":"object"}},"SpringKafkaDefaultHeaders-string":{"title":"SpringKafkaDefaultHeaders-string","type":"object","properties":{"__TypeId__":{"title":"__TypeId__","type":"string","description":"SpringTypeIdHeader","enum":["java.lang.String"],"examples":["java.lang.String"]}},"examples":[{"__TypeId__":"java.lang.String"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"__TypeId__":{"description":"SpringTypeIdHeader","enum":["java.lang.String"],"title":"__TypeId__","type":"string"}},"title":"SpringKafkaDefaultHeaders-string","type":"object"}},"io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope":{"type":"string","description":"Payloaddescriptionusing@Schemaannotationand@AsyncApiPayloadwithinenvelopeclass","maxLength":100,"examples":["\"string\""],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","description":"Payloaddescriptionusing@Schemaannotationand@AsyncApiPayloadwithinenvelopeclass","maxLength":100,"type":"string"}},"io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto":{"title":"AnotherPayloadAvroDto","type":"object","properties":{"examplePayloadAvroDto":{"$ref":"#/components/schemas/io.github.springwolf.examples.kafka.dto.avro.ExamplePayloadAvroDto"},"someEnum":{"type":"string","enum":["FOO1","FOO2","FOO3"]}},"examples":[{"examplePayloadAvroDto":{"someLong":0,"someString":"string"},"someEnum":"FOO1"}],"x-json-schema":{"$schema":"https://json-schema.org/draft-07/schema#","properties":{"examplePayloadAvroDto":{"properties":{"someLong":{"format":"int64","type":"integer"},"someString":{"type":"string"}},"title":"ExamplePayloadAvroDto","type":"object"},"someEnum":{"enum":["FOO1","FOO2","FOO3"],"type":"string"}},"title":"AnotherPayloadAvroDto","type":"object"}},"io.github.springwolf.examples.kafka.dto.avro.ExamplePayloadAvroDto":{"title":"ExamplePayloadAvroDto","type":"object","properties":{"someLong":{"type":"integer","format":"int64"},"someString":{"type":"string"}},"examples":[{"someLong"
PayloadSchemaFormatIntegrationTest.asyncApiStandaloneArtifactTest(): springwolf-core/src/test/java/io/github/springwolf/core/integrationtests/application/PayloadSchemaFormatIntegrationTest.java#L49
org.opentest4j.AssertionFailedError: expected: "{ "asyncapi": "3.0.0", "info": { "title": "Springwolf example project - Kafka", "version": "1.0.0", "description": "Springwolf [example project](https://github.com/springwolf/springwolf-core/tree/main/springwolf-examples/springwolf-kafka-example) to demonstrate springwolfs abilities, including **markdown** support for descriptions.", "termsOfService": "http://asyncapi.org/terms", "contact": { "name": "springwolf", "url": "https://github.com/springwolf/springwolf-core", "email": "example@example.com" }, "license": { "name": "Apache License 2.0" }, "x-generator": "springwolf" }, "defaultContentType": "application/json", "servers": { "kafka-server": { "host": "kafka:29092", "protocol": "kafka" } }, "channels": { "another-topic": { "address": "another-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "avro-topic": { "address": "avro-topic", "messages": { "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "example-topic": { "address": "example-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "integer-topic": { "address": "integer-topic", "messages": { "java.lang.Integer": { "$ref": "#/components/messages/java.lang.Integer" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "multi-payload-topic": { "address": "multi-payload-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" }, "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" }, "javax.money.MonetaryAmount": { "$ref": "#/components/messages/javax.money.MonetaryAmount" } }, "bindings": { "kafka": { "topic": "multi-payload-topic", "partitions": 3, "replicas": 1, "topicConfiguration": { "cleanup.policy": [ "compact", "delete" ], "retention.ms": 86400000, "retention.bytes": -1, "delete.retention.ms": 86400000, "max.message.bytes": 1048588 }, "bindingVersion": "0.5.0" } } }, "no-payload-used-topic": { "address": "no-payload-used-topic", "messages": { "PayloadNotUsed": { "$ref": "#/components/messages/PayloadNotUsed" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "nullable-topic": { "address": "nullable-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "protobuf-topic": { "address": "protobuf-topic", "messages": { "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "string-topic": { "address": "string-topic", "messages": { "io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope" }, "java.lang.String": { "$ref": "#/components/messages/java.lang.String" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "topic-defined-via-asyncPublisher-annotation": { "address": "topic-defined-via-asyncPublisher-annotation", "messages": { "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" } }, "servers": [ { "$ref": "#/servers/kafka-server" } ], "bindings": { } }, "vehicle-topic": { "address": "vehicle-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "xml-topic": { "address": "xml-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "yaml-topic": { "address": "yaml-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } } }, "components": { "schemas": { "HeadersNotDocumented": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "description": "There can be headers, but they are not explicitly documented.", "example": { }, "properties": { }, "title": "HeadersNotDocumented" } }, "HeadersNotUsed": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "description": "No headers are present.", "example": { }, "properties": { }, "title": "HeadersNotUsed" } }, "PayloadNotUsed": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "description": "No payload specified", "example": { }, "properties": { }, "title": "PayloadNotUsed" } }, "SpringDefaultHeaderAndCloudEvent": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "description": "Spring __TypeId__ and CloudEvent Headers", "example": { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto", "ce_id": "2c60089e-6f39-459d-8ced-2d6df7e4c03a", "ce_source": "http://localhost", "ce_specversion": "1.0", "ce_subject": "Springwolf example project - Kafka", "ce_time": "2023-10-28 20:01:23+00:00", "ce_type": "NestedPayloadDto.v1", "content-type": "application/json" }, "properties": { "__TypeId__": { "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" ], "title": "__TypeId__" }, "ce_id": { "type": "string", "description": "CloudEvent Id Header", "enum": [ "2c60089e-6f39-459d-8ced-2d6df7e4c03a" ], "examples": [ "2c60089e-6f39-459d-8ced-2d6df7e4c03a" ], "title": "ce_id" }, "ce_source": { "type": "string", "description": "CloudEvent Source Header", "enum": [ "http://localhost" ], "examples": [ "http://localhost" ], "title": "ce_source" }, "ce_specversion": { "type": "string", "description": "CloudEvent Spec Version Header", "enum": [ "1.0" ], "examples": [ "1.0" ], "title": "ce_specversion" }, "ce_subject": { "type": "string", "description": "CloudEvent Subject Header", "enum": [ "Springwolf example project - Kafka" ], "examples": [ "Springwolf example project - Kafka" ], "title": "ce_subject" }, "ce_time": { "type": "string", "description": "CloudEvent Time Header", "enum": [ "2023-10-28 20:01:23+00:00" ], "examples": [ "2023-10-28 20:01:23+00:00" ], "title": "ce_time" }, "ce_type": { "type": "string", "description": "CloudEvent Payload Type Header", "enum": [ "NestedPayloadDto.v1" ], "examples": [ "NestedPayloadDto.v1" ], "title": "ce_type" }, "content-type": { "type": "string", "description": "CloudEvent Content-Type Header", "enum": [ "application/json" ], "examples": [ "application/json" ], "title": "content-type" } }, "title": "SpringDefaultHeaderAndCloudEvent" } }, "SpringKafkaDefaultHeaders-AnotherPayloadAvroDto": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "example": { "__TypeId__": "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" }, "properties": { "__TypeId__": { "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" ], "examples": [ "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" ], "title": "__TypeId__" } }, "title": "SpringKafkaDefaultHeaders-AnotherPayloadAvroDto" } }, "SpringKafkaDefaultHeaders-AnotherPayloadDto": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "example": { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" }, "properties": { "__TypeId__": { "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" ], "title": "__TypeId__" } }, "title": "SpringKafkaDefaultHeaders-AnotherPayloadDto" } }, "SpringKafkaDefaultHeaders-AnotherTopic": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "example": { "__TypeId__": "string", "my_uuid_field": "3fa85f64-5717-4562-b3fc-2c963f66afa6" }, "properties": { "__TypeId__": { "type": "string", "description": "Type ID", "title": "__TypeId__" }, "my_uuid_field": { "type": "string", "format": "uuid", "description": "Event identifier", "title": "my_uuid_field" } }, "title": "SpringKafkaDefaultHeaders-AnotherTopic" } }, "SpringKafkaDefaultHeaders-ExamplePayloadDto-1610003719": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "example": { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto", "kafka_offset": 0, "kafka_receivedMessageKey": "\"string\"", "org.springframework.kafka.listener.adapter.ConsumerRecordMetadata": { } }, "properties": { "__TypeId__": { "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" ], "title": "__TypeId__" }, "kafka_offset": { "type": "integer", "format": "int32", "example": 0 }, "kafka_receivedMessageKey": { "type": "string", "example": "\"string\"" }, "kafka_recordMetadata": { "example": { }, "title": "ConsumerRecordMetadata" } }, "title": "SpringKafkaDefaultHeaders-ExamplePayloadDto-1610003719" } }, "SpringKafkaDefaultHeaders-Message": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "example": { "__TypeId__": "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" }, "properties": { "__TypeId__": { "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" ], "examples": [ "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" ], "title": "__TypeId__" } }, "title": "SpringKafkaDefaultHeaders-Message" } }, "SpringKafkaDefaultHeaders-MonetaryAmount": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "example": { "__TypeId__": "javax.money.MonetaryAmount" }, "properties": { "__TypeId__": { "type": "string", "description": "Spring Type Id Header", "enum": [ "javax.money.MonetaryAmount" ], "examples": [ "javax.money.MonetaryAmount" ], "title": "__TypeId__" } }, "title": "SpringKafkaDefaultHeaders-MonetaryAmount" } }, "SpringKafkaDefaultHeaders-PayloadNotUsed": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "example": { "__TypeId__": "PayloadNotUsed" }, "properties": { "__TypeId__": { "type": "string", "description": "Spring Type Id Header", "enum": [ "PayloadNotUsed" ], "examples": [ "PayloadNotUsed" ], "title": "__TypeId__" } }, "title": "SpringKafkaDefaultHeaders-PayloadNotUsed" } }, "SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "example": { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" }, "properties": { "__TypeId__": { "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" ], "title": "__TypeId__" } }, "title": "SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto" } }, "SpringKafkaDefaultHeaders-VehicleBase": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "example": { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" }, "properties": { "__TypeId__": { "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ], "title": "__TypeId__" } }, "title": "SpringKafkaDefaultHeaders-VehicleBase" } }, "SpringKafkaDefaultHeaders-XmlPayloadDto": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "example": { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" }, "properties": { "__TypeId__": { "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" ], "title": "__TypeId__" } }, "title": "SpringKafkaDefaultHeaders-XmlPayloadDto" } }, "SpringKafkaDefaultHeaders-YamlPayloadDto": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "example": { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" }, "properties": { "__TypeId__": { "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" ], "title": "__TypeId__" } }, "title": "SpringKafkaDefaultHeaders-YamlPayloadDto" } }, "SpringKafkaDefaultHeaders-integer": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "example": { "__TypeId__": "java.lang.Integer" }, "properties": { "__TypeId__": { "type": "string", "description": "Spring Type Id Header", "enum": [ "java.lang.Integer" ], "examples": [ "java.lang.Integer" ], "title": "__TypeId__" } }, "title": "SpringKafkaDefaultHeaders-integer" } }, "SpringKafkaDefaultHeaders-string": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "example": { "__TypeId__": "java.lang.String" }, "properties": { "__TypeId__": { "type": "string", "description": "Spring Type Id Header", "enum": [ "java.lang.String" ], "examples": [ "java.lang.String" ], "title": "__TypeId__" } }, "title": "SpringKafkaDefaultHeaders-string" } }, "io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "string", "description": "Payload description using @Schema annotation and @AsyncApiPayload within envelope class", "example": "\"string\"", "maxLength": 100 } }, "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "example": { "examplePayloadAvroDto": { "someLong": 0, "someString": "string" }, "someEnum": "FOO1" }, "properties": { "examplePayloadAvroDto": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dto.avro.ExamplePayloadAvroDto" }, "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3" ] } }, "title": "AnotherPayloadAvroDto" } }, "io.github.springwolf.examples.kafka.dto.avro.ExamplePayloadAvroDto": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "example": { "someLong": 0, "someString": "string" }, "properties": { "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "title": "ExamplePayloadAvroDto" } }, "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "example": { "someEnum": "FOO1", "someLong": 0, "someString": "string" }, "properties": { "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3", "UNRECOGNIZED" ] }, "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "title": "Message" } }, "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "description": "Another payload model", "example": { "example": { "someEnum": "FOO2", "someLong": 5, "someString": "some string value" }, "foo": "bar" }, "properties": { "example": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" }, "foo": { "type": "string", "description": "Foo field", "example": "bar", "maxLength": 100 } }, "required": [ "example" ], "title": "AnotherPayloadDto" } }, "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "description": "Example payload model demonstrating markdown text styling:\n**bold**, *cursive* and <u>underlined</u>\n", "example": { "someEnum": "FOO2", "someLong": 5, "someString": "some string value" }, "properties": { "someEnum": { "type": "string", "description": "Some enum field", "enum": [ "FOO1", "FOO2", "FOO3" ], "example": "FOO2" }, "someLong": { "type": "integer", "format": "int64", "description": "Some long field", "example": 5, "minimum": 0 }, "someString": { "type": "string", "description": "### Some string field with Markdown\n\n- **bold**\n- *cursive*\n- images: <img src=\"./assets/springwolf-logo.png\" alt=\"Springwolf\" height=\"50\"/>\n- and code blocks (json, http, java)\n ```json\n {\n \"key1\":\"value1\",\n \"key2\":\"value2\"\n }\n ```\n", "example": "some string value" } }, "required": [ "someEnum", "someString" ], "title": "ExamplePayloadDto" } }, "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "description": "Payload model with nested complex types", "example": { "examplePayloads": [ { "someEnum": "FOO2", "someLong": 5, "someString": "some string value" } ], "someStrings": [ "some string value" ] }, "properties": { "examplePayloads": { "type": "array", "items": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" } }, "someStrings": { "type": "array", "items": { "type": "string", "description": "Some string field", "example": "some string value" }, "uniqueItems": true } }, "title": "NestedPayloadDto" } }, "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "description": "Demonstrate required and nullable. Note, @Schema is only descriptive without nullability check", "example": { "enumField": "COMPLEX1", "notRequiredField": "string", "requiredAndNullableField": "string", "requiredButNullableField": "string", "requiredField": "string" }, "properties": { "enumField": { "type": "string", "description": "Follows OpenAPI 3.1 spec", "enum": [ "COMPLEX1", "COMPLEX2" ] }, "notRequiredField": { "type": "string", "description": "This field can be skipped, but value cannot be null" }, "requiredAndNullableField": { "type": "string", "description": "This field can be skipped, or value can be null or present" }, "requiredButNullableField": { "type": "string", "description": "This field must be present, but value can be null" }, "requiredField": { "type": "string", "description": "This field must be present, and value cannot be null" } }, "required": [ "enumField", "requiredButNullableField", "requiredField" ], "title": "RequiredAndNullablePayloadDto" } }, "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "string", "example": "<io.github.springwolf.examples.kafka.dtos.XmlPayloadDto someAttribute=\"string\"><someEnum>FOO1</someEnum><someLong>0</someLong><someString>string</someString></io.github.springwolf.examples.kafka.dtos.XmlPayloadDto>", "properties": { "someAttribute": { "type": "string", "xml": { "attribute": true } }, "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3" ] }, "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "title": "XmlPayloadDto" } }, "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "string", "example": "someEnum: FOO1\nsomeLong: 0\nsomeString: string\n", "properties": { "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3" ] }, "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "title": "YamlPayloadDto" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.EnginePower": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "example": { "hp": 0, "torque": 0 }, "properties": { "hp": { "type": "integer", "format": "int32" }, "torque": { "type": "integer", "format": "int32" } }, "title": "EnginePower" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "discriminator": { "propertyName": "vehicleType", "mapping": { "VehicleElectricPayloadDto": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto", "VehicleGasolinePayloadDto": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto" } }, "example": { "batteryCapacity": 0, "chargeTime": 0, "enginePower": { "hp": 0, "torque": 0 }, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" }, "oneOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto" }, { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto" } ], "properties": { "enginePower": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.EnginePower" }, "powerSource": { "type": "string" }, "topSpeed": { "type": "integer", "format": "int32" }, "vehicleType": { "type": "string" } }, "title": "VehicleBase" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "allOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" }, { "type": "object", "properties": { "batteryCapacity": { "type": "integer", "format": "int32" }, "chargeTime": { "type": "integer", "format": "int32" } } } ], "description": "Electric vehicle implementation of VehicleBase", "example": { "batteryCapacity": 0, "chargeTime": 0, "enginePower": { "hp": 0, "torque": 0 }, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "allOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" }, { "type": "object", "properties": { "fuelCapacity": { "type": "integer", "format": "int32" } } } ], "description": "Gasoline vehicle implementation of VehicleBase", "example": { "enginePower": { "hp": 0, "torque": 0 }, "fuelCapacity": 0, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } } }, "java.lang.Integer": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "integer", "format": "int32", "example": 0 } }, "java.lang.String": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "string", "example": "\"string\"" } }, "javax.money.MonetaryAmount": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "example": { "amount": 99.99, "currency": "USD" }, "properties": { "amount": { "type": "number", "example": 99.99, "minimum": 0.01 }, "currency": { "type": "string", "example": "USD" } } } } }, "messages": { "PayloadNotUsed": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-PayloadNotUsed" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "title": "PayloadNotUsed", "type": "object", "properties": { }, "description": "No payload specified" } }, "name": "PayloadNotUsed", "title": "PayloadNotUsed", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope": { "headers": { "$ref": "#/components/schemas/HeadersNotUsed" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope" } }, "name": "StringPayload", "title": "StringEnvelope", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto": { "headers": { "$ref": "#/components/schemas/HeadersNotDocumented" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" } }, "name": "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto", "title": "AnotherPayloadAvroDto", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-Message" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" } }, "name": "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message", "title": "Message", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-AnotherTopic" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" } }, "name": "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto", "title": "AnotherPayloadDto", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-ExamplePayloadDto-1610003719" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" } }, "name": "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto", "title": "ExamplePayloadDto", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto": { "headers": { "$ref": "#/components/schemas/SpringDefaultHeaderAndCloudEvent" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" } }, "name": "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto", "title": "NestedPayloadDto", "bindings": { "kafka": { "key": { "type": "string", "description": "Kafka Producer Message Key", "examples": [ "example-key" ] }, "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" } }, "name": "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto", "title": "RequiredAndNullablePayloadDto", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto": { "headers": { "$ref": "#/components/schemas/HeadersNotDocumented" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" } }, "contentType": "text/xml", "name": "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto", "title": "XmlPayloadDto", "description": "Showcases a xml based message", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto": { "headers": { "$ref": "#/components/schemas/HeadersNotDocumented" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" } }, "contentType": "application/yaml", "name": "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto", "title": "YamlPayloadDto", "description": "Showcases a yaml based message", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-VehicleBase" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } }, "name": "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase", "title": "VehicleBase", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "java.lang.Integer": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-integer" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "integer", "format": "int32", "example": 0 } } }, "name": "java.lang.Integer", "title": "integer", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "java.lang.String": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-string" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "string", "example": "\"string\"" } } }, "name": "java.lang.String", "title": "string", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "javax.money.MonetaryAmount": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-MonetaryAmount" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/javax.money.MonetaryAmount" } }, "name": "javax.money.MonetaryAmount", "title": "MonetaryAmount", "bindings": { "kafka": { "key": { "type": "string", "description": "Kafka Consumer Message Key", "examples": [ "example-key" ] }, "bindingVersion": "0.5.0" } } } } }, "operations": { "another-topic_receive_receiveAnotherPayloadBatched": { "action": "receive", "channel": { "$ref": "#/channels/another-topic" }, "bindings": { "kafka": { "groupId": { "type": "string", "enum": [ "example-group-id" ] }, "bindingVersion": "0.5.0" } }, "messages": [ { "$ref": "#/channels/another-topic/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" } ] }, "another-topic_send_sendMessage": { "action": "send", "channel": { "$ref": "#/channels/another-topic" }, "title": "another-topic_send", "description": "Auto-generated description", "bindings": { "kafka": { "bindingVersion": "0.5.0" } }, "messages": [ { "$ref": "#/channels/another-topic/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" } ] }, "avro-topic_receive_receiveExampleAvroPayload": { "action": "receive", "channel": { "$ref": "#/channels/avro-topic" }, "title": "avro-topic_receive", "description": "Requires a running kafka-schema-registry. See docker-compose.yml to start it", "bindings": { "kafka": { "bindingVersion": "0.5.0" } }, "messages": [ { "$ref": "#/channels/avro-topic/messages/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" } ] }, "example-topic_receive_receiveExamplePayload": { "action": "receive", "channel": { "$ref": "#/channels/example-topic" }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } }, "messages": [ { "$ref": "#/channels/example-topic/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" } ] }, "integer-topic_receive_receiveIntegerPayload": { "action": "receive", "channel": { "$ref": "#/channels/integer-topic" }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } }, "messages": [ { "$ref": "#/channels/integer-topic/messages/java.lang.Integer" } ] }, "multi-payload-topic_receive_ExampleClassLevelKafkaListener": { "action": "receive", "channel": { "$ref": "#/channels/multi-payload-topic" }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } }, "messages": [ { "$ref": "#/channels/multi-payload-topic/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" }, { "$ref": "#/channels/multi-payload-topic/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" }, { "$ref": "#/channels/multi-payload-topic/messages/javax.money.MonetaryAmount" } ] }, "multi-payload-topic_receive_receiveMonetaryAmount": { "action": "receive", "channel": { "$ref": "#/channels/multi-payload-topic" }, "title": "multi-payload-topic_receive", "description": "Override description in the AsyncListener annotation with servers at kafka:29092", "bindings": { "kafka": { "groupId": { "type": "string", "enum": [ "foo-groupId" ] }, "clientId": { "type": "string", "enum": [ "foo-clientId" ] }, "bindingVersion": "0.5.0" } }, "messages": [ { "$ref": "#/channels/multi-payload-topic/messages/javax.money.MonetaryAmount" } ] }, "no-payload-used-topic_receive_receiveExamplePayload": { "action": "receive", "channel": { "$ref": "#/channels/no-payload-used-topic" }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } }, "messages": [ { "$ref": "#/channels/no-payload-used-topic/messages/PayloadNotUsed" } ] }, "nullable-topic_receive_receiveNullablePayload": { "action": "receive", "channel": { "$ref": "#/channels/nullable-topic" }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } }, "messages": [ { "$ref": "#/channels/nullable-topic/messages/io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" } ] }, "protobuf-topic_receive_receiveExampleProtobufPayload": { "action": "receive", "channel": { "$ref": "#/channels/protobuf-topic" }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } }, "messages": [ { "$ref": "#/channels/protobuf-topic/messages/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" } ] }, "string-topic_receive_receiveStringPayload": { "action": "receive", "channel": { "$ref": "#/channels/string-topic" }, "title": "string-topic_receive", "description": "Final classes (like String) can be documented using an envelope class and the @AsyncApiPayload annotation.", "bindings": { "kafka": { "bindingVersion": "0.5.0" } }, "messages": [ { "$ref": "#/channels/string-topic/messages/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope" }, { "$ref": "#/channels/string-topic/messages/java.lang.String" } ] }, "topic-defined-via-asyncPublisher-annotation_send_sendMessage": { "action": "send", "channel": { "$ref": "#/channels/topic-defined-via-asyncPublisher-annotation" }, "title": "topic-defined-via-asyncPublisher-annotation_send", "description": "Custom, optional description defined in the AsyncPublisher annotation", "bindings": { "kafka": { "clientId": { "type": "string", "enum": [ "foo-clientId" ] }, "bindingVersion": "0.5.0" } }, "messages": [ { "$ref": "#/channels/topic-defined-via-asyncPublisher-annotation/messages/io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" } ] }, "vehicle-topic_receive_receiveExamplePayload": { "action": "receive", "channel": { "$ref": "#/channels/vehicle-topic" }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } }, "messages": [ { "$ref": "#/channels/vehicle-topic/messages/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } ] }, "xml-topic_receive_receiveExamplePayload": { "action": "receive", "channel": { "$ref": "#/channels/xml-topic" }, "title": "xml-topic_receive", "description": "Auto-generated description", "bindings": { "kafka": { "bindingVersion": "0.5.0" } }, "messages": [ { "$ref": "#/channels/xml-topic/messages/io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" } ] }, "yaml-topic_receive_receiveExamplePayload": { "action": "receive", "channel": { "$ref": "#/channels/yaml-topic" }, "title": "yaml-topic_receive", "description": "Auto-generated description", "bindings": { "kafka": { "bindingVersion": "0.5.0" } }, "messages": [ { "$ref": "#/channels/yaml-topic/messages/io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" } ] } } }" but was: "{ "asyncapi": "3.0.0", "info": { "title": "Springwolf example project - Kafka", "version": "1.0.0", "description": "Springwolf [example project](https://github.com/springwolf/springwolf-core/tree/main/springwolf-examples/springwolf-kafka-example) to demonstrate springwolfs abilities, including **markdown** support for descriptions.", "termsOfService": "http://asyncapi.org/terms", "contact": { "name": "springwolf", "url": "https://github.com/springwolf/springwolf-core", "email": "example@example.com" }, "license": { "name": "Apache License 2.0" }, "x-generator": "springwolf" }, "defaultContentType": "application/json", "servers": { "kafka-server": { "host": "kafka:29092", "protocol": "kafka" } }, "channels": { "another-topic": { "address": "another-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "avro-topic": { "address": "avro-topic", "messages": { "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "example-topic": { "address": "example-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "integer-topic": { "address": "integer-topic", "messages": { "java.lang.Integer": { "$ref": "#/components/messages/java.lang.Integer" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "multi-payload-topic": { "address": "multi-payload-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" }, "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" }, "javax.money.MonetaryAmount": { "$ref": "#/components/messages/javax.money.MonetaryAmount" } }, "bindings": { "kafka": { "topic": "multi-payload-topic", "partitions": 3, "replicas": 1, "topicConfiguration": { "cleanup.policy": [ "compact", "delete" ], "retention.ms": 86400000, "retention.bytes": -1, "delete.retention.ms": 86400000, "max.message.bytes": 1048588 }, "bindingVersion": "0.5.0" } } }, "no-payload-used-topic": { "address": "no-payload-used-topic", "messages": { "PayloadNotUsed": { "$ref": "#/components/messages/PayloadNotUsed" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "nullable-topic": { "address": "nullable-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "protobuf-topic": { "address": "protobuf-topic", "messages": { "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "string-topic": { "address": "string-topic", "messages": { "io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope" }, "java.lang.String": { "$ref": "#/components/messages/java.lang.String" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "topic-defined-via-asyncPublisher-annotation": { "address": "topic-defined-via-asyncPublisher-annotation", "messages": { "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" } }, "servers": [ { "$ref": "#/servers/kafka-server" } ], "bindings": { } }, "vehicle-topic": { "address": "vehicle-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "xml-topic": { "address": "xml-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "yaml-topic": { "address": "yaml-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } } }, "components": { "schemas": { "HeadersNotDocumented": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "description": "There can be headers, but they are not explicitly documented.", "example": { }, "properties": { }, "title": "HeadersNotDocumented" } }, "HeadersNotUsed": { "schemaFormat": "application/vnd.oai.openapi;version=3.1.0", "schema": { "type": "object", "description": "No headers are present.", "example": { }, "properties": { }, "title": "HeadersNotUsed" } }, "PayloadNotUsed": {
StandaloneTest.asyncApiStandaloneArtifactTest(): springwolf-examples/springwolf-amqp-example/src/test/java/io/github/springwolf/examples/amqp/StandaloneTest.java#L40
org.opentest4j.AssertionFailedError: expected: "{ "asyncapi": "3.0.0", "info": { "title": "Springwolf example project - Kafka", "version": "1.0.0", "description": "Springwolf [example project](https://github.com/springwolf/springwolf-core/tree/main/springwolf-examples/springwolf-kafka-example) to demonstrate springwolfs abilities, including **markdown** support for descriptions.", "termsOfService": "http://asyncapi.org/terms", "contact": { "name": "springwolf", "url": "https://github.com/springwolf/springwolf-core", "email": "example@example.com" }, "license": { "name": "Apache License 2.0" }, "x-generator": "springwolf" }, "defaultContentType": "application/json", "servers": { "kafka-server": { "host": "kafka:29092", "protocol": "kafka" } }, "channels": { "another-topic": { "address": "another-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "avro-topic": { "address": "avro-topic", "messages": { "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "example-topic": { "address": "example-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "integer-topic": { "address": "integer-topic", "messages": { "java.lang.Integer": { "$ref": "#/components/messages/java.lang.Integer" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "multi-payload-topic": { "address": "multi-payload-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" }, "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" }, "javax.money.MonetaryAmount": { "$ref": "#/components/messages/javax.money.MonetaryAmount" } }, "bindings": { "kafka": { "topic": "multi-payload-topic", "partitions": 3, "replicas": 1, "topicConfiguration": { "cleanup.policy": [ "compact", "delete" ], "retention.ms": 86400000, "retention.bytes": -1, "delete.retention.ms": 86400000, "max.message.bytes": 1048588 }, "bindingVersion": "0.5.0" } } }, "no-payload-used-topic": { "address": "no-payload-used-topic", "messages": { "PayloadNotUsed": { "$ref": "#/components/messages/PayloadNotUsed" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "nullable-topic": { "address": "nullable-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "protobuf-topic": { "address": "protobuf-topic", "messages": { "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "string-topic": { "address": "string-topic", "messages": { "io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope" }, "java.lang.String": { "$ref": "#/components/messages/java.lang.String" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "topic-defined-via-asyncPublisher-annotation": { "address": "topic-defined-via-asyncPublisher-annotation", "messages": { "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" } }, "servers": [ { "$ref": "#/servers/kafka-server" } ], "bindings": { } }, "vehicle-topic": { "address": "vehicle-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "xml-topic": { "address": "xml-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "yaml-topic": { "address": "yaml-topic", "messages": { "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto": { "$ref": "#/components/messages/io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" } }, "bindings": { "kafka": { "bindingVersion": "0.5.0" } } } }, "components": { "schemas": { "HeadersNotDocumented": { "title": "HeadersNotDocumented", "type": "object", "properties": { }, "description": "There can be headers, but they are not explicitly documented.", "examples": [ { } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "There can be headers, but they are not explicitly documented.", "title": "HeadersNotDocumented", "type": "object" } }, "HeadersNotUsed": { "title": "HeadersNotUsed", "type": "object", "properties": { }, "description": "No headers are present.", "examples": [ { } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "No headers are present.", "title": "HeadersNotUsed", "type": "object" } }, "PayloadNotUsed": { "title": "PayloadNotUsed", "type": "object", "properties": { }, "description": "No payload specified", "examples": [ { } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "No payload specified", "title": "PayloadNotUsed", "type": "object" } }, "SpringDefaultHeaderAndCloudEvent": { "title": "SpringDefaultHeaderAndCloudEvent", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" ] }, "ce_id": { "title": "ce_id", "type": "string", "description": "CloudEvent Id Header", "enum": [ "2c60089e-6f39-459d-8ced-2d6df7e4c03a" ], "examples": [ "2c60089e-6f39-459d-8ced-2d6df7e4c03a" ] }, "ce_source": { "title": "ce_source", "type": "string", "description": "CloudEvent Source Header", "enum": [ "http://localhost" ], "examples": [ "http://localhost" ] }, "ce_specversion": { "title": "ce_specversion", "type": "string", "description": "CloudEvent Spec Version Header", "enum": [ "1.0" ], "examples": [ "1.0" ] }, "ce_subject": { "title": "ce_subject", "type": "string", "description": "CloudEvent Subject Header", "enum": [ "Springwolf example project - Kafka" ], "examples": [ "Springwolf example project - Kafka" ] }, "ce_time": { "title": "ce_time", "type": "string", "description": "CloudEvent Time Header", "enum": [ "2023-10-28 20:01:23+00:00" ], "examples": [ "2023-10-28 20:01:23+00:00" ] }, "ce_type": { "title": "ce_type", "type": "string", "description": "CloudEvent Payload Type Header", "enum": [ "NestedPayloadDto.v1" ], "examples": [ "NestedPayloadDto.v1" ] }, "content-type": { "title": "content-type", "type": "string", "description": "CloudEvent Content-Type Header", "enum": [ "application/json" ], "examples": [ "application/json" ] } }, "description": "Spring __TypeId__ and CloudEvent Headers", "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto", "ce_id": "2c60089e-6f39-459d-8ced-2d6df7e4c03a", "ce_source": "http://localhost", "ce_specversion": "1.0", "ce_subject": "Springwolf example project - Kafka", "ce_time": "2023-10-28 20:01:23+00:00", "ce_type": "NestedPayloadDto.v1", "content-type": "application/json" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Spring __TypeId__ and CloudEvent Headers", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto" ], "title": "__TypeId__", "type": "string" }, "ce_id": { "description": "CloudEvent Id Header", "enum": [ "2c60089e-6f39-459d-8ced-2d6df7e4c03a" ], "title": "ce_id", "type": "string" }, "ce_source": { "description": "CloudEvent Source Header", "enum": [ "http://localhost" ], "title": "ce_source", "type": "string" }, "ce_specversion": { "description": "CloudEvent Spec Version Header", "enum": [ "1.0" ], "title": "ce_specversion", "type": "string" }, "ce_subject": { "description": "CloudEvent Subject Header", "enum": [ "Springwolf example project - Kafka" ], "title": "ce_subject", "type": "string" }, "ce_time": { "description": "CloudEvent Time Header", "enum": [ "2023-10-28 20:01:23+00:00" ], "title": "ce_time", "type": "string" }, "ce_type": { "description": "CloudEvent Payload Type Header", "enum": [ "NestedPayloadDto.v1" ], "title": "ce_type", "type": "string" }, "content-type": { "description": "CloudEvent Content-Type Header", "enum": [ "application/json" ], "title": "content-type", "type": "string" } }, "title": "SpringDefaultHeaderAndCloudEvent", "type": "object" } }, "SpringKafkaDefaultHeaders-AnotherPayloadAvroDto": { "title": "SpringKafkaDefaultHeaders-AnotherPayloadAvroDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" ], "examples": [ "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-AnotherPayloadAvroDto", "type": "object" } }, "SpringKafkaDefaultHeaders-AnotherPayloadDto": { "title": "SpringKafkaDefaultHeaders-AnotherPayloadDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-AnotherPayloadDto", "type": "object" } }, "SpringKafkaDefaultHeaders-AnotherTopic": { "title": "SpringKafkaDefaultHeaders-AnotherTopic", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Type ID" }, "my_uuid_field": { "title": "my_uuid_field", "type": "string", "description": "Event identifier", "format": "uuid" } }, "examples": [ { "__TypeId__": "string", "my_uuid_field": "3fa85f64-5717-4562-b3fc-2c963f66afa6" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Type ID", "title": "__TypeId__", "type": "string" }, "my_uuid_field": { "description": "Event identifier", "format": "uuid", "title": "my_uuid_field", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-AnotherTopic", "type": "object" } }, "SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105": { "title": "SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" ] }, "kafka_offset": { "type": "integer", "format": "int32", "examples": [ 0 ] }, "kafka_receivedMessageKey": { "type": "string", "examples": [ "\"string\"" ] }, "kafka_recordMetadata": { "title": "ConsumerRecordMetadata", "type": "object", "examples": [ { } ] } }, "examples": [ { "ConsumerRecordMetadata": { }, "__TypeId__": "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto", "kafka_offset": 0, "kafka_receivedMessageKey": "string" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" ], "title": "__TypeId__", "type": "string" }, "kafka_offset": { "format": "int32", "type": "integer" }, "kafka_receivedMessageKey": { "type": "string" }, "kafka_recordMetadata": { "title": "ConsumerRecordMetadata", "type": "object" } }, "title": "SpringKafkaDefaultHeaders-ExamplePayloadDto-546532105", "type": "object" } }, "SpringKafkaDefaultHeaders-Message": { "title": "SpringKafkaDefaultHeaders-Message", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" ], "examples": [ "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-Message", "type": "object" } }, "SpringKafkaDefaultHeaders-MonetaryAmount": { "title": "SpringKafkaDefaultHeaders-MonetaryAmount", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "javax.money.MonetaryAmount" ], "examples": [ "javax.money.MonetaryAmount" ] } }, "examples": [ { "__TypeId__": "javax.money.MonetaryAmount" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "javax.money.MonetaryAmount" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-MonetaryAmount", "type": "object" } }, "SpringKafkaDefaultHeaders-PayloadNotUsed": { "title": "SpringKafkaDefaultHeaders-PayloadNotUsed", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "PayloadNotUsed" ], "examples": [ "PayloadNotUsed" ] } }, "examples": [ { "__TypeId__": "PayloadNotUsed" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "PayloadNotUsed" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-PayloadNotUsed", "type": "object" } }, "SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto": { "title": "SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-RequiredAndNullablePayloadDto", "type": "object" } }, "SpringKafkaDefaultHeaders-VehicleBase": { "title": "SpringKafkaDefaultHeaders-VehicleBase", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-VehicleBase", "type": "object" } }, "SpringKafkaDefaultHeaders-XmlPayloadDto": { "title": "SpringKafkaDefaultHeaders-XmlPayloadDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-XmlPayloadDto", "type": "object" } }, "SpringKafkaDefaultHeaders-YamlPayloadDto": { "title": "SpringKafkaDefaultHeaders-YamlPayloadDto", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" ], "examples": [ "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" ] } }, "examples": [ { "__TypeId__": "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-YamlPayloadDto", "type": "object" } }, "SpringKafkaDefaultHeaders-integer": { "title": "SpringKafkaDefaultHeaders-integer", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "java.lang.Integer" ], "examples": [ "java.lang.Integer" ] } }, "examples": [ { "__TypeId__": "java.lang.Integer" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "java.lang.Integer" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-integer", "type": "object" } }, "SpringKafkaDefaultHeaders-string": { "title": "SpringKafkaDefaultHeaders-string", "type": "object", "properties": { "__TypeId__": { "title": "__TypeId__", "type": "string", "description": "Spring Type Id Header", "enum": [ "java.lang.String" ], "examples": [ "java.lang.String" ] } }, "examples": [ { "__TypeId__": "java.lang.String" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "__TypeId__": { "description": "Spring Type Id Header", "enum": [ "java.lang.String" ], "title": "__TypeId__", "type": "string" } }, "title": "SpringKafkaDefaultHeaders-string", "type": "object" } }, "io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope": { "type": "string", "description": "Payload description using @Schema annotation and @AsyncApiPayload within envelope class", "maxLength": 100, "examples": [ "\"string\"" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Payload description using @Schema annotation and @AsyncApiPayload within envelope class", "maxLength": 100, "type": "string" } }, "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto": { "title": "AnotherPayloadAvroDto", "type": "object", "properties": { "examplePayloadAvroDto": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dto.avro.ExamplePayloadAvroDto" }, "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3" ] } }, "examples": [ { "examplePayloadAvroDto": { "someLong": 0, "someString": "string" }, "someEnum": "FOO1" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "examplePayloadAvroDto": { "properties": { "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "ExamplePayloadAvroDto", "type": "object" }, "someEnum": { "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" } }, "title": "AnotherPayloadAvroDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dto.avro.ExamplePayloadAvroDto": { "title": "ExamplePayloadAvroDto", "type": "object", "properties": { "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "examples": [ { "someLong": 0, "someString": "string" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "ExamplePayloadAvroDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message": { "title": "Message", "type": "object", "properties": { "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3", "UNRECOGNIZED" ] }, "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "examples": [ { "someEnum": "FOO1", "someLong": 0, "someString": "string" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "someEnum": { "enum": [ "FOO1", "FOO2", "FOO3", "UNRECOGNIZED" ], "type": "string" }, "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "Message", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "title": "AnotherPayloadDto", "type": "object", "properties": { "example": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" }, "foo": { "type": "string", "description": "Foo field", "maxLength": 100, "examples": [ "bar" ] } }, "description": "Another payload model", "examples": [ { "example": { "someEnum": "FOO2", "someLong": 5, "someString": "some string value" }, "foo": "bar" } ], "required": [ "example" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Another payload model", "properties": { "example": { "description": "Example payload model demonstrating markdown text styling:\n**bold**, *cursive* and <u>underlined</u>\n", "properties": { "someEnum": { "description": "Some enum field", "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "description": "Some long field", "format": "int64", "minimum": 0, "type": "integer" }, "someString": { "description": "### Some string field with Markdown\n\n- **bold**\n- *cursive*\n- images: <img src=\"./assets/springwolf-logo.png\" alt=\"Springwolf\" height=\"50\"/>\n- and code blocks (json, http, java)\n ```json\n {\n \"key1\":\"value1\",\n \"key2\":\"value2\"\n }\n ```\n", "type": "string" } }, "required": [ "someEnum", "someString" ], "title": "ExamplePayloadDto", "type": "object" }, "foo": { "description": "Foo field", "maxLength": 100, "type": "string" } }, "required": [ "example" ], "title": "AnotherPayloadDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto": { "title": "ExamplePayloadDto", "type": "object", "properties": { "someEnum": { "type": "string", "description": "Some enum field", "enum": [ "FOO1", "FOO2", "FOO3" ], "examples": [ "FOO2" ] }, "someLong": { "type": "integer", "description": "Some long field", "format": "int64", "minimum": 0, "examples": [ 5 ] }, "someString": { "type": "string", "description": "### Some string field with Markdown\n\n- **bold**\n- *cursive*\n- images: <img src=\"./assets/springwolf-logo.png\" alt=\"Springwolf\" height=\"50\"/>\n- and code blocks (json, http, java)\n ```json\n {\n \"key1\":\"value1\",\n \"key2\":\"value2\"\n }\n ```\n", "examples": [ "some string value" ] } }, "description": "Example payload model demonstrating markdown text styling:\n**bold**, *cursive* and <u>underlined</u>\n", "examples": [ { "someEnum": "FOO2", "someLong": 5, "someString": "some string value" } ], "required": [ "someEnum", "someString" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Example payload model demonstrating markdown text styling:\n**bold**, *cursive* and <u>underlined</u>\n", "properties": { "someEnum": { "description": "Some enum field", "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "description": "Some long field", "format": "int64", "minimum": 0, "type": "integer" }, "someString": { "description": "### Some string field with Markdown\n\n- **bold**\n- *cursive*\n- images: <img src=\"./assets/springwolf-logo.png\" alt=\"Springwolf\" height=\"50\"/>\n- and code blocks (json, http, java)\n ```json\n {\n \"key1\":\"value1\",\n \"key2\":\"value2\"\n }\n ```\n", "type": "string" } }, "required": [ "someEnum", "someString" ], "title": "ExamplePayloadDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.NestedPayloadDto": { "title": "NestedPayloadDto", "type": "object", "properties": { "examplePayloads": { "type": "array", "items": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.ExamplePayloadDto" } }, "someStrings": { "type": "array", "items": { "type": "string", "description": "Some string field", "examples": [ "some string value" ] }, "uniqueItems": true } }, "description": "Payload model with nested complex types", "examples": [ { "examplePayloads": [ { "someEnum": "FOO2", "someLong": 5, "someString": "some string value" } ], "someStrings": [ "some string value" ] } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Payload model with nested complex types", "properties": { "examplePayloads": { "items": { "description": "Example payload model demonstrating markdown text styling:\n**bold**, *cursive* and <u>underlined</u>\n", "properties": { "someEnum": { "description": "Some enum field", "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "description": "Some long field", "format": "int64", "minimum": 0, "type": "integer" }, "someString": { "description": "### Some string field with Markdown\n\n- **bold**\n- *cursive*\n- images: <img src=\"./assets/springwolf-logo.png\" alt=\"Springwolf\" height=\"50\"/>\n- and code blocks (json, http, java)\n ```json\n {\n \"key1\":\"value1\",\n \"key2\":\"value2\"\n }\n ```\n", "type": "string" } }, "required": [ "someEnum", "someString" ], "title": "ExamplePayloadDto", "type": "object" }, "type": "array" }, "someStrings": { "items": { "description": "Some string field", "type": "string" }, "type": "array", "uniqueItems": true } }, "title": "NestedPayloadDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.RequiredAndNullablePayloadDto": { "title": "RequiredAndNullablePayloadDto", "type": "object", "properties": { "enumField": { "type": [ "string", "null" ], "description": "Follows OpenAPI 3.1 spec", "enum": [ "COMPLEX1", "COMPLEX2", null ] }, "notRequiredField": { "type": "string", "description": "This field can be skipped, but value cannot be null" }, "requiredAndNullableField": { "type": [ "string", "null" ], "description": "This field can be skipped, or value can be null or present" }, "requiredButNullableField": { "type": [ "string", "null" ], "description": "This field must be present, but value can be null" }, "requiredField": { "type": "string", "description": "This field must be present, and value cannot be null" } }, "description": "Demonstrate required and nullable. Note, @Schema is only descriptive without nullability check", "examples": [ { "enumField": "COMPLEX1", "notRequiredField": "string", "requiredAndNullableField": "string", "requiredButNullableField": "string", "requiredField": "string" } ], "required": [ "enumField", "requiredButNullableField", "requiredField" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Demonstrate required and nullable. Note, @Schema is only descriptive without nullability check", "properties": { "enumField": { "description": "Follows OpenAPI 3.1 spec", "enum": [ "COMPLEX1", "COMPLEX2", null ], "type": [ "string", "null" ] }, "notRequiredField": { "description": "This field can be skipped, but value cannot be null", "type": "string" }, "requiredAndNullableField": { "description": "This field can be skipped, or value can be null or present", "type": [ "string", "null" ] }, "requiredButNullableField": { "description": "This field must be present, but value can be null", "type": [ "string", "null" ] }, "requiredField": { "description": "This field must be present, and value cannot be null", "type": "string" } }, "required": [ "enumField", "requiredButNullableField", "requiredField" ], "title": "RequiredAndNullablePayloadDto", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.XmlPayloadDto": { "title": "XmlPayloadDto", "type": "string", "properties": { "someAttribute": { "type": "string" }, "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3" ] }, "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "examples": [ "<io.github.springwolf.examples.kafka.dtos.XmlPayloadDto someAttribute=\"string\"><someEnum>FOO1</someEnum><someLong>0</someLong><someString>string</someString></io.github.springwolf.examples.kafka.dtos.XmlPayloadDto>" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "someAttribute": { }, "someEnum": { "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "XmlPayloadDto", "type": "string" } }, "io.github.springwolf.examples.kafka.dtos.YamlPayloadDto": { "title": "YamlPayloadDto", "type": "string", "properties": { "someEnum": { "type": "string", "enum": [ "FOO1", "FOO2", "FOO3" ] }, "someLong": { "type": "integer", "format": "int64" }, "someString": { "type": "string" } }, "examples": [ "someEnum: FOO1\nsomeLong: 0\nsomeString: string\n" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "someEnum": { "enum": [ "FOO1", "FOO2", "FOO3" ], "type": "string" }, "someLong": { "format": "int64", "type": "integer" }, "someString": { "type": "string" } }, "title": "YamlPayloadDto", "type": "string" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.EnginePower": { "title": "EnginePower", "type": "object", "properties": { "hp": { "type": "integer", "format": "int32" }, "torque": { "type": "integer", "format": "int32" } }, "examples": [ { "hp": 0, "torque": 0 } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "hp": { "format": "int32", "type": "integer" }, "torque": { } }, "title": "EnginePower", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase": { "discriminator": "vehicleType", "title": "VehicleBase", "type": "object", "properties": { "enginePower": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.EnginePower" }, "powerSource": { "type": "string" }, "topSpeed": { "type": "integer", "format": "int32" }, "vehicleType": { "type": "string" } }, "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "examples": [ { "batteryCapacity": 0, "chargeTime": 0, "enginePower": { "hp": 0, "torque": 0 }, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } ], "oneOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto" }, { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "oneOf": [ { "allOf": [ { }, { "properties": { "batteryCapacity": { }, "chargeTime": { "format": "int32", "type": "integer" } }, "type": "object" } ], "description": "Electric vehicle implementation of VehicleBase", "type": "object" }, { "allOf": [ { }, { "properties": { "fuelCapacity": { } }, "type": "object" } ], "description": "Gasoline vehicle implementation of VehicleBase", "type": "object" } ], "properties": { "enginePower": { "properties": { "hp": { }, "torque": { } }, "title": "EnginePower", "type": "object" }, "powerSource": { "type": "string" }, "topSpeed": { }, "vehicleType": { } }, "title": "VehicleBase", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleElectricPayloadDto": { "type": "object", "description": "Electric vehicle implementation of VehicleBase", "examples": [ { "batteryCapacity": 0, "chargeTime": 0, "enginePower": { "hp": 0, "torque": 0 }, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } ], "allOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" }, { "type": "object", "properties": { "batteryCapacity": { "type": "integer", "format": "int32" }, "chargeTime": { "type": "integer", "format": "int32" } } } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "allOf": [ { "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "oneOf": [ { }, { "allOf": [ { }, { "properties": { "fuelCapacity": { "format": "int32", "type": "integer" } }, "type": "object" } ], "description": "Gasoline vehicle implementation of VehicleBase", "type": "object" } ], "properties": { "enginePower": { "properties": { "hp": { }, "torque": { } }, "title": "EnginePower", "type": "object" }, "powerSource": { "type": "string" }, "topSpeed": { }, "vehicleType": { } }, "title": "VehicleBase", "type": "object" }, { "properties": { "batteryCapacity": { }, "chargeTime": { } }, "type": "object" } ], "description": "Electric vehicle implementation of VehicleBase", "type": "object" } }, "io.github.springwolf.examples.kafka.dtos.discriminator.VehicleGasolinePayloadDto": { "type": "object", "description": "Gasoline vehicle implementation of VehicleBase", "examples": [ { "enginePower": { "hp": 0, "torque": 0 }, "fuelCapacity": 0, "powerSource": "string", "topSpeed": 0, "vehicleType": "string" } ], "allOf": [ { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dtos.discriminator.VehicleBase" }, { "type": "object", "properties": { "fuelCapacity": { "type": "integer", "format": "int32" } } } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "allOf": [ { "description": "Demonstrates the use of discriminator for polymorphic deserialization (not publishable)", "oneOf": [ { "allOf": [ { }, { "properties": { "batteryCapacity": { }, "chargeTime": { "format": "int32", "type": "integer" } }, "type": "object" } ], "description": "Electric vehicle implementation of VehicleBase", "type": "object" }, { } ], "properties": { "enginePower": { "properties": { "hp": { }, "torque": { } }, "title": "EnginePower", "type": "object" }, "powerSource": { "type": "string" }, "topSpeed": { }, "vehicleType": { } }, "title": "VehicleBase", "type": "object" }, { "properties": { "fuelCapacity": { } }, "type": "object" } ], "description": "Gasoline vehicle implementation of VehicleBase", "type": "object" } }, "java.lang.Integer": { "type": "integer", "format": "int32", "examples": [ 0 ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "format": "int32", "type": "integer" } }, "java.lang.String": { "type": "string", "examples": [ "\"string\"" ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "type": "string" } }, "javax.money.MonetaryAmount": { "type": "object", "properties": { "amount": { "type": "number", "exclusiveMinimum": 0.01, "examples": [ 99.99 ] }, "currency": { "type": "string", "examples": [ "USD" ] } }, "examples": [ { "amount": 99.99, "currency": "USD" } ], "x-json-schema": { "$schema": "https://json-schema.org/draft-07/schema#", "properties": { "amount": { "exclusiveMinimum": 0.01, "type": "number" }, "currency": { "type": "string" } }, "type": "object" } } }, "messages": { "PayloadNotUsed": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-PayloadNotUsed" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "title": "PayloadNotUsed", "type": "object", "properties": { }, "description": "No payload specified" } }, "name": "PayloadNotUsed", "title": "PayloadNotUsed", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope": { "headers": { "$ref": "#/components/schemas/HeadersNotUsed" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.consumers.StringConsumer.StringEnvelope" } }, "name": "StringPayload", "title": "StringEnvelope", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto": { "headers": { "$ref": "#/components/schemas/HeadersNotDocumented" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto" } }, "name": "io.github.springwolf.examples.kafka.dto.avro.AnotherPayloadAvroDto", "title": "AnotherPayloadAvroDto", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message": { "headers": { "$ref": "#/components/schemas/SpringKafkaDefaultHeaders-Message" }, "payload": { "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", "schema": { "$ref": "#/components/schemas/io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message" } }, "name": "io.github.springwolf.examples.kafka.dto.proto.ExamplePayloadProtobufDto.Message", "title": "Message", "bindings": { "kafka": { "bindingVersion": "0.5.0" } } }, "io.github.springwolf.examples.kafka.dtos.AnotherPayloadDto": { "headers": { "$ref": "#/com