[jboss-cvs] JBossRemoting/src/main/org/jboss/remoting ...
Ron Sigal
ron_sigal at yahoo.com
Wed Jan 17 00:09:25 EST 2007
User: rsigal
Date: 07/01/17 00:09:25
Modified: src/main/org/jboss/remoting Tag: remoting_2_x
AbstractInvoker.java
Log:
JBREM-298: Added ability to create socket creation listener from class name.
Revision Changes Path
No revision
No revision
1.12.4.10 +26 -5 JBossRemoting/src/main/org/jboss/remoting/AbstractInvoker.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: AbstractInvoker.java
===================================================================
RCS file: /cvsroot/jboss/JBossRemoting/src/main/org/jboss/remoting/AbstractInvoker.java,v
retrieving revision 1.12.4.9
retrieving revision 1.12.4.10
diff -u -b -r1.12.4.9 -r1.12.4.10
--- AbstractInvoker.java 16 Jan 2007 23:28:46 -0000 1.12.4.9
+++ AbstractInvoker.java 17 Jan 2007 05:09:24 -0000 1.12.4.10
@@ -51,11 +51,11 @@
*
* @author <a href="mailto:jhaynie at vocalocity.net">Jeff Haynie</a>
* @author <a href="mailto:telrod at e2technologies.net">Tom Elrod</a>
- * @version $Revision: 1.12.4.9 $
+ * @version $Revision: 1.12.4.10 $
*/
public abstract class AbstractInvoker implements Invoker
{
- protected final Logger log = Logger.getLogger(getClass());
+ protected final static Logger log = Logger.getLogger(AbstractInvoker.class);
protected ClassByteClassLoader classbyteloader;
protected InvokerLocator locator;
protected Map localServerLocators = new HashMap();
@@ -323,14 +323,35 @@
return socketFactory;
Object o = config.get(Remoting.SOCKET_CREATION_CLIENT_LISTENER);
- if (o != null && o instanceof SocketCreationListener)
+
+ if (o == null)
+ return socketFactory;
+
+ if (o instanceof SocketCreationListener)
{
SocketCreationListener listener = (SocketCreationListener) o;
return new CreationListenerSocketFactory(socketFactory, listener);
}
-
+ else if (o instanceof String)
+ {
+ try
+ {
+ Class c = ClassLoaderUtility.loadClass((String) o, AbstractInvoker.class);
+ SocketCreationListener listener = (SocketCreationListener) c.newInstance();
+ return new CreationListenerSocketFactory(socketFactory, listener);
+ }
+ catch (Exception e)
+ {
+ log.error("unable to instantiate class: " + o, e);
+ return socketFactory;
+ }
+ }
+ else
+ {
+ log.error("unrecognized type for socket creation client listener: " + o);
return socketFactory;
}
+ }
static public boolean isCompleteSocketFactory(SocketFactory sf)
More information about the jboss-cvs-commits
mailing list