├── .editorconfig ├── .github ├── ISSUE_TEMPLATE │ └── config.yml ├── PULL_REQUEST_TEMPLATE.md └── workflows │ ├── scripts │ ├── README.md │ └── mailchimp │ │ └── package.json │ ├── build-and-test.yml │ ├── publish.yml │ ├── update-maintainers-trigger.yaml │ └── automerge-for-humans-remove-ready-to-merge-label-on-edit.yml ├── assets └── img │ ├── ui.png │ └── logo_white_on_blue_256.png ├── src ├── Neuroglia.AsyncApi.AspNetCore.UI │ ├── Pages │ │ ├── _ViewStart.cshtml │ │ ├── AsyncApi.cshtml.cs │ │ ├── Shared │ │ │ ├── v3 │ │ │ │ ├── _V3ExternalDocumentation.cshtml │ │ │ │ ├── _V3ReplyAddress.cshtml │ │ │ │ ├── _V3BindingCollection.cshtml │ │ │ │ └── _V3CorrelationId.cshtml │ │ │ └── v2 │ │ │ │ └── _V2CorrelationId.cshtml │ │ └── _ViewImports.cshtml │ ├── Usings.cs │ ├── Properties │ │ └── launchSettings.json │ └── Models │ │ ├── v3 │ │ ├── V3AsyncApiDocumentViewModel.cs │ │ ├── V3ComponentsViewModel.cs │ │ ├── V3SchemaViewModel.cs │ │ └── V3TagDefinitionViewModel.cs │ │ └── v2 │ │ ├── V2SchemaViewModel.cs │ │ └── V2ChannelDefinitionViewModel.cs ├── Neuroglia.AsyncApi.AspNetCore │ ├── Properties │ │ └── launchSettings.json │ ├── Usings.cs │ └── AsyncApiDocumentServingOptions.cs ├── Neuroglia.AsyncApi.Validation │ ├── Usings.cs │ ├── v3 │ │ ├── V3MessageExampleValidator.cs │ │ ├── V3SecuritySchemeValidator.cs │ │ ├── V3ServerVariableValidator.cs │ │ ├── V3LicenseValidator.cs │ │ ├── V3SchemaValidator.cs │ │ ├── V3TagValidator.cs │ │ ├── V3ExternalDocumentationValidator.cs │ │ ├── V3MessageBindingCollectionValidator.cs │ │ ├── V3ChannelBindingCollectionValidator.cs │ │ └── V3ServerBindingCollectionValidator.cs │ └── v2 │ │ ├── V2TagValidator.cs │ │ ├── V2LicenseValidator.cs │ │ ├── V2MessageTraitValidator.cs │ │ ├── V2ServerValidator.cs │ │ ├── V2OperationTraitValidator.cs │ │ ├── V2MessageValidator.cs │ │ ├── V2ChannelValidator.cs │ │ └── V2ApiInfoValidator.cs ├── Neuroglia.AsyncApi.IO │ └── Usings.cs ├── Neuroglia.AsyncApi.Client │ ├── Usings.cs │ ├── Configuration │ │ └── BindingHandlerOptions.cs │ ├── IAsyncApiPublishOperationResult.cs │ ├── ErrorTitle.cs │ ├── AsyncApiPublishOperationResult.cs │ ├── ErrorStatus.cs │ ├── AsyncApiSubscribeOperationResult.cs │ ├── IAsyncApiOperationResult.cs │ └── IAsyncApiSubscribeOperationResult.cs ├── Neuroglia.AsyncApi.FluentBuilders │ ├── Usings.cs │ └── Interfaces │ │ ├── IVersionedApiDocumentBuilder.cs │ │ ├── IReferenceableComponentDefinitionBuilder.cs │ │ └── IRuntimeExpressionFragmentBuilder.cs ├── Neuroglia.AsyncApi.Client.Bindings.Amqp │ ├── Configuration │ │ └── AmqpBindingHandlerOptions.cs │ ├── Usings.cs │ └── AmqpPublishOperationResult.cs ├── Neuroglia.AsyncApi.Client.Bindings.Http │ ├── Configuration │ │ └── HttpBindingHandlerOptions.cs │ └── Usings.cs ├── Neuroglia.AsyncApi.Client.Bindings.Mqtt │ ├── Configuration │ │ └── MqttBindingHandlerOptions.cs │ └── Usings.cs ├── Neuroglia.AsyncApi.Client.Bindings.Nats │ ├── Configuration │ │ └── NatsBindingHandlerOptions.cs │ ├── Usings.cs │ └── NatsPublishOperationResult.cs ├── Neuroglia.AsyncApi.Client.Bindings.Kafka │ ├── Configuration │ │ └── KafkaBindingHandlerOptions.cs │ └── Usings.cs ├── Neuroglia.AsyncApi.Client.Bindings.Redis │ ├── Configuration │ │ └── RedisBindingHandlerOptions.cs │ └── Usings.cs ├── Neuroglia.AsyncApi.Client.Bindings.Stomp │ ├── Configuration │ │ └── StompBindingHandlerOptions.cs │ ├── Usings.cs │ └── StompPublishOperationResult.cs ├── Neuroglia.AsyncApi.Core │ ├── IReferenceable.cs │ ├── Attributes │ │ ├── ExcludeAttribute.cs │ │ ├── ChannelBindingAttribute.cs │ │ ├── MessageBindingAttribute.cs │ │ ├── ServerBindingAttribute.cs │ │ ├── OperationBindingAttribute.cs │ │ └── IBindingAttribute.cs │ ├── Usings.cs │ ├── Bindings │ │ ├── IBindingDefinition.cs │ │ ├── Amqp │ │ │ ├── AmqpBindingDefinition.cs │ │ │ ├── AmqpChannelType.cs │ │ │ ├── AmqpServerBindingAttribute.cs │ │ │ └── AmqpServerBindingDefinition.cs │ │ ├── AmqpV1 │ │ │ ├── AmqpV1BindingDefinition.cs │ │ │ ├── AmqpV1ServerBindingAttribute.cs │ │ │ └── AmqpV1MessageBindingAttribute.cs │ │ ├── GooglePubSub │ │ │ └── GooglePubSubSchemaDefinition.cs │ │ ├── Http │ │ │ ├── HttpBindingDefinition.cs │ │ │ ├── HttpMessageBindingAttribute.cs │ │ │ ├── HttpServerBindingAttribute.cs │ │ │ ├── HttpChannelBindingAttribute.cs │ │ │ ├── HttpServerBindingDefinition.cs │ │ │ └── HttpChannelBindingDefinition.cs │ │ ├── Mqtt │ │ │ ├── MqttBindingDefinition.cs │ │ │ ├── MqttChannelBindingAttribute.cs │ │ │ └── MqttChannelBindingDefinition.cs │ │ ├── Nats │ │ │ ├── NatsBindingDefinition.cs │ │ │ ├── NatsMessageBindingAttribute.cs │ │ │ ├── NatsChannelBindingAttribute.cs │ │ │ └── NatsServerBindingAttribute.cs │ │ ├── Solace │ │ │ ├── SolaceDeliveryMode.cs │ │ │ ├── SolaceMessageBindingAttribute.cs │ │ │ ├── SolaceChannelBindingAttribute.cs │ │ │ └── SolaceMessageBindingDefinition.cs │ │ ├── Redis │ │ │ ├── RedisBindingDefinition.cs │ │ │ ├── RedisMessageBindingAttribute.cs │ │ │ ├── RedisChannelBindingAttribute.cs │ │ │ ├── RedisServerBindingAttribute.cs │ │ │ └── RedisOperationBindingAttribute.cs │ │ ├── WebSockets │ │ │ ├── WsBindingDefinition.cs │ │ │ ├── WsMessageBindingAttribute.cs │ │ │ ├── WsServerBindingAttribute.cs │ │ │ └── WsOperationBindingAttribute.cs │ │ ├── MqttV5 │ │ │ ├── MqttV5BindingDefinition.cs │ │ │ ├── MqttV5MessageBindingAttribute.cs │ │ │ ├── MqttV5ServerBindingAttribute.cs │ │ │ └── MqttV5ChannelBindingAttribute.cs │ │ ├── Jms │ │ │ ├── JmsMessageBindingAttribute.cs │ │ │ ├── JmsOperationBindingDefinition.cs │ │ │ └── JmsOperationBindingAttribute.cs │ │ ├── Sns │ │ │ ├── SnsMessageBindingAttribute.cs │ │ │ ├── SnsServerBindingAttribute.cs │ │ │ ├── SnsMessageBindingDefinition.cs │ │ │ ├── SnsServerBindingDefinition.cs │ │ │ └── SnsTopicOrderingType.cs │ │ ├── Sqs │ │ │ ├── SqsMessageBindingAttribute.cs │ │ │ ├── SqsServerBindingAttribute.cs │ │ │ ├── SqsMessageBindingDefinition.cs │ │ │ ├── SqsOperationBindingAttribute.cs │ │ │ └── SqsServerBindingDefinition.cs │ │ ├── IbmMQ │ │ │ ├── IbmMQDestinationType.cs │ │ │ ├── IbmMQOperationBindingDefinition.cs │ │ │ └── IbmMQOperationBindingAttribute.cs │ │ ├── Stomp │ │ │ ├── StompMessageBindingAttribute.cs │ │ │ ├── StompChannelBindingAttribute.cs │ │ │ └── StompServerBindingAttribute.cs │ │ ├── Kafka │ │ │ ├── KafkaChannelBindingAttribute.cs │ │ │ ├── KafkaMessageBindingAttribute.cs │ │ │ ├── KafkaServerBindingAttribute.cs │ │ │ └── KafkaOperationBindingAttribute.cs │ │ ├── Mercure │ │ │ ├── MercureMessageBindingAttribute.cs │ │ │ ├── MercureChannelBindingAttribute.cs │ │ │ └── MercureServerBindingAttribute.cs │ │ └── Pulsar │ │ │ └── PulsarMessageBindingAttribute.cs │ ├── SchemaContext.cs │ ├── AsyncApiDocumentFormat.cs │ ├── v3 │ │ ├── V3ReferenceDefinition.cs │ │ └── V3OperationAction.cs │ ├── AsyncApiSpecVersion.cs │ └── v2 │ │ ├── V2OperationType.cs │ │ └── Attributes │ │ └── AsyncApiAttribute.cs ├── Neuroglia.AsyncApi.Client.Bindings.Pulsar │ ├── Configuration │ │ └── PulsarBindingHandlerOptions.cs │ └── Usings.cs ├── Neuroglia.AsyncApi.Client.Bindings.Solace │ ├── Configuration │ │ └── SolaceBindingHandlerOptions.cs │ ├── Usings.cs │ ├── SolaceDestinationDescriptor.cs │ └── SolacePublishOperationResult.cs ├── Neuroglia.AsyncApi.Generation │ └── Usings.cs └── Neuroglia.AsyncApi.Client.Bindings.WebSocket │ ├── Configuration │ └── WebSocketBindingHandlerOptions.cs │ ├── Usings.cs │ └── WebSocketPublishOperationResult.cs ├── tests └── Neuroglia.AsyncApi.UnitTests │ ├── Assets │ └── mqtt │ │ └── mosquitto.conf │ ├── Usings.cs │ └── Services │ └── ContainerBootstrapper.cs ├── NOTICE ├── samples └── StreetLightsApi │ ├── appsettings.Development.json │ ├── appsettings.json │ ├── Properties │ └── launchSettings.json │ ├── StreetLightsApi.csproj │ ├── StreetLightType.cs │ ├── Messages │ ├── MeasureStreetLightLuminosityReply.cs │ └── CommonHeaders.cs │ └── Usings.cs └── CODEOWNERS /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asyncapi/net-sdk/HEAD/.editorconfig -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | blank_issues_enabled: false 2 | contact_links: [] 3 | -------------------------------------------------------------------------------- /assets/img/ui.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asyncapi/net-sdk/HEAD/assets/img/ui.png -------------------------------------------------------------------------------- /src/Neuroglia.AsyncApi.AspNetCore.UI/Pages/_ViewStart.cshtml: -------------------------------------------------------------------------------- 1 | @{ 2 | Layout = "_Layout"; 3 | } 4 | -------------------------------------------------------------------------------- /tests/Neuroglia.AsyncApi.UnitTests/Assets/mqtt/mosquitto.conf: -------------------------------------------------------------------------------- 1 | allow_anonymous true 2 | listener 1883 0.0.0.0 -------------------------------------------------------------------------------- /assets/img/logo_white_on_blue_256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asyncapi/net-sdk/HEAD/assets/img/logo_white_on_blue_256.png -------------------------------------------------------------------------------- /tests/Neuroglia.AsyncApi.UnitTests/Usings.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asyncapi/net-sdk/HEAD/tests/Neuroglia.AsyncApi.UnitTests/Usings.cs -------------------------------------------------------------------------------- /NOTICE: -------------------------------------------------------------------------------- 1 | Copyright 2016-2025 AsyncAPI Initiative 2 | 3 | This product includes software developed at 4 | AsyncAPI Initiative (http://www.asyncapi.com/). -------------------------------------------------------------------------------- /src/Neuroglia.AsyncApi.AspNetCore.UI/Pages/AsyncApi.cshtml.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/asyncapi/net-sdk/HEAD/src/Neuroglia.AsyncApi.AspNetCore.UI/Pages/AsyncApi.cshtml.cs -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | **What this PR does**: 2 | 3 | 4 | **Additional information:** 5 | -------------------------------------------------------------------------------- /samples/StreetLightsApi/appsettings.Development.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "LogLevel": { 4 | "Default": "Information", 5 | "Microsoft.AspNetCore": "Warning" 6 | } 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /.github/workflows/scripts/README.md: -------------------------------------------------------------------------------- 1 | The entire `scripts` directory is centrally managed in [.github](https://github.com/asyncapi/.github/) repository. Any changes in this folder should be done in central repository. -------------------------------------------------------------------------------- /samples/StreetLightsApi/appsettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "LogLevel": { 4 | "Default": "Information", 5 | "Microsoft.AspNetCore": "Warning" 6 | } 7 | }, 8 | "AllowedHosts": "*" 9 | } 10 | -------------------------------------------------------------------------------- /.github/workflows/scripts/mailchimp/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "schedule-email", 3 | "description": "This code is responsible for scheduling an email campaign. This file is centrally managed in https://github.com/asyncapi/.github/", 4 | "license": "Apache 2.0", 5 | "dependencies": { 6 | "@actions/core": "1.6.0", 7 | "@mailchimp/mailchimp_marketing": "3.0.74" 8 | } 9 | } -------------------------------------------------------------------------------- /src/Neuroglia.AsyncApi.AspNetCore/Properties/launchSettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "profiles": { 3 | "Neuroglia.AsyncApi.AspNetCore": { 4 | "commandName": "Project", 5 | "launchBrowser": true, 6 | "environmentVariables": { 7 | "ASPNETCORE_ENVIRONMENT": "Development" 8 | }, 9 | "applicationUrl": "https://localhost:52523;http://localhost:52524" 10 | } 11 | } 12 | } -------------------------------------------------------------------------------- /src/Neuroglia.AsyncApi.AspNetCore.UI/Pages/Shared/v3/_V3ExternalDocumentation.cshtml: -------------------------------------------------------------------------------- 1 | @model V3ExternalDocumentationDefinitionViewModel 2 | 3 | @if (!string.IsNullOrWhiteSpace(Model.Definition.Description)) 4 | { 5 |
| 14 | Location 15 | | 16 |
17 | @Model.Definition.Location
18 | |
19 |
@correlationId.Description
11 | } 12 | 13 |@correlationId.Location| 17 | Location 18 | 19 | | 20 |
21 | @correlationId.Location
22 | |
23 |