For my point of view:
All Web Console do not work with all 3.x versions.
-old Web Console do not work necessary with new Petals versions. (Minor versions)
-New Web Console should work with all 3.x Petals, and MUST use latest feature of the latest Petals ESB.
Upgrading a Web Console is very easy and can be a a mandatory to upgrade a Petals ESB (minor version)
So we are just focusing on that new Web Console works on all Petals Minor versions (3.0, 3.1, 3.2...). Thus we do not focus on old Web Console with new Petals ESB compatibility -> less tests.
These rules permits to handle easier the evolutions, as deprecated method are never handle properly in the current way of developing (trust me i'm the main commiter on Petals ESB), as we do not plan any life duration for Petals products.
The API i speak should be a petals-admin-api library that hold all the object necessary to manipulate for an admin client.
The admin client would be at first time JMX, but can be after Web Service....
This library would need to be embedded in any admin client classloader.
This library do not exist at current time. There is only a petals-jmx-api which is not technology agnostic.
You want a Map of Map?
->
Set<Map<String, Map<String, String>> retrieveTopology()
The first Map contains as key the nature of topology element (Domain, SubDomain or Container).
Furthermore it can be extensible to others natures...