org.apache.commons.net.io
Class SocketInputStream

java.lang.Object
  extended by java.io.InputStream
      extended by java.io.FilterInputStream
          extended by org.apache.commons.net.io.SocketInputStream
All Implemented Interfaces:
Closeable

public class SocketInputStream
extends FilterInputStream

This class wraps an input stream, storing a reference to its originating socket. When the stream is closed, it will also close the socket immediately afterward. This class is useful for situations where you are dealing with a stream originating from a socket, but do not have a reference to the socket, and want to make sure it closes when the stream closes.

Author:
Daniel F. Savarese
See Also:
SocketOutputStream

Field Summary
 
Fields inherited from class java.io.FilterInputStream
in
 
Constructor Summary
SocketInputStream(Socket socket, InputStream stream)
          Creates a SocketInputStream instance wrapping an input stream and storing a reference to a socket that should be closed on closing the stream.
 
Method Summary
 void close()
          Closes the stream and immediately afterward closes the referenced socket.
 
Methods inherited from class java.io.FilterInputStream
available, mark, markSupported, read, read, read, reset, skip
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SocketInputStream

public SocketInputStream(Socket socket,
                         InputStream stream)
Creates a SocketInputStream instance wrapping an input stream and storing a reference to a socket that should be closed on closing the stream.

Parameters:
socket - The socket to close on closing the stream.
stream - The input stream to wrap.
Method Detail

close

public void close()
           throws IOException
Closes the stream and immediately afterward closes the referenced socket.

Specified by:
close in interface Closeable
Overrides:
close in class FilterInputStream
Throws:
IOException - If there is an error in closing the stream or socket.


Copyright © 1997-2010 The Apache Software Foundation. All Rights Reserved.