Uploaded image for project: 'Qpid Dispatch'
  1. Qpid Dispatch
  2. DISPATCH-1656

Allow user-configured connection properties in the Open performative

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.13.0
    • Router Node
    • None

    Description

      This feature would add a new "openProperties" map attribute to the org.apache.qpid.dispatch.connector and org.apache.qpid.dispatch.listener management entities. This new attribute is optional.

      The contents of the map are expected to be specified in JSON. The keys must be restricted to ASCII characters only in order to be encoded as AMQP 1.0 Symbol types on the wire.

      Key values that start with the prefixes qd. or x-opt-qd. are reserved and must not be used.

      In addition, the following keys are reserved and must not be used:

      product
      version
      failover-server-list
      network-host
      port
      scheme
      hostname

      The openProperties keys and values will be merged into the connection properties field of the outgoing Open performative when establishing or accepting connections.

      The openProperties attribute is NOT allowed on connector or listener entities with roles of either "inter-router" or "edge".

      The openProperties attribute is NOT allowed on listener entities than enable http, i.e. http: true.

      Example:

      connector {
         name: broker
         role: route-container
         host: 127.0.0.1
         port: 22180
         saslMechanisms: ANONYMOUS
         openProperties: {
            "foo": "bar",
            "integer": 7,
       "list":  ["a", 1, "b", -9, true],
       "map":  {"key1": null, "key2": [1, 2, 3]},
       }
         cost: 10
      }

      The resulting connection properties in the outgoing Open performative would include the following map entries:

      Symbol(foo): String(bar),
      Symbol(integer): Int(7),
      Symbol(list): List(String(a), Int(1), String(b), Int(-9), Boolean),
      Symbol(map): Map(String(key1): Null, String(key2): List(Int(1), Int(2), Int(3)))

       

      Attachments

        Issue Links

          Activity

            People

              kgiusti Ken Giusti
              kgiusti Ken Giusti
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: