[ 
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

Reply via email to