net.sourceforge.jtds.jdbc
Class SharedNamedPipe

java.lang.Object
  extended by net.sourceforge.jtds.jdbc.SharedSocket
      extended by net.sourceforge.jtds.jdbc.SharedNamedPipe

public class SharedNamedPipe
extends SharedSocket

This class implements inter-process communication (IPC) to the database server using named pipes.

Version:
$Id: SharedNamedPipe.java,v 1.19.2.2 2009/12/10 09:54:04 ickzon Exp $
Author:
David D. Kilzer
To do:
Extract abstract base class SharedIpc from SharedSocket and this class., Implement connection timeouts for named pipes.

Field Summary
private  jcifs.smb.SmbNamedPipe pipe
          The shared named pipe.
 
Fields inherited from class net.sourceforge.jtds.jdbc.SharedSocket
serverType
 
Constructor Summary
SharedNamedPipe(ConnectionJDBC2 connection)
          Creates a new instance of SharedNamedPipe.
 
Method Summary
(package private)  void close()
          Close the socket (noop if in shared mode).
(package private)  void forceClose()
          Force close the socket causing any pending reads/writes to fail.
private  jcifs.smb.SmbNamedPipe getPipe()
          Getter for pipe field.
(package private)  boolean isConnected()
          Get the connected status of this socket.
private  void setPipe(jcifs.smb.SmbNamedPipe pipe)
          Setter for pipe field.
protected  void setTimeout(int timeout)
          Set the socket timeout.
 
Methods inherited from class net.sourceforge.jtds.jdbc.SharedSocket
cancel, closeStream, disableEncryption, enableEncryption, finalize, getCharset, getCharsetInfo, getHost, getIn, getMemoryBudget, getMinMemPkts, getNetPacket, getOut, getPktLen, getPort, getRequestStream, getResponseStream, getTdsVersion, sendNetPacket, setCharsetInfo, setIn, setKeepAlive, setMemoryBudget, setMinMemPkts, setOut, setTdsVersion
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

pipe

private jcifs.smb.SmbNamedPipe pipe
The shared named pipe.

Constructor Detail

SharedNamedPipe

public SharedNamedPipe(ConnectionJDBC2 connection)
                throws java.io.IOException
Creates a new instance of SharedNamedPipe.

Parameters:
connection -
Throws:
java.io.IOException - if the named pipe or its input or output streams do not open
java.net.UnknownHostException - if host cannot be found for the named pipe
Method Detail

isConnected

boolean isConnected()
Get the connected status of this socket.

Overrides:
isConnected in class SharedSocket
Returns:
true if the underlying socket is connected

close

void close()
     throws java.io.IOException
Close the socket (noop if in shared mode).

Overrides:
close in class SharedSocket
Throws:
java.io.IOException - if the socket close fails

forceClose

void forceClose()
Force close the socket causing any pending reads/writes to fail.

Used by the login timer to abort a login attempt.

Overrides:
forceClose in class SharedSocket

getPipe

private jcifs.smb.SmbNamedPipe getPipe()
Getter for pipe field.

Returns:
SmbNamedPipe used for communication

setPipe

private void setPipe(jcifs.smb.SmbNamedPipe pipe)
Setter for pipe field.

Parameters:
pipe - SmbNamedPipe to be used for communication

setTimeout

protected void setTimeout(int timeout)
Set the socket timeout.

Noop for now; timeouts are not implemented for SMB named pipes.

Overrides:
setTimeout in class SharedSocket
Parameters:
timeout - timeout value in milliseconds


Generated on October 17 2011