Uploaded image for project: 'SwitchYard'
  1. SwitchYard

Support dynamic operation selectors for gateway bindings


    Right now, we only allow for a static literal operation name for bindings. We need to open this up to allow for dynamic/runtime specification of the operation name. XPath and Regex would be good examples. We also should support the ability for the user to specify a bean reference that can inspect the message and set the operation name. Some background from IRC:

    1:20:08 PM kcbabo: salaboy:  for the JMS binding case, you can use an operationSelector on the binding definition 
    1:20:15 PM salaboy: kcbabo, yes.. sorry? I'm kind of lost with that.. I have this route in camel: http://pastebin.com/SxBk3YTx
    1:21:16 PM salaboy: kcbabo, I see.. something like: <camel:operationSelector operationName="greet"/>
    1:22:46 PM kcbabo: salaboy:  yep, that's the one
    1:22:57 PM salaboy: kcbabo, great.. i will try that as well..
    1:23:00 PM kcbabo: salaboy:  unfortunately, right now it only takes a string literal
    1:23:34 PM salaboy: kcbabo, you mean that in the future it will accept an expression or something like that?
    1:23:34 PM kcbabo: salaboy:  this has the truly unfortunate side effect of requiring a binding *per operation* if there are multiple ops
    1:23:40 PM salaboy: kcbabo, or a ref
    1:23:51 PM salaboy: kcbabo, ouch yes
    1:24:02 PM kcbabo: salaboy:  right, we really need to support supplying a bean to set the operation
    1:24:14 PM kcbabo: salaboy:  and some out of the box instances of that bean could be xpath, regex, etc.
    1:24:27 PM kcbabo: salaboy:  but the user could just implement their own instance as well
    1:24:41 PM salaboy: kcbabo, ok.. perfect.. but for now it should work

      Gliffy Diagrams


          Issue Links



              • Assignee:
                igarashitm tomohisa igarashi
                kcbabo Keith Babo
              • Votes:
                0 Vote for this issue
                3 Start watching this issue


                • Created: