Description of problem:
The DiscoveryCallback mechanism has been introduced to allow of influencing discovery results of resource types from other plugins.
The picture is incomplete without also having the ability to similarly affect the resource upgrade which, too, can result in resource's plugin config or name or res key changes.
Having the ability to intercept both the discovery and resource upgrade gives the implementors complete control over the discovery-related details of the resource (plugin config, name, description, version, etc.).
As an example:
We implement a discovery callback that changes a name of an EAP server found to be the RHQ server to end with the "RHQ Server" string.
If such server was in inventory prior to having the plugin with the callback installed in RHQ, the name cannot be updated (without resource upgrade callback).
Proposed fix: https://github.com/rhq-project/rhq/pull/121
Merged in master
Merge: a3a59ff 06fdb9a
Author: Thomas Segismont <firstname.lastname@example.org>
Date: Wed Sep 10 16:11:34 2014 +0200
Merge branch 'bug/1136996+1135034+1135107' of github.com:metlos/rhq into metlos-bug/1136996+1135034+1135107