Class UnixDomainSocket
- java.lang.Object
-
- java.net.Socket
-
- org.mariadb.jdbc.client.socket.impl.UnixDomainSocket
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable
public class UnixDomainSocket extends java.net.SocketUnix IPC socket
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classUnixDomainSocket.SockAddrSocket address(package private) classUnixDomainSocket.UnixSocketInputStream(package private) classUnixDomainSocket.UnixSocketOutputStream
-
Field Summary
Fields Modifier and Type Field Description private static intAF_UNIXprivate java.util.concurrent.atomic.AtomicBooleancloseLockprivate booleanconnectedprivate intfdprivate java.io.InputStreamisprivate java.io.OutputStreamosprivate static intPROTOCOLprivate static intSOCK_STREAMprivate UnixDomainSocket.SockAddrsockaddr
-
Constructor Summary
Constructors Constructor Description UnixDomainSocket(java.lang.String path)Constructor
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()static intclose(int fd)Close socketstatic intconnect(int sockfd, UnixDomainSocket.SockAddr sockaddr, int addrlen)Connect socketvoidconnect(java.net.SocketAddress endpoint, int timeout)private static java.lang.StringformatError(com.sun.jna.LastErrorException lee)java.io.InputStreamgetInputStream()java.io.OutputStreamgetOutputStream()booleanisConnected()static intrecv(int fd, byte[] buffer, int count, int flags)Receive a message from a socketstatic intsend(int fd, byte[] buffer, int count, int flags)Send a message to a socketvoidsetKeepAlive(boolean b)voidsetSoLinger(boolean b, int i)voidsetSoTimeout(int timeout)voidsetTcpNoDelay(boolean b)voidshutdownInput()voidshutdownOutput()static intsocket(int domain, int type, int protocol)creates an endpoint for communication and returns a file descriptor that refers to that endpoint.static java.lang.Stringstrerror(int errno)return a description of the error code passed in the argument errnum.-
Methods inherited from class java.net.Socket
bind, connect, getChannel, getInetAddress, getKeepAlive, getLocalAddress, getLocalPort, getLocalSocketAddress, getOOBInline, getPort, getReceiveBufferSize, getRemoteSocketAddress, getReuseAddress, getSendBufferSize, getSoLinger, getSoTimeout, getTcpNoDelay, getTrafficClass, isBound, isClosed, isInputShutdown, isOutputShutdown, sendUrgentData, setOOBInline, setPerformancePreferences, setReceiveBufferSize, setReuseAddress, setSendBufferSize, setSocketImplFactory, setTrafficClass, toString
-
-
-
-
Field Detail
-
AF_UNIX
private static final int AF_UNIX
- See Also:
- Constant Field Values
-
SOCK_STREAM
private static final int SOCK_STREAM
- See Also:
- Constant Field Values
-
PROTOCOL
private static final int PROTOCOL
- See Also:
- Constant Field Values
-
closeLock
private final java.util.concurrent.atomic.AtomicBoolean closeLock
-
sockaddr
private final UnixDomainSocket.SockAddr sockaddr
-
fd
private final int fd
-
is
private java.io.InputStream is
-
os
private java.io.OutputStream os
-
connected
private boolean connected
-
-
Method Detail
-
socket
public static int socket(int domain, int type, int protocol) throws com.sun.jna.LastErrorExceptioncreates an endpoint for communication and returns a file descriptor that refers to that endpoint.- Parameters:
domain- domaintype- typeprotocol- protocol- Returns:
- file descriptor
- Throws:
com.sun.jna.LastErrorException- if any error occurs- See Also:
- Socket
-
connect
public static int connect(int sockfd, UnixDomainSocket.SockAddr sockaddr, int addrlen) throws com.sun.jna.LastErrorExceptionConnect socket- Parameters:
sockfd- file descriptorsockaddr- socket addressaddrlen- address length- Returns:
- zero on success. -1 on error
- Throws:
com.sun.jna.LastErrorException- if error occurs
-
recv
public static int recv(int fd, byte[] buffer, int count, int flags) throws com.sun.jna.LastErrorExceptionReceive a message from a socket- Parameters:
fd- file descriptorbuffer- buffercount- lengthflags- flag. @see flags- Returns:
- zero on success. -1 on error
- Throws:
com.sun.jna.LastErrorException- if error occurs
-
send
public static int send(int fd, byte[] buffer, int count, int flags) throws com.sun.jna.LastErrorExceptionSend a message to a socket- Parameters:
fd- file descriptorbuffer- buffercount- lengthflags- flag. @see flags- Returns:
- zero on success. -1 on error
- Throws:
com.sun.jna.LastErrorException- if error occurs
-
close
public static int close(int fd) throws com.sun.jna.LastErrorExceptionClose socket- Parameters:
fd- file descriptor- Returns:
- zero on success. -1 on error
- Throws:
com.sun.jna.LastErrorException- if error occurs
-
strerror
public static java.lang.String strerror(int errno)
return a description of the error code passed in the argument errnum.- Parameters:
errno- error pointer- Returns:
- error description
-
formatError
private static java.lang.String formatError(com.sun.jna.LastErrorException lee)
-
isConnected
public boolean isConnected()
- Overrides:
isConnectedin classjava.net.Socket
-
close
public void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Overrides:
closein classjava.net.Socket- Throws:
java.io.IOException
-
connect
public void connect(java.net.SocketAddress endpoint, int timeout) throws java.io.IOException- Overrides:
connectin classjava.net.Socket- Throws:
java.io.IOException
-
getInputStream
public java.io.InputStream getInputStream()
- Overrides:
getInputStreamin classjava.net.Socket
-
getOutputStream
public java.io.OutputStream getOutputStream()
- Overrides:
getOutputStreamin classjava.net.Socket
-
setTcpNoDelay
public void setTcpNoDelay(boolean b)
- Overrides:
setTcpNoDelayin classjava.net.Socket
-
setKeepAlive
public void setKeepAlive(boolean b)
- Overrides:
setKeepAlivein classjava.net.Socket
-
setSoLinger
public void setSoLinger(boolean b, int i)- Overrides:
setSoLingerin classjava.net.Socket
-
setSoTimeout
public void setSoTimeout(int timeout)
- Overrides:
setSoTimeoutin classjava.net.Socket
-
shutdownInput
public void shutdownInput()
- Overrides:
shutdownInputin classjava.net.Socket
-
shutdownOutput
public void shutdownOutput()
- Overrides:
shutdownOutputin classjava.net.Socket
-
-