public class AprEndpoint extends AbstractEndpoint<java.lang.Long>
| Modifier and Type | Class and Description | 
|---|---|
| protected class  | AprEndpoint.AcceptorThe background thread that listens for incoming TCP/IP connections and
hands them off to an appropriate processor. | 
| protected class  | AprEndpoint.AsyncTimeoutAsync timeout thread | 
| static interface  | AprEndpoint.HandlerBare bones interface used for socket processing. | 
| class  | AprEndpoint.Poller | 
| class  | AprEndpoint.Sendfile | 
| static class  | AprEndpoint.SendfileDataSendfileData class. | 
| static class  | AprEndpoint.SocketInfo | 
| static class  | AprEndpoint.SocketList | 
| protected class  | AprEndpoint.SocketProcessorThis class is the equivalent of the Worker, but will simply use in an
external Executor thread pool. | 
| static class  | AprEndpoint.SocketTimeouts | 
| protected class  | AprEndpoint.SocketWithOptionsProcessorThis 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 AprEndpoint.AsyncTimeout | asyncTimeoutThe socket poller. | 
| protected boolean | deferAcceptDefer accept. | 
| protected AprEndpoint.Handler | handlerHandling of accepted sockets. | 
| protected AprEndpoint.Poller | pollerThe socket poller. | 
| protected int | pollTimePoll interval, in microseconds. | 
| protected long | rootPoolRoot APR memory pool. | 
| protected AprEndpoint.Sendfile | sendfileThe static file sender. | 
| protected int | sendfileSizeSize of the sendfile (= concurrent files which can be served). | 
| protected int | sendfileThreadCountSendfile thread count. | 
| protected long | serverSockServer socket "pointer". | 
| protected long | serverSockPoolAPR memory pool for the server socket. | 
| protected static java.util.Set<java.lang.String> | SSL_PROTO_ALL | 
| protected java.lang.String | SSLCACertificateFileSSL CA certificate file. | 
| protected java.lang.String | SSLCACertificatePathSSL CA certificate path. | 
| protected java.lang.String | SSLCARevocationFileSSL CA revocation file. | 
| protected java.lang.String | SSLCARevocationPathSSL CA revocation path. | 
| protected java.lang.String | SSLCertificateChainFileSSL certificate chain file. | 
| protected java.lang.String | SSLCertificateFileSSL certificate file. | 
| protected java.lang.String | SSLCertificateKeyFileSSL certificate key file. | 
| protected java.lang.String | SSLCipherSuiteSSL cipher suite. | 
| protected long | sslContextSSL context. | 
| protected boolean | SSLDisableCompressionDisables compression of the SSL stream. | 
| protected boolean | SSLHonorCipherOrder | 
| protected boolean | SSLInsecureRenegotiationSSL allow insecure renegotiation for the the client that does not
support the secure renegotiation. | 
| protected java.lang.String | SSLPasswordSSL password (if a cert is encrypted, and no password has been provided, a callback
will ask for a password). | 
| protected java.lang.String | SSLProtocolSSL protocols. | 
| protected java.lang.String | SSLVerifyClientSSL verify client. | 
| protected int | SSLVerifyDepthSSL verify depth. | 
| protected boolean | useCometAllow comet request handling. | 
| protected boolean | useSendfileUse sendfile for sending static files. | 
| protected java.util.concurrent.ConcurrentLinkedQueue<SocketWrapper<java.lang.Long>> | waitingRequests | 
acceptors, acceptorThreadCount, acceptorThreadPriority, attributes, internalExecutor, paused, running, sm, socketProperties, threadPriority| Constructor and Description | 
|---|
| AprEndpoint() | 
| Modifier and Type | Method and Description | 
|---|---|
| protected long | allocatePoller(int size,
long pool,
int timeout)Allocate a new poller of the specified size. | 
| void | bind()Initialize the endpoint. | 
| protected AbstractEndpoint.Acceptor | createAcceptor()Hook to allow Endpoints to provide a specific Acceptor implementation. | 
| AprEndpoint.AsyncTimeout | getAsyncTimeout() | 
| boolean | getDeferAccept() | 
| AprEndpoint.Handler | getHandler() | 
| int | getKeepAliveCount()Number of keepalive sockets. | 
| int | getLocalPort()Port in use. | 
| protected Log | getLog() | 
| AprEndpoint.Poller | getPoller() | 
| int | getPollTime() | 
| AprEndpoint.Sendfile | getSendfile() | 
| int | getSendfileCount()Number of sendfile sockets. | 
| int | getSendfileSize() | 
| int | getSendfileThreadCount() | 
| java.lang.String | getSSLCACertificateFile() | 
| java.lang.String | getSSLCACertificatePath() | 
| java.lang.String | getSSLCARevocationFile() | 
| java.lang.String | getSSLCARevocationPath() | 
| java.lang.String | getSSLCertificateChainFile() | 
| java.lang.String | getSSLCertificateFile() | 
| java.lang.String | getSSLCertificateKeyFile() | 
| java.lang.String | getSSLCipherSuite() | 
| boolean | getSSLDisableCompression() | 
| boolean | getSSLHonorCipherOrder() | 
| boolean | getSSLInsecureRenegotiation() | 
| java.lang.String | getSSLPassword() | 
| java.lang.String | getSSLProtocol() | 
| java.lang.String | getSSLVerifyClient() | 
| int | getSSLVerifyDepth() | 
| boolean | getUseComet() | 
| boolean | getUseCometTimeout() | 
| boolean | getUsePolling() | 
| boolean | getUseSendfile() | 
| boolean | processSocket(long socket,
SocketStatus status)Process given socket. | 
| void | processSocketAsync(SocketWrapper<java.lang.Long> socket,
SocketStatus status) | 
| protected boolean | processSocketWithOptions(long socket)Process given socket. | 
| void | removeWaitingRequest(SocketWrapper<java.lang.Long> socketWrapper) | 
| void | setDeferAccept(boolean deferAccept) | 
| void | setHandler(AprEndpoint.Handler handler) | 
| void | setMaxConnections(int maxConnections)This endpoint does not support  -1for unlimited connections,
nor does it support setting this attribute while the endpoint is running. | 
| void | setPollTime(int pollTime) | 
| void | setSendfileSize(int sendfileSize) | 
| void | setSendfileThreadCount(int sendfileThreadCount) | 
| protected boolean | setSocketOptions(long socket)Process the specified connection. | 
| void | setSSLCACertificateFile(java.lang.String SSLCACertificateFile) | 
| void | setSSLCACertificatePath(java.lang.String SSLCACertificatePath) | 
| void | setSSLCARevocationFile(java.lang.String SSLCARevocationFile) | 
| void | setSSLCARevocationPath(java.lang.String SSLCARevocationPath) | 
| void | setSSLCertificateChainFile(java.lang.String SSLCertificateChainFile) | 
| void | setSSLCertificateFile(java.lang.String SSLCertificateFile) | 
| void | setSSLCertificateKeyFile(java.lang.String SSLCertificateKeyFile) | 
| void | setSSLCipherSuite(java.lang.String SSLCipherSuite) | 
| void | setSSLDisableCompression(boolean SSLDisableCompression)Set to  trueto disable SSL compression. | 
| void | setSSLHonorCipherOrder(boolean SSLHonorCipherOrder)Set to  trueto enforce the server's cipher order
instead of the default which is to allow the client to choose a
preferred cipher. | 
| void | setSSLInsecureRenegotiation(boolean SSLInsecureRenegotiation) | 
| void | setSSLPassword(java.lang.String SSLPassword) | 
| void | setSSLProtocol(java.lang.String SSLProtocol) | 
| void | setSSLVerifyClient(java.lang.String SSLVerifyClient) | 
| void | setSSLVerifyDepth(int SSLVerifyDepth) | 
| void | setUseComet(boolean useComet) | 
| void | setUseSendfile(boolean useSendfile) | 
| void | startInternal()Start the APR endpoint, creating acceptor, poller and sendfile threads. | 
| void | stopInternal()Stop the endpoint. | 
| 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, getMaxThreadsExecutor, 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, 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 static final java.util.Set<java.lang.String> SSL_PROTO_ALL
protected long rootPool
protected long serverSock
protected long serverSockPool
protected long sslContext
protected java.util.concurrent.ConcurrentLinkedQueue<SocketWrapper<java.lang.Long>> waitingRequests
protected boolean deferAccept
protected int sendfileSize
protected AprEndpoint.Handler handler
protected int pollTime
protected boolean useSendfile
protected boolean useComet
protected int sendfileThreadCount
protected AprEndpoint.Poller poller
protected AprEndpoint.AsyncTimeout asyncTimeout
protected AprEndpoint.Sendfile sendfile
protected java.lang.String SSLProtocol
protected java.lang.String SSLPassword
protected java.lang.String SSLCipherSuite
protected java.lang.String SSLCertificateFile
protected java.lang.String SSLCertificateKeyFile
protected java.lang.String SSLCertificateChainFile
protected java.lang.String SSLCACertificatePath
protected java.lang.String SSLCACertificateFile
protected java.lang.String SSLCARevocationPath
protected java.lang.String SSLCARevocationFile
protected java.lang.String SSLVerifyClient
protected int SSLVerifyDepth
protected boolean SSLInsecureRenegotiation
protected boolean SSLHonorCipherOrder
protected boolean SSLDisableCompression
public void removeWaitingRequest(SocketWrapper<java.lang.Long> socketWrapper)
removeWaitingRequest in class AbstractEndpoint<java.lang.Long>public void setDeferAccept(boolean deferAccept)
public boolean getDeferAccept()
getDeferAccept in class AbstractEndpoint<java.lang.Long>public void setSendfileSize(int sendfileSize)
public int getSendfileSize()
public void setHandler(AprEndpoint.Handler handler)
public AprEndpoint.Handler getHandler()
public int getPollTime()
public void setPollTime(int pollTime)
public void setUseSendfile(boolean useSendfile)
public boolean getUseSendfile()
getUseSendfile in class AbstractEndpoint<java.lang.Long>public void setUseComet(boolean useComet)
public boolean getUseComet()
getUseComet in class AbstractEndpoint<java.lang.Long>public boolean getUseCometTimeout()
getUseCometTimeout in class AbstractEndpoint<java.lang.Long>public boolean getUsePolling()
getUsePolling in class AbstractEndpoint<java.lang.Long>public void setSendfileThreadCount(int sendfileThreadCount)
public int getSendfileThreadCount()
public AprEndpoint.Poller getPoller()
public AprEndpoint.AsyncTimeout getAsyncTimeout()
public AprEndpoint.Sendfile getSendfile()
public java.lang.String getSSLProtocol()
public void setSSLProtocol(java.lang.String SSLProtocol)
public java.lang.String getSSLPassword()
public void setSSLPassword(java.lang.String SSLPassword)
public java.lang.String getSSLCipherSuite()
public void setSSLCipherSuite(java.lang.String SSLCipherSuite)
public java.lang.String getSSLCertificateFile()
public void setSSLCertificateFile(java.lang.String SSLCertificateFile)
public java.lang.String getSSLCertificateKeyFile()
public void setSSLCertificateKeyFile(java.lang.String SSLCertificateKeyFile)
public java.lang.String getSSLCertificateChainFile()
public void setSSLCertificateChainFile(java.lang.String SSLCertificateChainFile)
public java.lang.String getSSLCACertificatePath()
public void setSSLCACertificatePath(java.lang.String SSLCACertificatePath)
public java.lang.String getSSLCACertificateFile()
public void setSSLCACertificateFile(java.lang.String SSLCACertificateFile)
public java.lang.String getSSLCARevocationPath()
public void setSSLCARevocationPath(java.lang.String SSLCARevocationPath)
public java.lang.String getSSLCARevocationFile()
public void setSSLCARevocationFile(java.lang.String SSLCARevocationFile)
public java.lang.String getSSLVerifyClient()
public void setSSLVerifyClient(java.lang.String SSLVerifyClient)
public int getSSLVerifyDepth()
public void setSSLVerifyDepth(int SSLVerifyDepth)
public void setSSLInsecureRenegotiation(boolean SSLInsecureRenegotiation)
public boolean getSSLInsecureRenegotiation()
public void setSSLHonorCipherOrder(boolean SSLHonorCipherOrder)
true to enforce the server's cipher order
instead of the default which is to allow the client to choose a
preferred cipher.public boolean getSSLHonorCipherOrder()
public void setSSLDisableCompression(boolean SSLDisableCompression)
true to disable SSL compression. This thwarts CRIME
attack.public boolean getSSLDisableCompression()
public int getLocalPort()
getLocalPort in class AbstractEndpoint<java.lang.Long>public void setMaxConnections(int maxConnections)
-1 for unlimited connections,
nor does it support setting this attribute while the endpoint is running.
setMaxConnections in class AbstractEndpoint<java.lang.Long>public int getKeepAliveCount()
public int getSendfileCount()
public void bind()
          throws java.lang.Exception
bind in class AbstractEndpoint<java.lang.Long>java.lang.Exceptionpublic void startInternal()
                   throws java.lang.Exception
startInternal in class AbstractEndpoint<java.lang.Long>java.lang.Exceptionpublic void stopInternal()
stopInternal in class AbstractEndpoint<java.lang.Long>public void unbind()
            throws java.lang.Exception
unbind in class AbstractEndpoint<java.lang.Long>java.lang.Exceptionprotected AbstractEndpoint.Acceptor createAcceptor()
AbstractEndpointcreateAcceptor in class AbstractEndpoint<java.lang.Long>protected boolean setSocketOptions(long socket)
protected long allocatePoller(int size,
                  long pool,
                  int timeout)
protected boolean processSocketWithOptions(long socket)
public boolean processSocket(long socket,
                    SocketStatus status)
public void processSocketAsync(SocketWrapper<java.lang.Long> socket, SocketStatus status)
processSocketAsync in class AbstractEndpoint<java.lang.Long>protected Log getLog()
getLog in class AbstractEndpoint<java.lang.Long>Copyright © 2000-2015 Apache Software Foundation. All Rights Reserved.