Package one.nio.net

Class Socket

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable, java.nio.channels.ByteChannel, java.nio.channels.Channel, java.nio.channels.ReadableByteChannel, java.nio.channels.WritableByteChannel
    Direct Known Subclasses:
    JavaSslClientSocket, NativeSocket, SelectableJavaSocket

    public abstract class Socket
    extends java.lang.Object
    implements java.nio.channels.ByteChannel
    • Constructor Detail

      • Socket

        public Socket()
    • Method Detail

      • isOpen

        public abstract boolean isOpen()
        Specified by:
        isOpen in interface java.nio.channels.Channel
      • close

        public abstract void close()
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.nio.channels.Channel
        Specified by:
        close in interface java.io.Closeable
      • accept

        public abstract Socket accept()
                               throws java.io.IOException
        Throws:
        java.io.IOException
      • connect

        public abstract void connect​(java.net.InetAddress address,
                                     int port)
                              throws java.io.IOException
        Throws:
        java.io.IOException
      • bind

        public abstract void bind​(java.net.InetAddress address,
                                  int port,
                                  int backlog)
                           throws java.io.IOException
        Throws:
        java.io.IOException
      • listen

        public abstract void listen​(int backlog)
                             throws java.io.IOException
        Throws:
        java.io.IOException
      • writeRaw

        public abstract int writeRaw​(long buf,
                                     int count,
                                     int flags)
                              throws java.io.IOException
        Throws:
        java.io.IOException
      • write

        public abstract int write​(byte[] data,
                                  int offset,
                                  int count,
                                  int flags)
                           throws java.io.IOException
        Throws:
        java.io.IOException
      • writeFully

        public abstract void writeFully​(byte[] data,
                                        int offset,
                                        int count)
                                 throws java.io.IOException
        Throws:
        java.io.IOException
      • send

        public abstract int send​(java.nio.ByteBuffer src,
                                 int flags,
                                 java.net.InetAddress address,
                                 int port)
                          throws java.io.IOException
        Throws:
        java.io.IOException
      • readRaw

        public abstract int readRaw​(long buf,
                                    int count,
                                    int flags)
                             throws java.io.IOException
        Throws:
        java.io.IOException
      • read

        public abstract int read​(byte[] data,
                                 int offset,
                                 int count,
                                 int flags)
                          throws java.io.IOException
        Throws:
        java.io.IOException
      • readFully

        public abstract void readFully​(byte[] data,
                                       int offset,
                                       int count)
                                throws java.io.IOException
        Throws:
        java.io.IOException
      • recv

        public abstract java.net.InetSocketAddress recv​(java.nio.ByteBuffer dst,
                                                        int flags)
                                                 throws java.io.IOException
        Throws:
        java.io.IOException
      • sendFile

        public abstract long sendFile​(java.io.RandomAccessFile file,
                                      long offset,
                                      long count)
                               throws java.io.IOException
        Throws:
        java.io.IOException
      • sendMsg

        public abstract int sendMsg​(Msg msg,
                                    int flags)
                             throws java.io.IOException
        Throws:
        java.io.IOException
      • recvMsg

        public abstract int recvMsg​(Msg msg,
                                    int flags)
                             throws java.io.IOException
        Throws:
        java.io.IOException
      • setBlocking

        public abstract void setBlocking​(boolean blocking)
      • isBlocking

        public abstract boolean isBlocking()
      • setTimeout

        public abstract void setTimeout​(int timeout)
      • getTimeout

        public abstract int getTimeout()
      • setKeepAlive

        public abstract void setKeepAlive​(boolean keepAlive)
      • getKeepAlive

        public abstract boolean getKeepAlive()
      • setNoDelay

        public abstract void setNoDelay​(boolean noDelay)
      • getNoDelay

        public abstract boolean getNoDelay()
      • setTcpFastOpen

        public abstract void setTcpFastOpen​(boolean tcpFastOpen)
      • getTcpFastOpen

        public abstract boolean getTcpFastOpen()
      • setDeferAccept

        public abstract void setDeferAccept​(boolean deferAccept)
      • getDeferAccept

        public abstract boolean getDeferAccept()
      • setReuseAddr

        public abstract void setReuseAddr​(boolean reuseAddr,
                                          boolean reusePort)
      • getReuseAddr

        public abstract boolean getReuseAddr()
      • getReusePort

        public abstract boolean getReusePort()
      • setRecvBuffer

        public abstract void setRecvBuffer​(int recvBuf)
      • getRecvBuffer

        public abstract int getRecvBuffer()
      • setSendBuffer

        public abstract void setSendBuffer​(int sendBuf)
      • getSendBuffer

        public abstract int getSendBuffer()
      • setTos

        public abstract void setTos​(int tos)
      • getTos

        public abstract int getTos()
      • setNotsentLowat

        public void setNotsentLowat​(int lowat)
      • getNotsentLowat

        public int getNotsentLowat()
      • setThinLinearTimeouts

        public void setThinLinearTimeouts​(boolean thinLto)
      • getThinLinearTimeouts

        public boolean getThinLinearTimeouts()
      • getOption

        public abstract byte[] getOption​(int level,
                                         int option)
      • setOption

        public abstract boolean setOption​(int level,
                                          int option,
                                          byte[] value)
      • getLocalAddress

        public abstract java.net.InetSocketAddress getLocalAddress()
      • getRemoteAddress

        public abstract java.net.InetSocketAddress getRemoteAddress()
      • sslWrap

        public abstract Socket sslWrap​(SslContext context)
                                throws java.io.IOException
        Throws:
        java.io.IOException
      • sslUnwrap

        public abstract Socket sslUnwrap()
      • getSslContext

        public abstract SslContext getSslContext()
      • getSslOption

        public abstract <T> T getSslOption​(SslOption<T> option)
      • acceptNonBlocking

        public Socket acceptNonBlocking()
                                 throws java.io.IOException
        Throws:
        java.io.IOException
      • connect

        public void connect​(java.lang.String host,
                            int port)
                     throws java.io.IOException
        Throws:
        java.io.IOException
      • bind

        public void bind​(java.lang.String host,
                         int port,
                         int backlog)
                  throws java.io.IOException
        Throws:
        java.io.IOException
      • send

        public int send​(java.nio.ByteBuffer data,
                        int flags,
                        java.lang.String host,
                        int port)
                 throws java.io.IOException
        Throws:
        java.io.IOException
      • handshake

        public void handshake()
                       throws java.io.IOException
        Throws:
        java.io.IOException
      • write

        public int write​(byte[] data,
                         int offset,
                         int count)
                  throws java.io.IOException
        Throws:
        java.io.IOException
      • read

        public int read​(byte[] data,
                        int offset,
                        int count)
                 throws java.io.IOException
        Throws:
        java.io.IOException
      • create

        @Deprecated
        public static Socket create()
                             throws java.io.IOException
        Deprecated.
        Throws:
        java.io.IOException
      • createClientSocket

        public static Socket createClientSocket()
                                         throws java.io.IOException
        Throws:
        java.io.IOException
      • createClientSocket

        public static Socket createClientSocket​(SslContext sslContext)
                                         throws java.io.IOException
        Throws:
        java.io.IOException
      • createServerSocket

        public static Socket createServerSocket()
                                         throws java.io.IOException
        Throws:
        java.io.IOException
      • createDatagramSocket

        public static Socket createDatagramSocket()
                                           throws java.io.IOException
        Throws:
        java.io.IOException
      • createUnixSocket

        public static Socket createUnixSocket​(int type)
                                       throws java.io.IOException
        Throws:
        java.io.IOException
      • connectInet

        public static Socket connectInet​(java.net.InetAddress address,
                                         int port)
                                  throws java.io.IOException
        Throws:
        java.io.IOException
      • bindInet

        public static Socket bindInet​(java.net.InetAddress address,
                                      int port,
                                      int backlog)
                               throws java.io.IOException
        Throws:
        java.io.IOException
      • connectUnix

        public static Socket connectUnix​(java.io.File unixPath)
                                  throws java.io.IOException
        Throws:
        java.io.IOException
      • bindUnix

        public static Socket bindUnix​(java.io.File unixPath,
                                      int backlog)
                               throws java.io.IOException
        Throws:
        java.io.IOException
      • fromFD

        public static Socket fromFD​(int fd)
                             throws java.io.IOException
        Throws:
        java.io.IOException