From looking into the MBean setup for features.
There is a few things I would like to change in order to get the install working for a full features descriptor.
Currently - you can really only install/uninstall a feature.
Installing a repository - will only add a repository and add the list of features in that repository to an available list but you would have to install all features individually.
Some people may want this. but it doesn't actually install everything in a repository.
Plus this is also not recursive so if you install a repository and it has repositories of its own - these will not be added.
So my proposal is to change the intention of "InstallRepository" to actually going ahead and install everything in that repository and making it recursive.
Add an operation "AddRepository" which will be recursive but will only add the Repositories and the features to the list of available features and our Repositories tag will change to Available Repositories and have a new entry of "Installed Repositories"
Then add two new operations in Repository to install/uninstall a Repository (this will include installing/uninstalling all features in that repository and again it should be recursive if there are any sub repositories).
Currently the connection of a feature to a repository is not there so that would be part of this solution.
Does this seem reasonable to change ?