From: adam Date: Thu, 23 Sep 2004 04:39:42 +0000 (+0000) Subject: better listener detection/dispatch X-Git-Url: http://git.megacz.com/?p=org.ibex.jinetd.git;a=commitdiff_plain;h=383219a33fe21df43472e0a3cb5341c7f7d44a00 better listener detection/dispatch darcs-hash:20040923043942-5007d-5b795836a02589ff9405e9eebc2af6db8c476492.gz --- diff --git a/src/org/ibex/jinetd/Port.java b/src/org/ibex/jinetd/Port.java index 470c0a0..8ac02a5 100644 --- a/src/org/ibex/jinetd/Port.java +++ b/src/org/ibex/jinetd/Port.java @@ -33,7 +33,16 @@ public class Port extends Loader { super.changed(w); } - boolean dispatch(final Connection conn) throws Exception { + + Class isListener(String name) throws ClassNotFoundException { + final ClassLoader cl = getClassLoader(); + final Class c = cl.loadClass(name); + if (c == null) return null; + if (Listener.class.isAssignableFrom(c) && c != Listener.class) return c; + return null; + } + + Class findListener() throws Exception { getClassLoader(); String[] list = list(); for(int i=0; i