jcifs.util.transport

Class Transport

public abstract class Transport extends Object implements Runnable

This class simplifies communication for protocols that support multiplexing requests. It encapsulates a stream and some protocol knowledge (provided by a concrete subclass) so that connecting, disconnecting, sending, and receiving can be syncronized properly. Apparatus is provided to send and receive requests concurrently.
Field Summary
protected HashMapresponse_map
ObjectsetupDiscoLock
Method Summary
voidconnect(long timeout)
voiddisconnect(boolean hard)
protected abstract voiddoConnect()
protected abstract voiddoDisconnect(boolean hard)
protected abstract voiddoRecv(Response response)
protected abstract voiddoSend(Request request)
protected abstract voiddoSkip()
protected abstract voidmakeKey(Request request)
protected abstract RequestpeekKey()
static intreadn(InputStream in, byte[] b, int off, int len)
voidrun()
voidsendrecv(Request request, Response response, long timeout)
StringtoString()

Field Detail

response_map

protected HashMap response_map

setupDiscoLock

public Object setupDiscoLock

Method Detail

connect

public void connect(long timeout)

disconnect

public void disconnect(boolean hard)

doConnect

protected abstract void doConnect()

doDisconnect

protected abstract void doDisconnect(boolean hard)

doRecv

protected abstract void doRecv(Response response)

doSend

protected abstract void doSend(Request request)

doSkip

protected abstract void doSkip()

makeKey

protected abstract void makeKey(Request request)

peekKey

protected abstract Request peekKey()

readn

public static int readn(InputStream in, byte[] b, int off, int len)

run

public void run()

sendrecv

public void sendrecv(Request request, Response response, long timeout)

toString

public String toString()