public class JIoEndpoint extends AbstractEndpoint<Socket>
| Modifier and Type | Class and Description | 
|---|---|
| protected class  | JIoEndpoint.AcceptorThe background thread that listens for incoming TCP/IP connections and
 hands them off to an appropriate processor. | 
| protected class  | JIoEndpoint.AsyncTimeoutAsync timeout thread | 
| static interface  | JIoEndpoint.HandlerBare bones interface used for socket processing. | 
| protected class  | JIoEndpoint.SocketProcessorThis class is the equivalent of the Worker, but will simply use in an
 external Executor thread pool. | 
AbstractEndpoint.BindState| Modifier and Type | Field and Description | 
|---|---|
| protected JIoEndpoint.Handler | handlerHandling of accepted sockets. | 
| protected ServerSocket | serverSocketAssociated server socket. | 
| protected ServerSocketFactory | serverSocketFactoryServer socket factory. | 
| protected ConcurrentLinkedQueue<SocketWrapper<Socket>> | waitingRequests | 
acceptors, acceptorThreadCount, acceptorThreadPriority, attributes, internalExecutor, paused, running, sm, socketProperties, threadPriority| Constructor and Description | 
|---|
| JIoEndpoint() | 
| Modifier and Type | Method and Description | 
|---|---|
| void | bind() | 
| protected AbstractEndpoint.Acceptor | createAcceptor()Hook to allow Endpoints to provide a specific Acceptor implementation. | 
| boolean | getDeferAccept() | 
| JIoEndpoint.Handler | getHandler() | 
| int | getLocalPort()Port in use. | 
| protected Log | getLog() | 
| ServerSocketFactory | getServerSocketFactory() | 
| boolean | getUseComet() | 
| boolean | getUseCometTimeout() | 
| boolean | getUsePolling() | 
| boolean | getUseSendfile() | 
| protected boolean | processSocket(Socket socket)Process a new connection from a new client. | 
| void | processSocketAsync(SocketWrapper<Socket> socket,
                  SocketStatus status)Process an existing async connection. | 
| void | removeWaitingRequest(SocketWrapper<Socket> socketWrapper) | 
| void | setHandler(JIoEndpoint.Handler handler) | 
| void | setServerSocketFactory(ServerSocketFactory factory) | 
| protected boolean | setSocketOptions(Socket socket)Configure the socket. | 
| void | startInternal() | 
| void | stopInternal() | 
| void | unbind()Deallocate APR memory pools, and close server socket. | 
configureUseServerCipherSuitesOrder, countDownConnection, countUpOrAwaitConnection, createExecutor, destroy, getAcceptorThreadCount, getAcceptorThreadPriority, getAddress, getAlgorithm, getAllowUnsafeLegacyRenegotiation, getAttribute, getBacklog, getBindOnInit, getCiphers, getClientAuth, getConnectionCount, getCrlFile, getCurrentThreadCount, getCurrentThreadsBusy, getDaemon, getExecutor, getExecutorTerminationTimeoutMillis, getKeepAliveTimeout, getKeyAlias, getKeyPass, getKeystoreFile, getKeystorePass, getKeystoreProvider, getKeystoreType, getMaxConnections, getMaxHeaderCount, getMaxKeepAliveRequests, getMaxThreads, getMaxThreadsInternal, getMaxThreadsWithExecutor, getMinSpareThreads, getName, getPort, getProperty, getSessionCacheSize, getSessionTimeout, getSocketProperties, getSoLinger, getSoTimeout, getSslEnabledProtocolsArray, getSslProtocol, getTcpNoDelay, getThreadPriority, getTrustManagerClassName, getTrustMaxCertLength, getTruststoreAlgorithm, getTruststoreFile, getTruststorePass, getTruststoreProvider, getTruststoreType, getUseServerCipherSuitesOrder, handleExceptionWithDelay, init, initializeConnectionLatch, isPaused, isRunning, isSSLEnabled, pause, releaseConnectionLatch, resume, setAcceptorThreadCount, setAcceptorThreadPriority, setAddress, setAlgorithm, setAllowUnsafeLegacyRenegotiation, setAttribute, setBacklog, setBindOnInit, setCiphers, setClientAuth, setCrlFile, setDaemon, setExecutor, setExecutorTerminationTimeoutMillis, setKeepAliveTimeout, setKeyAlias, setKeyPass, setKeystoreFile, setKeystorePass, setKeystoreProvider, setKeystoreType, setMaxConnections, setMaxHeaderCount, setMaxKeepAliveRequests, setMaxThreads, setMinSpareThreads, setName, setPort, setProperty, setSessionCacheSize, setSessionTimeout, setSoLinger, setSoTimeout, setSSLEnabled, setSslEnabledProtocols, setSslProtocol, setTcpNoDelay, setThreadPriority, setTrustManagerClassName, setTrustMaxCertLength, setTruststoreAlgorithm, setTruststoreFile, setTruststorePass, setTruststoreProvider, setTruststoreType, setUseServerCipherSuitesOrder, shutdownExecutor, start, startAcceptorThreads, stop, unlockAcceptprotected ServerSocket serverSocket
protected JIoEndpoint.Handler handler
protected ServerSocketFactory serverSocketFactory
protected ConcurrentLinkedQueue<SocketWrapper<Socket>> waitingRequests
public void setHandler(JIoEndpoint.Handler handler)
public JIoEndpoint.Handler getHandler()
public void setServerSocketFactory(ServerSocketFactory factory)
public ServerSocketFactory getServerSocketFactory()
public int getLocalPort()
getLocalPort in class AbstractEndpoint<Socket>public boolean getUseSendfile()
getUseSendfile in class AbstractEndpoint<Socket>public boolean getUseComet()
getUseComet in class AbstractEndpoint<Socket>public boolean getUseCometTimeout()
getUseCometTimeout in class AbstractEndpoint<Socket>public boolean getDeferAccept()
getDeferAccept in class AbstractEndpoint<Socket>public boolean getUsePolling()
getUsePolling in class AbstractEndpoint<Socket>public void bind()
          throws Exception
bind in class AbstractEndpoint<Socket>Exceptionpublic void startInternal()
                   throws Exception
startInternal in class AbstractEndpoint<Socket>Exceptionpublic void stopInternal()
stopInternal in class AbstractEndpoint<Socket>public void unbind()
            throws Exception
unbind in class AbstractEndpoint<Socket>Exceptionprotected AbstractEndpoint.Acceptor createAcceptor()
AbstractEndpointcreateAcceptor in class AbstractEndpoint<Socket>protected boolean setSocketOptions(Socket socket)
protected boolean processSocket(Socket socket)
socket - The socket associated with the client.true if the socket is passed to the
                  executor, false if something went wrong or
                  if the endpoint is shutting down. Returning
                  false is an indication to close the socket
                  immediately.public void processSocketAsync(SocketWrapper<Socket> socket, SocketStatus status)
processSocketAsync in class AbstractEndpoint<Socket>socket - The socket associated with the client.status - Only OPEN and TIMEOUT are used. The others are used for
                  Comet requests that are not supported by the BIO (JIO)
                  Connector.public void removeWaitingRequest(SocketWrapper<Socket> socketWrapper)
removeWaitingRequest in class AbstractEndpoint<Socket>protected Log getLog()
getLog in class AbstractEndpoint<Socket>Copyright © 2000-2020 Apache Software Foundation. All Rights Reserved.