Package org.apache.thrift.transport
Class TNonblockingServerSocket
- java.lang.Object
-
- org.apache.thrift.transport.TServerTransport
-
- org.apache.thrift.transport.TNonblockingServerTransport
-
- org.apache.thrift.transport.TNonblockingServerSocket
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable
public class TNonblockingServerSocket extends TNonblockingServerTransport
Wrapper around ServerSocketChannel
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classTNonblockingServerSocket.NonblockingAbstractServerSocketArgs-
Nested classes/interfaces inherited from class org.apache.thrift.transport.TServerTransport
TServerTransport.AbstractServerTransportArgs<T extends TServerTransport.AbstractServerTransportArgs<T>>
-
-
Constructor Summary
Constructors Constructor Description TNonblockingServerSocket(int port)Creates just a port listening server socketTNonblockingServerSocket(int port, int clientTimeout)Creates just a port listening server socketTNonblockingServerSocket(java.net.InetSocketAddress bindAddr)TNonblockingServerSocket(java.net.InetSocketAddress bindAddr, int clientTimeout)TNonblockingServerSocket(TNonblockingServerSocket.NonblockingAbstractServerSocketArgs args)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description TNonblockingSocketaccept()Accept incoming connection on the server socket.voidclose()intgetPort()voidinterrupt()Optional method implementation.voidlisten()voidregisterSelector(java.nio.channels.Selector selector)
-
-
-
Constructor Detail
-
TNonblockingServerSocket
public TNonblockingServerSocket(int port) throws TTransportExceptionCreates just a port listening server socket- Throws:
TTransportException
-
TNonblockingServerSocket
public TNonblockingServerSocket(int port, int clientTimeout) throws TTransportExceptionCreates just a port listening server socket- Throws:
TTransportException
-
TNonblockingServerSocket
public TNonblockingServerSocket(java.net.InetSocketAddress bindAddr) throws TTransportException- Throws:
TTransportException
-
TNonblockingServerSocket
public TNonblockingServerSocket(java.net.InetSocketAddress bindAddr, int clientTimeout) throws TTransportException- Throws:
TTransportException
-
TNonblockingServerSocket
public TNonblockingServerSocket(TNonblockingServerSocket.NonblockingAbstractServerSocketArgs args) throws TTransportException
- Throws:
TTransportException
-
-
Method Detail
-
listen
public void listen() throws TTransportException- Specified by:
listenin classTServerTransport- Throws:
TTransportException
-
accept
public TNonblockingSocket accept() throws TTransportException
Description copied from class:TServerTransportAccept incoming connection on the server socket. When there is no incoming connection available: either it should block infinitely in a blocking implementation, either it should return null in a nonblocking implementation.- Specified by:
acceptin classTNonblockingServerTransport- Returns:
- an incoming connection or null if there is none.
- Throws:
TTransportException- if IO error.
-
registerSelector
public void registerSelector(java.nio.channels.Selector selector)
- Specified by:
registerSelectorin classTNonblockingServerTransport
-
close
public void close()
- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Specified by:
closein classTServerTransport
-
interrupt
public void interrupt()
Description copied from class:TServerTransportOptional method implementation. This signals to the server transport that it should break out of any accept() or listen() that it is currently blocked on. This method, if implemented, MUST be thread safe, as it may be called from a different thread context than the other TServerTransport methods.- Overrides:
interruptin classTServerTransport
-
getPort
public int getPort()
-
-