Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.net.io
Class SocketOutputStream

    java.lang.Object
      java.io.OutputStream
          java.io.FilterOutputStream
              org.apache.commons.net.io.SocketOutputStream

All Implemented Interfaces:
  Closeable, Flushable

    public class SocketOutputStream

extends FilterOutputStream

This class wraps an output 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.

See Also:
  `SocketInputStream`

Field Summary

Fields inherited from class java.io.FilterOutputStream
`out`

Constructor Summary
`SocketOutputStream(Socket socket, OutputStream stream)` Creates a SocketOutputStream instance wrapping an output 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.
`void` | `write(byte[] buffer, int offset, int length)` Writes a number of bytes from a byte array to the stream starting from a given offset.

Methods inherited from class java.io.FilterOutputStream
`flush, write, write`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### SocketOutputStream

    public SocketOutputStream(Socket socket,
                              OutputStream stream)

  Creates a SocketOutputStream instance wrapping an output 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

### write

    public void write(byte[] buffer,
                      int offset,
                      int length)
               throws IOException

  Writes a number of bytes from a byte array to the stream starting from a given offset. This method bypasses the equivalent method in FilterOutputStream because the FilterOutputStream implementation is very inefficient.

  Overrides:
    `write` in class `FilterOutputStream`
  Parameters:
    `buffer` - The byte array to write.
    `offset` - The offset into the array at which to start copying data.
    `length` - The number of bytes to write.
  Throws:
    `IOException` - If an error occurs while writing to the underlying stream.

### 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 `FilterOutputStream`
  Throws:
    `IOException` - If there is an error in closing the stream or socket.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2012 The Apache Software Foundation. All Rights Reserved.