org.jafer.transport
Class PDUDriver
java.lang.Object
org.jafer.transport.PDUDriver
public class PDUDriver
- extends java.lang.Object
Used by ZClient and ZServer Session for Z39.50 input/output - each session has it's own PDUDriver.
Includes methods for get/send PDU and close. I/O errors throw org.jafer.util.ConnectionException -
caught and handled by the session object.
- Version:
- 1.0
- Author:
- Antony Corfield; Matthew Dovey; Colin Tatham
Field Summary |
private java.util.Hashtable |
closeReason
|
private static long |
DATA_TIMEOUT
|
private java.io.BufferedOutputStream |
dest
|
private static java.util.logging.Logger |
logger
|
(package private) boolean |
reentrant
|
private java.lang.String |
sessionName
|
private java.net.Socket |
socket
|
private java.io.BufferedInputStream |
src
|
Constructor Summary |
PDUDriver(java.lang.String sessionName,
java.net.Socket socket,
int timeout)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DATA_TIMEOUT
private static long DATA_TIMEOUT
logger
private static java.util.logging.Logger logger
closeReason
private java.util.Hashtable closeReason
socket
private java.net.Socket socket
src
private java.io.BufferedInputStream src
dest
private java.io.BufferedOutputStream dest
sessionName
private java.lang.String sessionName
reentrant
boolean reentrant
PDUDriver
public PDUDriver(java.lang.String sessionName,
java.net.Socket socket,
int timeout)
throws java.io.IOException
- Throws:
java.io.IOException
getBEREncoding
public asn1.BEREncoding getBEREncoding()
throws ConnectionException
- Throws:
ConnectionException
dumpPDU
private java.lang.String dumpPDU(z3950.v3.PDU pdu)
getPDU
public z3950.v3.PDU getPDU()
throws ConnectionException
- Throws:
ConnectionException
sendPDU
public void sendPDU(z3950.v3.PDU pduResponse)
throws ConnectionException
- Throws:
ConnectionException
initClose
public void initClose(int reason)
throws ConnectionException
- Throws:
ConnectionException
respClose
public void respClose(z3950.v3.PDU pduRequest)
throws ConnectionException
- Throws:
ConnectionException
waitClosePDU
private void waitClosePDU()
waitForPDU
private z3950.v3.PDU waitForPDU()
throws ConnectionException
- Throws:
ConnectionException
getCloseReason
private java.lang.String getCloseReason(int k)
loadCloseReason
private java.util.Hashtable loadCloseReason(java.util.Hashtable closeReason)