* Tells the Agent to asynchronously update a managed resource's configuration as per the specified
* <code>ResourceConfigurationUpdate</code>.
*/
private void executeResourceConfigurationUpdate(ResourceConfigurationUpdate update) {
try {
AgentClient agentClient = agentManager.getAgentClient(update.getResource().getAgent());
ConfigurationUpdateRequest request = new ConfigurationUpdateRequest(update.getId(),
update.getConfiguration(), update.getResource().getId());
agentClient.getConfigurationAgentService().updateResourceConfiguration(request);
} catch (RuntimeException e) {
// Any exception means the remote call itself failed - make sure to change the status on the update to FAILURE
// and set its error message field.
if (null != update) {
update.setStatus(ConfigurationUpdateStatus.FAILURE);