public abstract class AbstractProtocol<S> extends Object implements ProtocolHandler, MBeanRegistration
Modifier and Type | Class and Description |
---|---|
protected static class |
AbstractProtocol.AbstractConnectionHandler<S,P extends Processor<S>> |
protected static class |
AbstractProtocol.RecycledProcessors<P extends Processor<S>,S> |
Modifier and Type | Field and Description |
---|---|
protected Adapter |
adapter
The adapter provides the link between the ProtocolHandler and the
connector.
|
protected String |
clientCertProvider
When client certificate information is presented in a form other than
instances of
X509Certificate it needs to be
converted before it can be used and this property controls which JSSE
provider is used to perform the conversion. |
protected String |
domain |
protected AbstractEndpoint<S> |
endpoint
Endpoint that provides low-level network I/O - must be matched to the
ProtocolHandler implementation (ProtocolHandler using BIO, requires BIO
Endpoint etc.).
|
protected MBeanServer |
mserver |
protected ObjectName |
oname |
protected int |
processorCache
The maximum number of idle processors that will be retained in the cache
and re-used with a subsequent request.
|
protected ObjectName |
rgOname
Name of MBean for the Global Request Processor.
|
protected static StringManager |
sm
The string manager for this package.
|
protected ObjectName |
tpOname
Name of MBean for the ThreadPool.
|
Constructor and Description |
---|
AbstractProtocol() |
Modifier and Type | Method and Description |
---|---|
void |
destroy()
Destroy the protocol (optional).
|
Adapter |
getAdapter()
Return the adapter associated with the protocol handler.
|
InetAddress |
getAddress() |
int |
getBacklog() |
String |
getClientCertProvider() |
long |
getConnectionCount() |
int |
getConnectionTimeout() |
String |
getDomain() |
Executor |
getExecutor()
The executor, provide access to the underlying thread pool.
|
protected abstract AbstractEndpoint.Handler |
getHandler()
Obtain the handler associated with the underlying Endpoint
|
int |
getKeepAliveTimeout() |
int |
getLocalPort() |
protected abstract Log |
getLog()
Concrete implementations need to provide access to their logger to be
used by the abstract classes.
|
int |
getMaxConnections() |
int |
getMaxCookieCount() |
int |
getMaxHeaderCount() |
int |
getMaxThreads() |
int |
getMinSpareThreads() |
String |
getName()
The name will be prefix-address-port if address is non-null and
prefix-port if the address is null.
|
int |
getNameIndex() |
protected abstract String |
getNamePrefix()
Obtain the prefix to be used when construction a name for this protocol
handler.
|
ObjectName |
getObjectName() |
int |
getPort() |
int |
getProcessorCache() |
String |
getProperty(String name)
Generic property getter used by the digester.
|
protected abstract String |
getProtocolName()
Obtain the name of the protocol, (Http, Ajp, etc.).
|
int |
getSoLinger() |
int |
getSoTimeout() |
boolean |
getTcpNoDelay() |
int |
getThreadPriority() |
void |
init()
Initialise the protocol.
|
boolean |
isAprRequired()
Requires APR/native library
|
void |
pause()
Pause the protocol (optional).
|
void |
postDeregister() |
void |
postRegister(Boolean registrationDone) |
void |
preDeregister() |
ObjectName |
preRegister(MBeanServer server,
ObjectName name) |
void |
resume()
Resume the protocol (optional).
|
void |
setAdapter(Adapter adapter)
The adapter, used to call the connector.
|
void |
setAddress(InetAddress ia) |
void |
setBacklog(int backlog) |
void |
setClientCertProvider(String s) |
void |
setConnectionTimeout(int timeout) |
void |
setExecutor(Executor executor) |
void |
setKeepAliveTimeout(int keepAliveTimeout) |
void |
setMaxConnections(int maxConnections) |
void |
setMaxCookieCount(int maxCookieCount) |
void |
setMaxHeaderCount(int maxHeaderCount) |
void |
setMaxThreads(int maxThreads) |
void |
setMinSpareThreads(int minSpareThreads) |
void |
setPort(int port) |
void |
setProcessorCache(int processorCache) |
boolean |
setProperty(String name,
String value)
Generic property setter used by the digester.
|
void |
setSoLinger(int soLinger) |
void |
setSoTimeout(int timeout) |
void |
setTcpNoDelay(boolean tcpNoDelay) |
void |
setThreadPriority(int threadPriority) |
void |
start()
Start the protocol.
|
void |
stop()
Stop the protocol.
|
protected static final StringManager sm
protected ObjectName rgOname
protected ObjectName tpOname
protected AbstractEndpoint<S> endpoint
protected Adapter adapter
protected int processorCache
getMaxConnections()
although it will
usually be closer to getMaxThreads()
.protected String clientCertProvider
X509Certificate
it needs to be
converted before it can be used and this property controls which JSSE
provider is used to perform the conversion. For example it is used with
the AJP connectors, the HTTP APR connector and with the
SSLValve
. If not specified, the
default provider will be used.protected String domain
protected ObjectName oname
protected MBeanServer mserver
public boolean setProperty(String name, String value)
name
- The name of the property to setvalue
- The value, in string form, to set for the propertytrue
if the property was set successfully, otherwise
false
public String getProperty(String name)
name
- The name of the property to getpublic void setAdapter(Adapter adapter)
ProtocolHandler
setAdapter
in interface ProtocolHandler
adapter
- The adapter to associatepublic Adapter getAdapter()
ProtocolHandler
getAdapter
in interface ProtocolHandler
public int getProcessorCache()
public void setProcessorCache(int processorCache)
public String getClientCertProvider()
public void setClientCertProvider(String s)
public boolean isAprRequired()
ProtocolHandler
isAprRequired
in interface ProtocolHandler
true
if this Protocol Handler requires the
APR/native library, otherwise false
public int getMaxCookieCount()
public void setMaxCookieCount(int maxCookieCount)
public Executor getExecutor()
ProtocolHandler
getExecutor
in interface ProtocolHandler
public void setExecutor(Executor executor)
public int getMaxThreads()
public void setMaxThreads(int maxThreads)
public int getMaxConnections()
public void setMaxConnections(int maxConnections)
public int getMinSpareThreads()
public void setMinSpareThreads(int minSpareThreads)
public int getThreadPriority()
public void setThreadPriority(int threadPriority)
public int getBacklog()
public void setBacklog(int backlog)
public boolean getTcpNoDelay()
public void setTcpNoDelay(boolean tcpNoDelay)
public int getSoLinger()
public void setSoLinger(int soLinger)
public int getKeepAliveTimeout()
public void setKeepAliveTimeout(int keepAliveTimeout)
public InetAddress getAddress()
public void setAddress(InetAddress ia)
public int getPort()
public void setPort(int port)
public int getLocalPort()
public int getConnectionTimeout()
public void setConnectionTimeout(int timeout)
public int getSoTimeout()
public void setSoTimeout(int timeout)
public int getMaxHeaderCount()
public void setMaxHeaderCount(int maxHeaderCount)
public long getConnectionCount()
public int getNameIndex()
public String getName()
protected abstract Log getLog()
protected abstract String getNamePrefix()
protected abstract String getProtocolName()
protected abstract AbstractEndpoint.Handler getHandler()
public ObjectName getObjectName()
public String getDomain()
public ObjectName preRegister(MBeanServer server, ObjectName name) throws Exception
preRegister
in interface MBeanRegistration
Exception
public void postRegister(Boolean registrationDone)
postRegister
in interface MBeanRegistration
public void preDeregister() throws Exception
preDeregister
in interface MBeanRegistration
Exception
public void postDeregister()
postDeregister
in interface MBeanRegistration
public void init() throws Exception
ProtocolHandler
init
in interface ProtocolHandler
Exception
- If the protocol handler fails to initialisepublic void start() throws Exception
ProtocolHandler
start
in interface ProtocolHandler
Exception
- If the protocol handler fails to startpublic void pause() throws Exception
ProtocolHandler
pause
in interface ProtocolHandler
Exception
- If the protocol handler fails to pausepublic void resume() throws Exception
ProtocolHandler
resume
in interface ProtocolHandler
Exception
- If the protocol handler fails to resumepublic void stop() throws Exception
ProtocolHandler
stop
in interface ProtocolHandler
Exception
- If the protocol handler fails to stoppublic void destroy()
ProtocolHandler
destroy
in interface ProtocolHandler
Copyright © 2000-2021 Apache Software Foundation. All Rights Reserved.