com.caucho.hessian.mux
Class MuxServer

java.lang.Object
  extended by com.caucho.hessian.mux.MuxServer

public class MuxServer
extends java.lang.Object

Hessian Mux, a peer-to-peer protocol.


Constructor Summary
MuxServer()
          Null argument constructor.
MuxServer(java.io.InputStream is, java.io.OutputStream os, boolean isClient)
          Create a new multiplexor with input and output streams.
 
Method Summary
 void close()
          Close the mux
 java.io.InputStream getInputStream()
          Gets the raw input stream.
 java.io.OutputStream getOutputStream()
          Gets the raw output stream.
 void init(java.io.InputStream is, java.io.OutputStream os, boolean isClient)
          Initialize the multiplexor with input and output streams.
 boolean readRequest(MuxInputStream in, MuxOutputStream out)
          Reads a server request.
 boolean startCall(int channel, MuxInputStream in, MuxOutputStream out)
          Starts a client call.
 boolean startCall(MuxInputStream in, MuxOutputStream out)
          Starts a client call.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MuxServer

public MuxServer()
Null argument constructor.


MuxServer

public MuxServer(java.io.InputStream is,
                 java.io.OutputStream os,
                 boolean isClient)
Create a new multiplexor with input and output streams.

Parameters:
is - the underlying input stream
os - the underlying output stream
isClient - true if this is the connection client.
Method Detail

init

public void init(java.io.InputStream is,
                 java.io.OutputStream os,
                 boolean isClient)
Initialize the multiplexor with input and output streams.

Parameters:
is - the underlying input stream
os - the underlying output stream
isClient - true if this is the connection client.

getInputStream

public java.io.InputStream getInputStream()
Gets the raw input stream. Clients will normally not call this.


getOutputStream

public java.io.OutputStream getOutputStream()
Gets the raw output stream. Clients will normally not call this.


startCall

public boolean startCall(MuxInputStream in,
                         MuxOutputStream out)
                  throws java.io.IOException
Starts a client call.

Throws:
java.io.IOException

startCall

public boolean startCall(int channel,
                         MuxInputStream in,
                         MuxOutputStream out)
                  throws java.io.IOException
Starts a client call.

Throws:
java.io.IOException

readRequest

public boolean readRequest(MuxInputStream in,
                           MuxOutputStream out)
                    throws java.io.IOException
Reads a server request.

Throws:
java.io.IOException

close

public void close()
           throws java.io.IOException
Close the mux

Throws:
java.io.IOException