You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by gd...@apache.org on 2004/05/27 17:46:54 UTC
cvs commit: incubator-geronimo/sandbox/messaging/src/java/org/apache/geronimo/messaging/reference ReferenceableManagerImpl.java
gdamour 2004/05/27 08:46:54
Modified: sandbox/messaging/src/java/org/apache/geronimo/messaging/admin/deployment
AdminServer.java ManagedServer.java
sandbox/messaging/src/java/org/apache/geronimo/messaging/io
StreamManagerImpl.java
sandbox/messaging/src/java/org/apache/geronimo/messaging/reference
ReferenceableManagerImpl.java
Log:
When these EndPoints are started, adds their ReplacerResolvers to the
ReplacerResolver of the hosting Node.
Conversely, when they are stopped or failed, one sets them offline.
Revision Changes Path
1.2 +22 -2 incubator-geronimo/sandbox/messaging/src/java/org/apache/geronimo/messaging/admin/deployment/AdminServer.java
Index: AdminServer.java
===================================================================
RCS file: /home/cvs/incubator-geronimo/sandbox/messaging/src/java/org/apache/geronimo/messaging/admin/deployment/AdminServer.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- AdminServer.java 27 May 2004 14:45:59 -0000 1.1
+++ AdminServer.java 27 May 2004 15:46:54 -0000 1.2
@@ -42,9 +42,11 @@
import org.apache.geronimo.deployment.plugin.DeploymentServer;
import org.apache.geronimo.deployment.plugin.FailedProgressObject;
import org.apache.geronimo.deployment.plugin.TargetImpl;
+import org.apache.geronimo.gbean.WaitingException;
import org.apache.geronimo.messaging.AbstractEndPoint;
import org.apache.geronimo.messaging.Node;
import org.apache.geronimo.messaging.NodeInfo;
+import org.apache.geronimo.messaging.io.ReplacerResolver;
import org.apache.geronimo.messaging.proxy.EndPointProxyInfo;
import org.apache.xmlbeans.XmlObject;
@@ -71,6 +73,8 @@
*/
private final Map nameToInfo;
+ private final ReplacerResolver replacerResolver;
+
/**
* Creates an administration server mounted by the specified node and
* having the provided identifier.
@@ -81,7 +85,7 @@
public AdminServer(Node aNode, Object anID) {
super(aNode, anID);
- node.getReplacerResolver().append(new DeploymentReplacerResolver());
+ replacerResolver = new DeploymentReplacerResolver();
nameToInfo = new HashMap();
NodeInfo[] nodes =
@@ -97,6 +101,22 @@
info.target = new TargetImpl(nodeInfo.getName(), null);
nameToInfo.put(nodeInfo.getName(), info);
}
+ }
+
+ public void doStart() throws WaitingException, Exception {
+ super.doStart();
+ replacerResolver.online();
+ node.getReplacerResolver().append(replacerResolver);
+ }
+
+ public void doStop() throws WaitingException, Exception {
+ super.doStop();
+ replacerResolver.offline();
+ }
+
+ public void doFail() {
+ super.doFail();
+ replacerResolver.offline();
}
public boolean isLocal() {
1.2 +22 -2 incubator-geronimo/sandbox/messaging/src/java/org/apache/geronimo/messaging/admin/deployment/ManagedServer.java
Index: ManagedServer.java
===================================================================
RCS file: /home/cvs/incubator-geronimo/sandbox/messaging/src/java/org/apache/geronimo/messaging/admin/deployment/ManagedServer.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- ManagedServer.java 27 May 2004 14:45:59 -0000 1.1
+++ ManagedServer.java 27 May 2004 15:46:54 -0000 1.2
@@ -39,11 +39,13 @@
import org.apache.geronimo.deployment.plugin.local.DistributeCommand;
import org.apache.geronimo.deployment.plugin.local.StartCommand;
import org.apache.geronimo.deployment.plugin.local.StopCommand;
+import org.apache.geronimo.gbean.WaitingException;
import org.apache.geronimo.kernel.Kernel;
import org.apache.geronimo.kernel.KernelMBean;
import org.apache.geronimo.kernel.config.ConfigurationStore;
import org.apache.geronimo.messaging.AbstractEndPoint;
import org.apache.geronimo.messaging.Node;
+import org.apache.geronimo.messaging.io.ReplacerResolver;
import org.apache.geronimo.messaging.reference.ReferenceableEnhancer;
import org.apache.xmlbeans.SchemaTypeLoader;
import org.apache.xmlbeans.XmlException;
@@ -74,6 +76,8 @@
private final ConfigurationStore store;
private final Kernel kernel;
+ private final ReplacerResolver replacerResolver;
+
/**
* Creates a managed deployment server for the specified node.
*
@@ -97,7 +101,23 @@
// Should be a KernelMBean
kernel = (Kernel) aKernel;
- node.getReplacerResolver().append(new DeploymentReplacerResolver());
+ replacerResolver = new DeploymentReplacerResolver();
+ }
+
+ public void doStart() throws WaitingException, Exception {
+ super.doStart();
+ replacerResolver.online();
+ node.getReplacerResolver().append(replacerResolver);
+ }
+
+ public void doStop() throws WaitingException, Exception {
+ super.doStop();
+ replacerResolver.offline();
+ }
+
+ public void doFail() {
+ super.doFail();
+ replacerResolver.offline();
}
public ProgressObject distribute(
1.2 +23 -3 incubator-geronimo/sandbox/messaging/src/java/org/apache/geronimo/messaging/io/StreamManagerImpl.java
Index: StreamManagerImpl.java
===================================================================
RCS file: /home/cvs/incubator-geronimo/sandbox/messaging/src/java/org/apache/geronimo/messaging/io/StreamManagerImpl.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- StreamManagerImpl.java 11 May 2004 12:06:41 -0000 1.1
+++ StreamManagerImpl.java 27 May 2004 15:46:54 -0000 1.2
@@ -25,6 +25,7 @@
import java.util.HashMap;
import java.util.Map;
+import org.apache.geronimo.gbean.WaitingException;
import org.apache.geronimo.messaging.AbstractEndPoint;
import org.apache.geronimo.messaging.EndPoint;
import org.apache.geronimo.messaging.Node;
@@ -66,6 +67,8 @@
*/
private final Map inputStreams;
+ private final ReplacerResolver replacerResolver;
+
/**
* Creates a manager owned by the specified node.
*
@@ -78,7 +81,24 @@
}
owningNode = aNode.getNodeInfo();
inputStreams = new HashMap();
- aNode.getReplacerResolver().append(new InputStreamReplacerResolver());
+
+ replacerResolver = new InputStreamReplacerResolver();
+ }
+
+ public void doStart() throws WaitingException, Exception {
+ super.doStart();
+ replacerResolver.online();
+ node.getReplacerResolver().append(replacerResolver);
+ }
+
+ public void doStop() throws WaitingException, Exception {
+ super.doStop();
+ replacerResolver.offline();
+ }
+
+ public void doFail() {
+ super.doFail();
+ replacerResolver.offline();
}
public Object register(InputStream anIn) {
1.3 +22 -3 incubator-geronimo/sandbox/messaging/src/java/org/apache/geronimo/messaging/reference/ReferenceableManagerImpl.java
Index: ReferenceableManagerImpl.java
===================================================================
RCS file: /home/cvs/incubator-geronimo/sandbox/messaging/src/java/org/apache/geronimo/messaging/reference/ReferenceableManagerImpl.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- ReferenceableManagerImpl.java 24 May 2004 13:02:55 -0000 1.2
+++ ReferenceableManagerImpl.java 27 May 2004 15:46:54 -0000 1.3
@@ -21,6 +21,7 @@
import java.util.IdentityHashMap;
import java.util.Map;
+import org.apache.geronimo.gbean.WaitingException;
import org.apache.geronimo.messaging.AbstractEndPoint;
import org.apache.geronimo.messaging.Msg;
import org.apache.geronimo.messaging.Node;
@@ -28,6 +29,7 @@
import org.apache.geronimo.messaging.Request;
import org.apache.geronimo.messaging.Result;
import org.apache.geronimo.messaging.interceptors.MsgOutInterceptor;
+import org.apache.geronimo.messaging.io.ReplacerResolver;
/**
* ReferenceableManager implementation.
@@ -56,6 +58,8 @@
*/
private final IdentityHashMap referenceableToID;
+ private final ReplacerResolver replacerResolver;
+
/**
* Creates a manager mounted by the specified node and having the specified
* identifier.
@@ -69,10 +73,25 @@
idToReferenceable = new HashMap();
referenceableToID = new IdentityHashMap();
- // Adds the ReferenceReplacerResolver to the current chain.
- node.getReplacerResolver().append(new ReferenceReplacerResolver(this));
+ replacerResolver = new ReferenceReplacerResolver(this);
}
+ public void doStart() throws WaitingException, Exception {
+ super.doStart();
+ replacerResolver.online();
+ node.getReplacerResolver().append(replacerResolver);
+ }
+
+ public void doStop() throws WaitingException, Exception {
+ super.doStop();
+ replacerResolver.offline();
+ }
+
+ public void doFail() {
+ super.doFail();
+ replacerResolver.offline();
+ }
+
public Object factoryProxy(ReferenceableInfo aReferenceInfo) {
NodeInfo hostingNode = aReferenceInfo.getHostingNode();
Object endPointID = aReferenceInfo.getID();