com.kodemuse.net
Class SocketWrapper

java.lang.Object
  |
  +--java.net.Socket
        |
        +--com.kodemuse.net.SocketWrapper
Direct Known Subclasses:
SSLSocket

public class SocketWrapper
extends java.net.Socket

 Wraps a socket to 
 - permit subclasses to add value while presenting consistent java.net.Socket API
 - provide consitent handling for JDK 1.3 and 1.4

 This class can be used with ConnectionDecorator interface to
 provide applications consistent java.net.Socket API while adding
 value add like SSL transparently.
 

Author:
Harmeet Bedi

Field Summary
protected  java.net.Socket inner
           
 
Fields inherited from class java.net.Socket
impl
 
Constructor Summary
protected SocketWrapper(java.net.Socket inner)
           
 
Method Summary
 void close()
           
 java.net.InetAddress getInetAddress()
           
 java.io.InputStream getInputStream()
           
 boolean getKeepAlive()
           
 java.net.InetAddress getLocalAddress()
           
 int getLocalPort()
           
 java.io.OutputStream getOutputStream()
           
 int getPort()
           
 int getReceiveBufferSize()
           
 int getSendBufferSize()
           
 int getSoLinger()
           
 int getSoTimeout()
           
 boolean getTcpNoDelay()
           
protected  org.apache.log4j.Category log()
           
 void setKeepAlive(boolean on)
           
 void setReceiveBufferSize(int size)
           
 void setSendBufferSize(int size)
           
 void setSoLinger(boolean on, int linger)
           
 void setSoTimeout(int timeout)
           
 void setTcpNoDelay(boolean on)
           
 void shutdownInput()
           
 void shutdownOutput()
           
 java.lang.String toString()
           
 
Methods inherited from class java.net.Socket
setSocketImplFactory
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

inner

protected final java.net.Socket inner
Constructor Detail

SocketWrapper

protected SocketWrapper(java.net.Socket inner)
                 throws java.net.SocketException
Method Detail

getInetAddress

public java.net.InetAddress getInetAddress()
Overrides:
getInetAddress in class java.net.Socket

getLocalAddress

public java.net.InetAddress getLocalAddress()
Overrides:
getLocalAddress in class java.net.Socket

getPort

public int getPort()
Overrides:
getPort in class java.net.Socket

getLocalPort

public int getLocalPort()
Overrides:
getLocalPort in class java.net.Socket

getInputStream

public java.io.InputStream getInputStream()
                                   throws java.io.IOException
Overrides:
getInputStream in class java.net.Socket

getOutputStream

public java.io.OutputStream getOutputStream()
                                     throws java.io.IOException
Overrides:
getOutputStream in class java.net.Socket

setTcpNoDelay

public void setTcpNoDelay(boolean on)
                   throws java.net.SocketException
Overrides:
setTcpNoDelay in class java.net.Socket

getTcpNoDelay

public boolean getTcpNoDelay()
                      throws java.net.SocketException
Overrides:
getTcpNoDelay in class java.net.Socket

setSoLinger

public void setSoLinger(boolean on,
                        int linger)
                 throws java.net.SocketException
Overrides:
setSoLinger in class java.net.Socket

getSoLinger

public int getSoLinger()
                throws java.net.SocketException
Overrides:
getSoLinger in class java.net.Socket

setSoTimeout

public void setSoTimeout(int timeout)
                  throws java.net.SocketException
Overrides:
setSoTimeout in class java.net.Socket

getSoTimeout

public int getSoTimeout()
                 throws java.net.SocketException
Overrides:
getSoTimeout in class java.net.Socket

setSendBufferSize

public void setSendBufferSize(int size)
                       throws java.net.SocketException
Overrides:
setSendBufferSize in class java.net.Socket

getSendBufferSize

public int getSendBufferSize()
                      throws java.net.SocketException
Overrides:
getSendBufferSize in class java.net.Socket

setReceiveBufferSize

public void setReceiveBufferSize(int size)
                          throws java.net.SocketException
Overrides:
setReceiveBufferSize in class java.net.Socket

getReceiveBufferSize

public int getReceiveBufferSize()
                         throws java.net.SocketException
Overrides:
getReceiveBufferSize in class java.net.Socket

setKeepAlive

public void setKeepAlive(boolean on)
                  throws java.net.SocketException
Overrides:
setKeepAlive in class java.net.Socket

getKeepAlive

public boolean getKeepAlive()
                     throws java.net.SocketException
Overrides:
getKeepAlive in class java.net.Socket

close

public void close()
           throws java.io.IOException
Overrides:
close in class java.net.Socket

shutdownInput

public void shutdownInput()
                   throws java.io.IOException
Overrides:
shutdownInput in class java.net.Socket

shutdownOutput

public void shutdownOutput()
                    throws java.io.IOException
Overrides:
shutdownOutput in class java.net.Socket

toString

public java.lang.String toString()
Overrides:
toString in class java.net.Socket

log

protected final org.apache.log4j.Category log()