Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorddunne2010-08-03 16:33:43 +0000
committerddunne2010-08-03 16:33:43 +0000
commitee6619de5c84210ee39e1ba2730ca86f97e44ae7 (patch)
tree361cc7f76a5357eb34e92389e645d81a8e476158 /plugins/org.eclipse.osee.framework.messaging.event.res
parentc4585ecdfb63ba31f7d27c624f5ce3eda041f2a4 (diff)
downloadorg.eclipse.osee-ee6619de5c84210ee39e1ba2730ca86f97e44ae7.tar.gz
org.eclipse.osee-ee6619de5c84210ee39e1ba2730ca86f97e44ae7.tar.xz
org.eclipse.osee-ee6619de5c84210ee39e1ba2730ca86f97e44ae7.zip
Events - jms active
Diffstat (limited to 'plugins/org.eclipse.osee.framework.messaging.event.res')
-rw-r--r--plugins/org.eclipse.osee.framework.messaging.event.res/src/org/eclipse/osee/framework/messaging/event/res/ResEventManager.java52
1 files changed, 48 insertions, 4 deletions
diff --git a/plugins/org.eclipse.osee.framework.messaging.event.res/src/org/eclipse/osee/framework/messaging/event/res/ResEventManager.java b/plugins/org.eclipse.osee.framework.messaging.event.res/src/org/eclipse/osee/framework/messaging/event/res/ResEventManager.java
index d76ad4338fa..812ee3eb3c1 100644
--- a/plugins/org.eclipse.osee.framework.messaging.event.res/src/org/eclipse/osee/framework/messaging/event/res/ResEventManager.java
+++ b/plugins/org.eclipse.osee.framework.messaging.event.res/src/org/eclipse/osee/framework/messaging/event/res/ResEventManager.java
@@ -12,7 +12,7 @@ package org.eclipse.osee.framework.messaging.event.res;
import java.rmi.RemoteException;
import java.util.Map;
-import org.eclipse.osee.framework.core.exception.OseeCoreException;
+import org.eclipse.osee.framework.messaging.ConnectionListener;
import org.eclipse.osee.framework.messaging.ConnectionNode;
import org.eclipse.osee.framework.messaging.OseeMessagingListener;
import org.eclipse.osee.framework.messaging.OseeMessagingStatusCallback;
@@ -32,8 +32,10 @@ public class ResEventManager implements OseeMessagingStatusCallback {
private ConnectionNode connectionNode;
private ResMessagingTracker resMessagingTracker;
private IFrameworkEventListener frameworkEventListener;
+ private ResConnectionListener connectionListener;
private ResEventManager() {
+ // private
}
public static ResEventManager getInstance() {
@@ -64,14 +66,34 @@ public class ResEventManager implements OseeMessagingStatusCallback {
System.out.println("De-Registering Client for Remote Events\n");
resMessagingTracker.close();
resMessagingTracker = null;
+ connectionListener = null;
}
public boolean isConnected() {
- return resMessagingTracker != null;
+ if (resMessagingTracker != null && resMessagingTracker.getConnectionNode() != null && connectionListener != null && connectionListener.isConnected()) {
+ return true;
+ }
+ return false;
+ }
+
+ public String getConnectionInfo() {
+ if (resMessagingTracker == null) {
+ return "Can't get RES Message Tracker";
+ }
+ if (resMessagingTracker.getConnectionNode() == null) {
+ return "RES Connection Node == null";
+ }
+ if (connectionListener == null || !connectionListener.isConnected()) {
+ return "ActiveMQ JMS Service is down";
+ }
+ return "Connected";
}
public void addingRemoteEventService(ConnectionNode connectionNode) {
this.connectionNode = connectionNode;
+ connectionListener = new ResConnectionListener();
+ connectionNode.addConnectionListener(connectionListener);
+
connectionNode.subscribe(ResMessages.RemoteTransactionEvent1, new RemoteTransactionEvent1Listener(), instance);
connectionNode.subscribe(ResMessages.RemotePersistEvent1, new RemotePersistEvent1Listener(), instance);
connectionNode.subscribe(ResMessages.RemoteBranchEvent1, new RemoteBranchEvent1Listener(), instance);
@@ -103,16 +125,37 @@ public class ResEventManager implements OseeMessagingStatusCallback {
}
}
- public void start(IFrameworkEventListener frameworkEventListener) throws OseeCoreException {
+ public void start(IFrameworkEventListener frameworkEventListener) {
this.frameworkEventListener = frameworkEventListener;
startListeningForRemoteCoverageEvents();
}
- public void stop() throws OseeCoreException {
+ public void stop() {
this.frameworkEventListener = null;
stopListeningForRemoteCoverageEvents();
}
+ private class ResConnectionListener implements ConnectionListener {
+
+ private boolean isConnected = false;
+
+ @Override
+ public void connected(ConnectionNode node) {
+ System.out.println("connected from res listner");
+ isConnected = true;
+ }
+
+ public boolean isConnected() {
+ return isConnected;
+ }
+
+ @Override
+ public void notConnected(ConnectionNode node) {
+ System.out.println("not connected from res listener");
+ isConnected = false;
+ }
+ }
+
@Override
public void fail(Throwable th) {
System.err.println(getClass().getSimpleName() + " - fail: " + th.getLocalizedMessage());
@@ -121,6 +164,7 @@ public class ResEventManager implements OseeMessagingStatusCallback {
@Override
public void success() {
+ // do nothing
}
public class RemoteAccessControlEvent1Listener extends OseeMessagingListener {

Back to the top