-
-
Notifications
You must be signed in to change notification settings - Fork 274
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
Add support for Protocol Info objects #170
Conversation
a7c2a3d
to
7ba0280
Compare
@RobertDiebels @gmr ☝️ early draft of the new feature to support protocol-specific information. |
channelIsQueue: true | ||
queue: | ||
randomName: true | ||
exclusive: true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please, ignore the "quality" of the amqp-0-9-1
object here. The definition of a specific protocol object must be done separately. This example is just to illustrate the feature.
examples/next/rpc-client.yml
Outdated
noAck: true | ||
properties: | ||
correlation_id: | ||
type: string |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please, ignore the "quality" of the amqp-0-9-1
object here. The definition of a specific protocol object must be done separately. This example is just to illustrate the feature.
+1 for the traits compatibility. Re-using protocol-info seems super useful. |
BTW, there's already a proposal for traits: #108. |
🎉 This PR is included in version 1.0.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
What?
Fixes #41
Fixes #42
Fixes #164
Proposal
ProtocolInfo objects are opaque objects that may be used by tools to perform/add protocol-specific operations/features. Although the object is opaque from a specification point of view, we'll maintain a catalog of protocolInfo objects, so they are standardized across tools but don't compromise the specification. That doesn't stop anyone to use custom protocolInfo objects, at the expense of creating the tooling to support them.
ProtocolInfo objects can be attached to:
noAck
(AMQP).QoS
(MQTT),delivery_mode
(AMQP), messagekey
(Kafka), etc.Reusing protocolInfo objects will be possible through traits (#108) and overlays (#107).
Missing things
Add to Markdown version of the specification.Add to JSON Schema version of the specification.