Package net.sourceforge.jtds.jdbc
Class SharedLocalNamedPipe
- java.lang.Object
-
- net.sourceforge.jtds.jdbc.SharedSocket
-
- net.sourceforge.jtds.jdbc.SharedLocalNamedPipe
-
public class SharedLocalNamedPipe extends SharedSocket
This class implements inter-process communication (IPC) to the database server using local named pipes (will only work on Windows).- Version:
- $Id: SharedLocalNamedPipe.java,v 1.12 2007-07-08 21:38:13 bheineman Exp $
- Author:
- Adam Etheredge
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class net.sourceforge.jtds.jdbc.SharedSocket
SharedSocket.VirtualSocket
-
-
Field Summary
Fields Modifier and Type Field Description (package private) java.io.RandomAccessFilepipeThe named pipe as a file.-
Fields inherited from class net.sourceforge.jtds.jdbc.SharedSocket
serverType
-
-
Constructor Summary
Constructors Constructor Description SharedLocalNamedPipe(JtdsConnection connection)Creates a new instance ofSharedLocalNamedPipe.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) voidclose()Close the named pipe and virtual sockets and release any resources.(package private) voidforceClose()Force close the socket causing any pending reads/writes to fail.(package private) java.lang.StringgetMAC()(package private) booleanisConnected()Get the connected status of this socket.(package private) byte[]sendNetPacket(SharedSocket.VirtualSocket vsock, byte[] buffer)Send an network packet.protected voidsetTimeout(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, setCharsetInfo, setIn, setKeepAlive, setMemoryBudget, setMinMemPkts, setOut, setTdsVersion
-
-
-
-
Constructor Detail
-
SharedLocalNamedPipe
public SharedLocalNamedPipe(JtdsConnection connection) throws java.io.IOException
Creates a new instance ofSharedLocalNamedPipe.- Parameters:
connection- the connection object- Throws:
java.io.IOException- if an I/O error occurs
-
-
Method Detail
-
getMAC
java.lang.String getMAC()
- Overrides:
getMACin classSharedSocket
-
isConnected
boolean isConnected()
Get the connected status of this socket.- Overrides:
isConnectedin classSharedSocket- Returns:
trueif the underlying named pipe is connected
-
sendNetPacket
byte[] sendNetPacket(SharedSocket.VirtualSocket vsock, byte[] buffer) throws java.io.IOException
Send an network packet. If output for another virtual socket is in progress this packet will be sent later.- Overrides:
sendNetPacketin classSharedSocket- Parameters:
vsock- theSharedSocket.VirtualSocketused by the originatingRequestStreambuffer- the data to send- Returns:
- the same buffer received if emptied or another buffer w/ the same size if the incoming buffer is cached (to avoid copying)
- Throws:
java.io.IOException- if an I/O error occurs
-
close
void close() throws java.io.IOExceptionClose the named pipe and virtual sockets and release any resources.- Overrides:
closein classSharedSocket- 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:
forceClosein classSharedSocket
-
setTimeout
protected void setTimeout(int timeout)
Set the socket timeout.- Overrides:
setTimeoutin classSharedSocket- Parameters:
timeout- the timeout value in milliseconds
-
-