ch.ethz.ssh2.channel
Class StreamForwarder

java.lang.Object
  extended byjava.lang.Thread
      extended bych.ethz.ssh2.channel.StreamForwarder
All Implemented Interfaces:
java.lang.Runnable

public class StreamForwarder
extends java.lang.Thread

A StreamForwarder forwards data between two given streams. If two StreamForwarder threads are used (one for each direction) then one can be configured to shutdown the underlying channel/socket if both threads have finished forwarding (EOF).

Version:
$Id: StreamForwarder.java,v 1.2 2006/02/13 21:19:25 cplattne Exp $
Author:
Christian Plattner, plattner@inf.ethz.ch

Field Summary
(package private)  byte[] buffer
           
(package private)  Channel c
           
(package private)  java.io.InputStream is
           
(package private)  java.lang.String mode
           
(package private)  java.io.OutputStream os
           
(package private)  java.net.Socket s
           
(package private)  StreamForwarder sibling
           
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
(package private) StreamForwarder(Channel c, StreamForwarder sibling, java.net.Socket s, java.io.InputStream is, java.io.OutputStream os, java.lang.String mode)
           
 
Method Summary
 void run()
           
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getContextClassLoader, getName, getPriority, getThreadGroup, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setName, setPriority, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

os

java.io.OutputStream os

is

java.io.InputStream is

buffer

byte[] buffer

c

Channel c

sibling

StreamForwarder sibling

s

java.net.Socket s

mode

java.lang.String mode
Constructor Detail

StreamForwarder

StreamForwarder(Channel c,
                StreamForwarder sibling,
                java.net.Socket s,
                java.io.InputStream is,
                java.io.OutputStream os,
                java.lang.String mode)
          throws java.io.IOException
Method Detail

run

public void run()