[ https://issues.apache.org/jira/browse/DISPATCH-89?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16335931#comment-16335931 ]
ASF GitHub Bot commented on DISPATCH-89: ---------------------------------------- Github user kgiusti commented on a diff in the pull request: https://github.com/apache/qpid-dispatch/pull/244#discussion_r163280167 --- Diff: python/qpid_dispatch/management/qdrouter.json --- @@ -1126,6 +1126,106 @@ } }, + "router.config.exchange": { + "description":"[EXPERIMENTAL] Defines a topic exchange.", + "extends": "configurationEntity", + "operations": ["CREATE", "DELETE"], + "attributes": { + "address": { + "description": "The address of the exchange.", + "type": "string", + "create": true, + "required": true + }, + "phase": { + "type": "integer", + "description": "The address phase for the exchange. Defaults to '0'.", + "create": true, + "required": false + }, + "alternate": { + "description": "The address to forward the message to if no bindings are matched.", + "type": "string", + "create": true, + "required": false + }, + "alternatePhase": { + "type": "integer", + "description": "The address phase for the alternate address. Defaults to '0'.", + "create": true, + "required": false + }, + "matchMethod": { + "description": "Key matching algorithm used. '0-10' uses the legacy AMQP topic exchange wildcard match method as described in the 0-10 draft. 'mqtt' uses the MQTT topic filter wildcard match method.", + "type": ["0-10", "mqtt"], + "default": "0-10", + "required": false, + "create": true + }, + "bindingCount": { + "description": "The number of bindings associated with this exchange.", + "type": "integer", + "create": false + }, + "deliveriesReceived": { + "description": "The total number of deliveries received by this exchange.", + "type": "integer", + "create": false + }, + "deliveriesDropped": { + "description": "The total number of deliveries dropped due to the lack of an outgoing subscription.", + "type": "integer", + "create": false + }, + "deliveriesForwarded": { + "description": "The total number of deliveries forwarded via matched bindings.", + "type": "integer", + "create": false + }, + "deliveriesAlternate": { + "description": "The total number of deliveries forwarded to the alternate exchange.", + "type": "integer", + "create": false + } + } + }, + + "router.config.binding": { + "description":"[EXPERIMENTAL] Defines a keyed next hop binding for an exchange.", + "extends": "configurationEntity", + "operations": ["CREATE", "DELETE"], + "attributes": { + "exchange": { + "description": "The name of the exchange to bind.", + "type": "string", + "create": true, + "required": true + }, + "key": { + "description": "Pattern to compare against incoming message's topic. The key is a string of zero or more tokens and wildcards. The format depends on the matchMethod configured for the exchange. For 0-10 each token is delimited by the '.' character and wild-card token '*' matches a single token and '#' matches zero or more tokens. For MQTT each token is delimited by the '/' character and wildcard token '+' matches a single token and '#' matches zero or more tokens at the end of the topic.", + "type": "string", + "create": true, + "required": true --- End diff -- not required update description to describe null key > Model the legacy topic exchange behavior of qpidd > ------------------------------------------------- > > Key: DISPATCH-89 > URL: https://issues.apache.org/jira/browse/DISPATCH-89 > Project: Qpid Dispatch > Issue Type: New Feature > Components: Routing Engine > Affects Versions: 0.2 > Reporter: Ken Giusti > Assignee: Ken Giusti > Priority: Major > > With Qpidd, a user can define a binding from an Exchange to a target queue. > The binding uses a key that is compared to a message's subject field. If the > key matches, the message is routed to the target queue for that binding. > It should be possible to emulate this behavior using the dispatch router. > Example: > User defines a mappings from a target address (the 'exchange') to a different > target address(es) (the 'queue'). These mappings (the 'bindings') are driven > by a pattern match against the inbound message's subject field. > Messages arriving at the router from any link whose target address has > bindings defined are not immediately routed. Prior to routing, the message's > subject field is extracted and compared against each binding defined for the > target. A list of new target addresses is created containing the target > address from each binding that satisfied the pattern match. The message is > then routed to each new target address. > The pattern syntax should be the same 'dotted string' notation from qpidd, > including '*' and "#' wildcarding. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org For additional commands, e-mail: dev-h...@qpid.apache.org