Hi,

I have prepared a patch to allow a more flexible configuration of
org.apache.jk.server.tomcat40.JkConnector.
My idea is to add Parameter to the Connector entry. The entry would be the class
that allows communication between TC and Apache.
Channel=org.apache.jk.common.ChannelJni.class (A jni connector).
Channel=org.apache.jk.common.ChannelUn.class (An AF_UNIX connector).
Channel=org.apache.jk.common.ChannelSocket.class (A normal socket
connector,should be the default value ;-)).
Channel= ...

The first part include in the attachement.

Could someone have a look to it and makes some comments? (The
ChannelUnixSocket.java I will remove because it is useless).

Cheers

Jean-frederic
Index: org/apache/jk/common/ChannelJni.java
===================================================================
RCS file: 
/home/cvs/mirror/jakarta-tomcat-connectors/jk/java/org/apache/jk/common/ChannelJni.java,v
retrieving revision 1.1
diff -u -r1.1 ChannelJni.java
--- org/apache/jk/common/ChannelJni.java        12 Jan 2002 04:03:42 -0000      1.1
+++ org/apache/jk/common/ChannelJni.java        15 Jan 2002 17:44:56 -0000
@@ -77,7 +77,7 @@
  *
  * @author Costin Manolache
  */
-public class ChannelJni extends Channel {
+public class ChannelJni extends JkChannel implements Channel {
 
 
     /* ==================== ==================== */
Index: org/apache/jk/common/ChannelSocket.java
===================================================================
RCS file: 
/home/cvs/mirror/jakarta-tomcat-connectors/jk/java/org/apache/jk/common/ChannelSocket.java,v
retrieving revision 1.1
diff -u -r1.1 ChannelSocket.java
--- org/apache/jk/common/ChannelSocket.java     31 Dec 2001 19:02:01 -0000      1.1
+++ org/apache/jk/common/ChannelSocket.java     15 Jan 2002 17:44:56 -0000
@@ -94,7 +94,7 @@
  *
  * @author Costin Manolache
  */
-public class ChannelSocket extends Channel {
+public class ChannelSocket extends JkChannel implements Channel {
 
     int port;
     InetAddress inet;
@@ -152,7 +152,6 @@
     public void setSoTimeout( int i ) {
        socketTimeout=i;
     }
-    
 
     /* ==================== ==================== */
     ServerSocket sSocket;
Index: org/apache/jk/common/ChannelUn.java
===================================================================
RCS file: 
/home/cvs/mirror/jakarta-tomcat-connectors/jk/java/org/apache/jk/common/ChannelUn.java,v
retrieving revision 1.3
diff -u -r1.3 ChannelUn.java
--- org/apache/jk/common/ChannelUn.java 14 Jan 2002 09:36:13 -0000      1.3
+++ org/apache/jk/common/ChannelUn.java 15 Jan 2002 17:44:57 -0000
@@ -77,7 +77,7 @@
  *
  * @author Costin Manolache
  */
-public class ChannelUn extends Channel {
+public class ChannelUn extends JkChannel implements Channel {
 
     String file;
     Worker worker;
Index: org/apache/jk/common/ChannelUnixSocket.java
===================================================================
RCS file: 
/home/cvs/mirror/jakarta-tomcat-connectors/jk/java/org/apache/jk/common/ChannelUnixSocket.java,v
retrieving revision 1.2
diff -u -r1.2 ChannelUnixSocket.java
--- org/apache/jk/common/ChannelUnixSocket.java 6 Jan 2002 09:14:07 -0000       1.2
+++ org/apache/jk/common/ChannelUnixSocket.java 15 Jan 2002 17:44:57 -0000
@@ -96,7 +96,7 @@
  * @author Costin Manolache
  * @author Jean-Frederic Clere (Well, I have copied Costin's code and ideas).
  */
-public class ChannelUnixSocket extends Channel {
+public class ChannelUnixSocket extends JkChannel implements Channel {
 
     /* XXX do not have port/Address */
     // int port;
Index: org/apache/jk/core/Channel.java
===================================================================
RCS file: 
/home/cvs/mirror/jakarta-tomcat-connectors/jk/java/org/apache/jk/core/Channel.java,v
retrieving revision 1.1
diff -u -r1.1 Channel.java
--- org/apache/jk/core/Channel.java     31 Dec 2001 19:03:53 -0000      1.1
+++ org/apache/jk/core/Channel.java     15 Jan 2002 17:44:57 -0000
@@ -81,21 +81,21 @@
  * @author Kevin Seguin
  * @author Costin Manolache
  */
-public abstract class Channel {
-    protected WorkerEnv we;
+public interface Channel {
 
-    public void setWorkerEnv( WorkerEnv we ) {
-        this.we=we;
-    }
+    public void setWorkerEnv( WorkerEnv we );
     
-    public void init() throws IOException {
-    }
-            
+    public void init() throws IOException;
     
-    public void write( Endpoint ep, byte[] b, int offset, int len) throws IOException 
{
-    }
+    public void write( Endpoint ep, byte[] b, int offset, int len)
+                throws IOException;
 
-    public int read( Endpoint ep, byte[] b, int offset, int len) throws IOException {
-        return -1;
-    }
+    public int read( Endpoint ep, byte[] b, int offset, int len)
+               throws IOException;
+
+    public void setJkHome(String home);
+
+    public void setWorker(Worker wo);
+
+    public void setFile(String file);
 }
Index: org/apache/jk/server/JkMain.java
===================================================================
RCS file: 
/home/cvs/mirror/jakarta-tomcat-connectors/jk/java/org/apache/jk/server/JkMain.java,v
retrieving revision 1.4
diff -u -r1.4 JkMain.java
--- org/apache/jk/server/JkMain.java    12 Jan 2002 04:25:14 -0000      1.4
+++ org/apache/jk/server/JkMain.java    15 Jan 2002 17:44:57 -0000
@@ -111,7 +111,7 @@
     }
     
     public void start() throws IOException {
-        ChannelUn csocket=new ChannelUn();
+        Channel csocket=new ChannelUn();
 //         if( jkHome==null )
             csocket.setFile(  "/tmp/tomcatUnixSocket" );
 //         else

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to