ORO, Inc. Logo  All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class com.oroinc.io.SocketOutputStream

java.lang.Object
   |
   +----java.io.OutputStream
           |
           +----java.io.FilterOutputStream
                   |
                   +----com.oroinc.io.SocketOutputStream

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.

Copyright © 1997 Original Reusable Objects, Inc. All rights reserved.

See Also:
SocketInputStream

Constructor Index

 o SocketOutputStream(Socket, OutputStream)
Creates a SocketOutputStream instance wrapping an output stream and storing a reference to a socket that should be closed on closing the stream.

Method Index

 o close()
Closes the stream and immediately afterward closes the referenced socket.
 o write(byte[], int, int)
Writes a number of bytes from a byte array to the stream starting from a given offset.

Constructors

 o 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.

Methods

 o 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.

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.
Overrides:
write in class FilterOutputStream
 o close
 public void close() throws IOException
Closes the stream and immediately afterward closes the referenced socket.

Throws: IOException
If there is an error in closing the stream or socket.
Overrides:
close in class FilterOutputStream

ORO, Inc. Logo  All Packages  Class Hierarchy  This Package  Previous  Next  Index