I recently started to dive into the federation support as I try and migrate 5.x brokers to Artemis as I need something similar to how 5.x does bridging and federated queues/addresses seem like more in line to what I need than clustering.
However, I've noticed several shortcomings and enhancements that will be necessary to make it useful. The first thing is right now you can only configure an upstream broker which is backwards from how 5.x configures a bridge (it configures a one way downstream). So I wanted to go ahead and enhance Federation support to allow configuring both downstream brokers and hopefully duplex as well. For the approach I was thinking that maybe if we could add a configuration option for downstream brokers. Then, when the connection is made to the remote broker we could send a new CORE packet command with the info for the Federation config. Then the remote broker could receive this config, parse it, and then establish an upstream link based on that information back to the broker that made the connection...essentially creating a downstream link but re-using the existing upstream way of creating the bridge to simplify things. I can work on the PR and difference enhancements but wanted to get some agreement on the approach before spending a bunch of time on it. Thoughts? Or other ideas on how to accomplish configuring a downstream broker?
