Updated Branches: refs/heads/master 3663af143 -> e59726ad9
[CLOUDSTACK-359] Hook up the other side of the event propagation Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/e59726ad Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/e59726ad Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/e59726ad Branch: refs/heads/master Commit: e59726ad95db4d6a145cec606ea42ce4ca910de8 Parents: 3663af1 Author: Hugo Trippaers <[email protected]> Authored: Thu Oct 25 17:59:34 2012 +0200 Committer: Hugo Trippaers <[email protected]> Committed: Fri Oct 26 14:25:14 2012 +0200 ---------------------------------------------------------------------- .../src/com/cloud/cluster/ClusterManagerImpl.java | 17 +++++++++++++++ 1 files changed, 17 insertions(+), 0 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e59726ad/server/src/com/cloud/cluster/ClusterManagerImpl.java ---------------------------------------------------------------------- diff --git a/server/src/com/cloud/cluster/ClusterManagerImpl.java b/server/src/com/cloud/cluster/ClusterManagerImpl.java index 67af5ba..e341b88 100755 --- a/server/src/com/cloud/cluster/ClusterManagerImpl.java +++ b/server/src/com/cloud/cluster/ClusterManagerImpl.java @@ -407,6 +407,23 @@ public class ClusterManagerImpl implements ClusterManager { Answer[] answers = new Answer[1]; answers[0] = new Answer(cmd, result, null); return _gson.toJson(answers); + } else if (cmds.length == 1 && cmds[0] instanceof PropagateResourceEventCommand ) { + PropagateResourceEventCommand cmd = (PropagateResourceEventCommand) cmds[0]; + + s_logger.debug("Intercepting command to propagate event " + cmd.getEvent().name() + " for host " + cmd.getHostId()); + + boolean result = false; + try { + result = executeResourceUserRequest(cmd.getHostId(), cmd.getEvent()); + s_logger.debug("Result is " + result); + } catch (AgentUnavailableException ex) { + s_logger.warn("Agent is unavailable", ex); + return null; + } + + Answer[] answers = new Answer[1]; + answers[0] = new Answer(cmd, result, null); + return _gson.toJson(answers); } try {
