Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Stepper2010-09-23 15:22:33 +0000
committerEike Stepper2010-09-23 15:22:33 +0000
commit3ad305914155e4884d4910235f209422c93d78f9 (patch)
tree53913b64b1743c5c8d70cc4d6fba7a55a9fee466 /plugins/org.eclipse.emf.cdo.server.net4j
parent3acc1e6e1b422e3cd1b2dc5e8ac1d077266fa770 (diff)
downloadcdo-3ad305914155e4884d4910235f209422c93d78f9.tar.gz
cdo-3ad305914155e4884d4910235f209422c93d78f9.tar.xz
cdo-3ad305914155e4884d4910235f209422c93d78f9.zip
[325928] Provide FailoverMonitor server and FailoverAgents to coordinate fail-over scenarios
https://bugs.eclipse.org/bugs/show_bug.cgi?id=325928
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.server.net4j')
-rw-r--r--plugins/org.eclipse.emf.cdo.server.net4j/src/org/eclipse/emf/cdo/server/net4j/FailoverMonitor.java21
1 files changed, 11 insertions, 10 deletions
diff --git a/plugins/org.eclipse.emf.cdo.server.net4j/src/org/eclipse/emf/cdo/server/net4j/FailoverMonitor.java b/plugins/org.eclipse.emf.cdo.server.net4j/src/org/eclipse/emf/cdo/server/net4j/FailoverMonitor.java
index c651c6d344..2dc6186160 100644
--- a/plugins/org.eclipse.emf.cdo.server.net4j/src/org/eclipse/emf/cdo/server/net4j/FailoverMonitor.java
+++ b/plugins/org.eclipse.emf.cdo.server.net4j/src/org/eclipse/emf/cdo/server/net4j/FailoverMonitor.java
@@ -82,8 +82,8 @@ public class FailoverMonitor extends Container<AgentProtocol>
public void registerAgent(AgentProtocol agent)
{
- AgentProtocol[] newAgents = null;
AgentProtocol newMasterAgent = null;
+ AgentProtocol[] newAgents = null;
synchronized (agents)
{
@@ -91,14 +91,15 @@ public class FailoverMonitor extends Container<AgentProtocol>
if (agents.size() == 1)
{
masterAgent = agent;
- newAgents = getElements();
- newMasterAgent = masterAgent;
}
+
+ newMasterAgent = masterAgent;
+ newAgents = getElements();
}
if (newMasterAgent != null)
{
- publishNewMaster(newAgents, newMasterAgent);
+ publishNewMaster(newMasterAgent, newAgents);
}
fireElementAddedEvent(agent);
@@ -106,8 +107,8 @@ public class FailoverMonitor extends Container<AgentProtocol>
public void deregisterAgent(AgentProtocol agent)
{
- AgentProtocol[] newAgents = null;
AgentProtocol newMasterAgent = null;
+ AgentProtocol[] newAgents = null;
synchronized (agents)
{
@@ -126,15 +127,15 @@ public class FailoverMonitor extends Container<AgentProtocol>
{
masterAgent = electNewMaster(agents);
}
-
- newAgents = getElements();
- newMasterAgent = masterAgent;
}
+
+ newMasterAgent = masterAgent;
+ newAgents = getElements();
}
if (newMasterAgent != null)
{
- publishNewMaster(newAgents, newMasterAgent);
+ publishNewMaster(newMasterAgent, newAgents);
}
fireElementRemovedEvent(agent);
@@ -152,7 +153,7 @@ public class FailoverMonitor extends Container<AgentProtocol>
return agents.iterator().next();
}
- private void publishNewMaster(AgentProtocol[] agents, final AgentProtocol masterAgent)
+ private void publishNewMaster(final AgentProtocol masterAgent, AgentProtocol[] agents)
{
for (final AgentProtocol agent : agents)
{

Back to the top