-
-
Notifications
You must be signed in to change notification settings - Fork 60
feat: add amqp binding 0.4.0 #555
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
timonback
wants to merge
2
commits into
asyncapi:master
Choose a base branch
from
timonback:master
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
2 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,149 @@ | ||
{ | ||
"$schema": "http://json-schema.org/draft-07/schema#", | ||
"$id": "http://asyncapi.com/bindings/amqp/0.4.0/channel.json", | ||
"title": "AMQP channel bindings object", | ||
"description": "This object contains information about the channel representation in AMQP.", | ||
"type": "object", | ||
"additionalProperties": false, | ||
"patternProperties": { | ||
"^x-[\\w\\d\\.\\x2d_]+$": { | ||
"$ref": "http://asyncapi.com/definitions/3.0.0/specificationExtension.json" | ||
} | ||
}, | ||
"properties": { | ||
"is": { | ||
"type": "string", | ||
"enum": ["queue", "routingKey"], | ||
"description": "Defines what type of channel is it. Can be either 'queue' or 'routingKey' (default)." | ||
}, | ||
"name": { | ||
"type": "string", | ||
"maxLength": 255, | ||
"description": "When is=routingKey, this defines the actual routing pattern to route the message from the exchange to the queue." | ||
}, | ||
"channel": { | ||
"type": "object", | ||
"$ref": "http://asyncapi.com/definitions/3.0.0/Reference.json" | ||
}, | ||
"exchange": { | ||
"type": "object", | ||
"properties": { | ||
"name": { | ||
"type": "string", | ||
"maxLength": 255, | ||
"description": "The name of the exchange. It MUST NOT exceed 255 characters long." | ||
}, | ||
"type": { | ||
"type": "string", | ||
"enum": ["topic", "direct", "fanout", "default", "headers"], | ||
"description": "The type of the exchange. Can be either 'topic', 'direct', 'fanout', 'default' or 'headers'." | ||
}, | ||
"durable": { | ||
"type": "boolean", | ||
"description": "Whether the exchange should survive broker restarts or not." | ||
}, | ||
"autoDelete": { | ||
"type": "boolean", | ||
"description": "Whether the exchange should be deleted when the last queue is unbound from it." | ||
}, | ||
"vhost": { | ||
"type": "string", | ||
"default": "/", | ||
"description": "The virtual host of the exchange. Defaults to '/'." | ||
} | ||
}, | ||
"description": "When is=routingKey, this object defines the exchange properties." | ||
}, | ||
"queue": { | ||
"type": "object", | ||
"properties": { | ||
"name": { | ||
"type": "string", | ||
"maxLength": 255, | ||
"description": "The name of the queue. It MUST NOT exceed 255 characters long." | ||
}, | ||
"durable": { | ||
"type": "boolean", | ||
"description": "Whether the queue should survive broker restarts or not." | ||
}, | ||
"exclusive": { | ||
"type": "boolean", | ||
"description": "Whether the queue should be used only by one connection or not." | ||
}, | ||
"autoDelete": { | ||
"type": "boolean", | ||
"description": "Whether the queue should be deleted when the last consumer unsubscribes." | ||
}, | ||
"vhost": { | ||
"type": "string", | ||
"default": "/", | ||
"description": "The virtual host of the queue. Defaults to '/'." | ||
} | ||
}, | ||
"description": "When is=queue, this object defines the queue properties." | ||
}, | ||
"bindingVersion": { | ||
"type": "string", | ||
"enum": [ | ||
"0.4.0" | ||
], | ||
"description": "The version of this binding. If omitted, 'latest' MUST be assumed." | ||
} | ||
}, | ||
"oneOf": [ | ||
{ | ||
"properties": { | ||
"is": { "const": "routingKey" } | ||
}, | ||
"required": [ | ||
"exchange" | ||
], | ||
"not": { | ||
"required": [ | ||
"queue" | ||
] | ||
} | ||
}, | ||
{ | ||
"properties": { | ||
"is": { "const": "queue" } | ||
}, | ||
"required": [ | ||
"queue" | ||
], | ||
"not": { | ||
"required": [ | ||
"exchange" | ||
] | ||
} | ||
} | ||
], | ||
"examples": [ | ||
{ | ||
"is": "routingKey", | ||
"name": "routing.pattern", | ||
"channel": { | ||
"$ref": "#/components/channels/my-queue-name" | ||
}, | ||
"exchange": { | ||
"name": "myExchange", | ||
"type": "topic", | ||
"durable": true, | ||
"autoDelete": false, | ||
"vhost": "/" | ||
}, | ||
"bindingVersion": "0.4.0" | ||
}, | ||
{ | ||
"is": "queue", | ||
"queue": { | ||
"name": "my-queue-name", | ||
"durable": true, | ||
"exclusive": true, | ||
"autoDelete": false, | ||
"vhost": "/" | ||
}, | ||
"bindingVersion": "0.4.0" | ||
} | ||
] | ||
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
{ | ||
"$schema": "http://json-schema.org/draft-07/schema#", | ||
"$id": "http://asyncapi.com/bindings/amqp/0.4.0/message.json", | ||
"title": "AMQP message bindings object", | ||
"description": "This object contains information about the message representation in AMQP.", | ||
"type": "object", | ||
"additionalProperties": false, | ||
"patternProperties": { | ||
"^x-[\\w\\d\\.\\x2d_]+$": { | ||
"$ref": "http://asyncapi.com/definitions/3.0.0/specificationExtension.json" | ||
} | ||
}, | ||
"properties": { | ||
"contentEncoding": { | ||
"type": "string", | ||
"description": "A MIME encoding for the message content." | ||
}, | ||
"messageType": { | ||
"type": "string", | ||
"description": "Application-specific message type." | ||
}, | ||
"bindingVersion": { | ||
"type": "string", | ||
"enum": [ | ||
"0.4.0" | ||
], | ||
"description": "The version of this binding. If omitted, \"latest\" MUST be assumed." | ||
} | ||
}, | ||
"examples": [ | ||
{ | ||
"contentEncoding": "gzip", | ||
"messageType": "user.signup", | ||
"bindingVersion": "0.4.0" | ||
} | ||
] | ||
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,84 @@ | ||
{ | ||
"$schema": "http://json-schema.org/draft-07/schema#", | ||
"$id": "http://asyncapi.com/bindings/amqp/0.4.0/operation.json", | ||
"title": "AMQP operation bindings object", | ||
"description": "This object contains information about the operation representation in AMQP.", | ||
"type": "object", | ||
"additionalProperties": false, | ||
"patternProperties": { | ||
"^x-[\\w\\d\\.\\x2d_]+$": { | ||
"$ref": "http://asyncapi.com/definitions/3.0.0/specificationExtension.json" | ||
} | ||
}, | ||
"properties": { | ||
"expiration": { | ||
"type": "integer", | ||
"minimum": 0, | ||
"description": "TTL (Time-To-Live) for the message. It MUST be greater than or equal to zero." | ||
}, | ||
"userId": { | ||
"type": "string", | ||
"description": "Identifies the user who has sent the message." | ||
}, | ||
"cc": { | ||
"type": "array", | ||
"items": { | ||
"type": "string" | ||
}, | ||
"description": "The routing keys the message should be routed to at the time of publishing." | ||
}, | ||
"priority": { | ||
"type": "integer", | ||
"description": "A priority for the message." | ||
}, | ||
"deliveryMode": { | ||
"type": "integer", | ||
"enum": [1,2], | ||
"description": "Delivery mode of the message. Its value MUST be either 1 (transient) or 2 (persistent)." | ||
}, | ||
"mandatory": { | ||
"type": "boolean", | ||
"description": "Whether the message is mandatory or not." | ||
}, | ||
"bcc": { | ||
"type": "array", | ||
"items": { | ||
"type": "string" | ||
}, | ||
"description": "Like cc but consumers will not receive this information." | ||
}, | ||
"timestamp": { | ||
"type": "boolean", | ||
"description": "Whether the message should include a timestamp or not." | ||
}, | ||
"ack": { | ||
"type": "boolean", | ||
"description": "Whether the consumer should ack the message or not." | ||
}, | ||
"bindingVersion": { | ||
"type": "string", | ||
"enum": [ | ||
"0.4.0" | ||
], | ||
"description": "The version of this binding. If omitted, \"latest\" MUST be assumed." | ||
} | ||
}, | ||
"examples": [ | ||
{ | ||
"expiration": 100000, | ||
"userId": "guest", | ||
"cc": [ | ||
"user.logs" | ||
], | ||
"priority": 10, | ||
"deliveryMode": 2, | ||
"mandatory": false, | ||
"bcc": [ | ||
"external.audit" | ||
], | ||
"timestamp": true, | ||
"ack": false, | ||
"bindingVersion": "0.4.0" | ||
} | ||
] | ||
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.