public interface HTTPConnectionHandlerCfgClient extends ConnectionHandlerCfgClient
The HTTP Connection Handler is used to interact with clients using HTTP.
Modifier and Type | Method and Description |
---|---|
ManagedObjectDefinition<? extends HTTPConnectionHandlerCfgClient,? extends HTTPConnectionHandlerCfg> |
definition()
Get the configuration definition associated with this HTTP Connection Handler.
|
int |
getAcceptBacklog()
Gets the "accept-backlog" property.
|
long |
getBufferSize()
Gets the "buffer-size" property.
|
String |
getConfigFile()
Gets the "config-file" property.
|
String |
getJavaClass()
Gets the "java-class" property.
|
String |
getKeyManagerProvider()
Gets the "key-manager-provider" property.
|
SortedSet<InetAddress> |
getListenAddress()
Gets the "listen-address" property.
|
Integer |
getListenPort()
Gets the "listen-port" property.
|
long |
getMaxBlockedWriteTimeLimit()
Gets the "max-blocked-write-time-limit" property.
|
Integer |
getMaxConcurrentOpsPerConnection()
Gets the "max-concurrent-ops-per-connection" property.
|
long |
getMaxRequestSize()
Gets the "max-request-size" property.
|
Integer |
getNumRequestHandlers()
Gets the "num-request-handlers" property.
|
SortedSet<String> |
getSSLCertNickname()
Gets the "ssl-cert-nickname" property.
|
SortedSet<String> |
getSSLCipherSuite()
Gets the "ssl-cipher-suite" property.
|
HTTPConnectionHandlerCfgDefn.SSLClientAuthPolicy |
getSSLClientAuthPolicy()
Gets the "ssl-client-auth-policy" property.
|
SortedSet<String> |
getSSLProtocol()
Gets the "ssl-protocol" property.
|
String |
getTrustManagerProvider()
Gets the "trust-manager-provider" property.
|
boolean |
isAllowTCPReuseAddress()
Gets the "allow-tcp-reuse-address" property.
|
boolean |
isAuthenticationRequired()
Gets the "authentication-required" property.
|
boolean |
isKeepStats()
Gets the "keep-stats" property.
|
boolean |
isUseSSL()
Gets the "use-ssl" property.
|
boolean |
isUseTCPKeepAlive()
Gets the "use-tcp-keep-alive" property.
|
boolean |
isUseTCPNoDelay()
Gets the "use-tcp-no-delay" property.
|
void |
setAcceptBacklog(Integer value)
Sets the "accept-backlog" property.
|
void |
setAllowTCPReuseAddress(Boolean value)
Sets the "allow-tcp-reuse-address" property.
|
void |
setAuthenticationRequired(boolean value)
Sets the "authentication-required" property.
|
void |
setBufferSize(Long value)
Sets the "buffer-size" property.
|
void |
setConfigFile(String value)
Sets the "config-file" property.
|
void |
setJavaClass(String value)
Sets the "java-class" property.
|
void |
setKeepStats(Boolean value)
Sets the "keep-stats" property.
|
void |
setKeyManagerProvider(String value)
Sets the "key-manager-provider" property.
|
void |
setListenAddress(Collection<InetAddress> values)
Sets the "listen-address" property.
|
void |
setListenPort(int value)
Sets the "listen-port" property.
|
void |
setMaxBlockedWriteTimeLimit(Long value)
Sets the "max-blocked-write-time-limit" property.
|
void |
setMaxConcurrentOpsPerConnection(Integer value)
Sets the "max-concurrent-ops-per-connection" property.
|
void |
setMaxRequestSize(Long value)
Sets the "max-request-size" property.
|
void |
setNumRequestHandlers(Integer value)
Sets the "num-request-handlers" property.
|
void |
setSSLCertNickname(Collection<String> values)
Sets the "ssl-cert-nickname" property.
|
void |
setSSLCipherSuite(Collection<String> values)
Sets the "ssl-cipher-suite" property.
|
void |
setSSLClientAuthPolicy(HTTPConnectionHandlerCfgDefn.SSLClientAuthPolicy value)
Sets the "ssl-client-auth-policy" property.
|
void |
setSSLProtocol(Collection<String> values)
Sets the "ssl-protocol" property.
|
void |
setTrustManagerProvider(String value)
Sets the "trust-manager-provider" property.
|
void |
setUseSSL(Boolean value)
Sets the "use-ssl" property.
|
void |
setUseTCPKeepAlive(Boolean value)
Sets the "use-tcp-keep-alive" property.
|
void |
setUseTCPNoDelay(Boolean value)
Sets the "use-tcp-no-delay" property.
|
getAllowedClient, getDeniedClient, isEnabled, setAllowedClient, setDeniedClient, setEnabled
commit, properties
ManagedObjectDefinition<? extends HTTPConnectionHandlerCfgClient,? extends HTTPConnectionHandlerCfg> definition()
definition
in interface ConfigurationClient
definition
in interface ConnectionHandlerCfgClient
int getAcceptBacklog()
Specifies the maximum number of pending connection attempts that are allowed to queue up in the accept backlog before the server starts rejecting new connection attempts.
This is primarily an issue for cases in which a large number of connections are established to the server in a very short period of time (for example, a benchmark utility that creates a large number of client threads that each have their own connection to the server) and the connection handler is unable to keep up with the rate at which the new connections are established.
void setAcceptBacklog(Integer value) throws PropertyException
Specifies the maximum number of pending connection attempts that are allowed to queue up in the accept backlog before the server starts rejecting new connection attempts.
This is primarily an issue for cases in which a large number of connections are established to the server in a very short period of time (for example, a benchmark utility that creates a large number of client threads that each have their own connection to the server) and the connection handler is unable to keep up with the rate at which the new connections are established.
value
- The value of the "accept-backlog" property.PropertyException
- If the new value is invalid.boolean isAllowTCPReuseAddress()
Indicates whether the HTTP Connection Handler should reuse socket descriptors.
If enabled, the SO_REUSEADDR socket option is used on the server listen socket to potentially allow the reuse of socket descriptors for clients in a TIME_WAIT state. This may help the server avoid temporarily running out of socket descriptors in cases in which a very large number of short-lived connections have been established from the same client system.
void setAllowTCPReuseAddress(Boolean value) throws PropertyException
Indicates whether the HTTP Connection Handler should reuse socket descriptors.
If enabled, the SO_REUSEADDR socket option is used on the server listen socket to potentially allow the reuse of socket descriptors for clients in a TIME_WAIT state. This may help the server avoid temporarily running out of socket descriptors in cases in which a very large number of short-lived connections have been established from the same client system.
value
- The value of the "allow-tcp-reuse-address" property.PropertyException
- If the new value is invalid.boolean isAuthenticationRequired()
Specifies whether only authenticated requests can be processed by the HTTP Connection Handler.
If true, only authenticated requests will be processed by the HTTP Connection Handler. If false, both authenticated requests and unauthenticated requests will be processed. All requests are subject to ACI limitations and unauthenticated requests are subject to server limits like maximum number of entries returned. Note that setting ds-cfg-reject-unauthenticated-requests to true will override the current setting.
void setAuthenticationRequired(boolean value) throws PropertyException
Specifies whether only authenticated requests can be processed by the HTTP Connection Handler.
If true, only authenticated requests will be processed by the HTTP Connection Handler. If false, both authenticated requests and unauthenticated requests will be processed. All requests are subject to ACI limitations and unauthenticated requests are subject to server limits like maximum number of entries returned. Note that setting ds-cfg-reject-unauthenticated-requests to true will override the current setting.
value
- The value of the "authentication-required" property.PropertyException
- If the new value is invalid.long getBufferSize()
Specifies the size in bytes of the HTTP response message write buffer.
This property specifies write buffer size allocated by the server for each client connection and used to buffer HTTP response messages data when writing.
void setBufferSize(Long value) throws PropertyException
Specifies the size in bytes of the HTTP response message write buffer.
This property specifies write buffer size allocated by the server for each client connection and used to buffer HTTP response messages data when writing.
value
- The value of the "buffer-size" property.PropertyException
- If the new value is invalid.String getConfigFile()
Specifies the name of the configuration file for the HTTP Connection Handler.
void setConfigFile(String value) throws PropertyException
Specifies the name of the configuration file for the HTTP Connection Handler.
value
- The value of the "config-file" property.PropertyException
- If the new value is invalid.String getJavaClass()
Specifies the fully-qualified name of the Java class that provides the HTTP Connection Handler implementation.
getJavaClass
in interface ConnectionHandlerCfgClient
void setJavaClass(String value) throws PropertyException
Specifies the fully-qualified name of the Java class that provides the HTTP Connection Handler implementation.
setJavaClass
in interface ConnectionHandlerCfgClient
value
- The value of the "java-class" property.PropertyException
- If the new value is invalid.boolean isKeepStats()
Indicates whether the HTTP Connection Handler should keep statistics.
If enabled, the HTTP Connection Handler maintains statistics about the number and types of operations requested over HTTP and the amount of data sent and received.
void setKeepStats(Boolean value) throws PropertyException
Indicates whether the HTTP Connection Handler should keep statistics.
If enabled, the HTTP Connection Handler maintains statistics about the number and types of operations requested over HTTP and the amount of data sent and received.
value
- The value of the "keep-stats" property.PropertyException
- If the new value is invalid.String getKeyManagerProvider()
Specifies the name of the key manager that should be used with this HTTP Connection Handler .
void setKeyManagerProvider(String value) throws PropertyException
Specifies the name of the key manager that should be used with this HTTP Connection Handler .
value
- The value of the "key-manager-provider" property.PropertyException
- If the new value is invalid.SortedSet<InetAddress> getListenAddress()
Specifies the address or set of addresses on which this HTTP Connection Handler should listen for connections from HTTP clients.
Multiple addresses may be provided as separate values for this attribute. If no values are provided, then the HTTP Connection Handler listens on all interfaces.
void setListenAddress(Collection<InetAddress> values) throws PropertyException
Specifies the address or set of addresses on which this HTTP Connection Handler should listen for connections from HTTP clients.
Multiple addresses may be provided as separate values for this attribute. If no values are provided, then the HTTP Connection Handler listens on all interfaces.
values
- The values of the "listen-address" property.PropertyException
- If one or more of the new values are invalid.Integer getListenPort()
Specifies the port number on which the HTTP Connection Handler will listen for connections from clients.
Only a single port number may be provided.
void setListenPort(int value) throws PropertyException
Specifies the port number on which the HTTP Connection Handler will listen for connections from clients.
Only a single port number may be provided.
value
- The value of the "listen-port" property.PropertyException
- If the new value is invalid.long getMaxBlockedWriteTimeLimit()
Specifies the maximum length of time that attempts to write data to HTTP clients should be allowed to block.
If an attempt to write data to a client takes longer than this length of time, then the client connection is terminated.
void setMaxBlockedWriteTimeLimit(Long value) throws PropertyException
Specifies the maximum length of time that attempts to write data to HTTP clients should be allowed to block.
If an attempt to write data to a client takes longer than this length of time, then the client connection is terminated.
value
- The value of the "max-blocked-write-time-limit" property.PropertyException
- If the new value is invalid.Integer getMaxConcurrentOpsPerConnection()
Specifies the maximum number of internal operations that each HTTP client connection can execute concurrently.
This property allow to limit the impact that each HTTP request can have on the whole server by limiting the number of internal operations that each HTTP request can execute concurrently. A value of 0 means that no limit is enforced.
void setMaxConcurrentOpsPerConnection(Integer value) throws PropertyException
Specifies the maximum number of internal operations that each HTTP client connection can execute concurrently.
This property allow to limit the impact that each HTTP request can have on the whole server by limiting the number of internal operations that each HTTP request can execute concurrently. A value of 0 means that no limit is enforced.
value
- The value of the "max-concurrent-ops-per-connection" property.PropertyException
- If the new value is invalid.long getMaxRequestSize()
Specifies the size in bytes of the largest HTTP request message that will be allowed by the HTTP Connection Handler.
This can help prevent denial-of-service attacks by clients that indicate they send extremely large requests to the server causing it to attempt to allocate large amounts of memory.
void setMaxRequestSize(Long value) throws PropertyException
Specifies the size in bytes of the largest HTTP request message that will be allowed by the HTTP Connection Handler.
This can help prevent denial-of-service attacks by clients that indicate they send extremely large requests to the server causing it to attempt to allocate large amounts of memory.
value
- The value of the "max-request-size" property.PropertyException
- If the new value is invalid.Integer getNumRequestHandlers()
Specifies the number of request handlers that are used to read requests from clients.
The HTTP Connection Handler uses one thread to accept new connections from clients, but uses one or more additional threads to read requests from existing client connections. This ensures that new requests are read efficiently and that the connection handler itself does not become a bottleneck when the server is under heavy load from many clients at the same time.
void setNumRequestHandlers(Integer value) throws PropertyException
Specifies the number of request handlers that are used to read requests from clients.
The HTTP Connection Handler uses one thread to accept new connections from clients, but uses one or more additional threads to read requests from existing client connections. This ensures that new requests are read efficiently and that the connection handler itself does not become a bottleneck when the server is under heavy load from many clients at the same time.
value
- The value of the "num-request-handlers" property.PropertyException
- If the new value is invalid.SortedSet<String> getSSLCertNickname()
Specifies the nicknames (also called the aliases) of the certificates that the HTTP Connection Handler should use when performing SSL communication. The property can be used multiple times (referencing different nicknames) when an RSA, a DSA, and an ECC based server certificate is used in parallel.
This is only applicable when the HTTP Connection Handler is configured to use SSL.
void setSSLCertNickname(Collection<String> values) throws PropertyException
Specifies the nicknames (also called the aliases) of the certificates that the HTTP Connection Handler should use when performing SSL communication. The property can be used multiple times (referencing different nicknames) when an RSA, a DSA, and an ECC based server certificate is used in parallel.
This is only applicable when the HTTP Connection Handler is configured to use SSL.
values
- The values of the "ssl-cert-nickname" property.PropertyException
- If one or more of the new values are invalid.SortedSet<String> getSSLCipherSuite()
Specifies the names of the SSL cipher suites that are allowed for use in SSL communication.
void setSSLCipherSuite(Collection<String> values) throws PropertyException
Specifies the names of the SSL cipher suites that are allowed for use in SSL communication.
values
- The values of the "ssl-cipher-suite" property.PropertyException
- If one or more of the new values are invalid.HTTPConnectionHandlerCfgDefn.SSLClientAuthPolicy getSSLClientAuthPolicy()
Specifies the policy that the HTTP Connection Handler should use regarding client SSL certificates. Clients can use the SASL EXTERNAL mechanism only if the policy is set to "optional" or "required".
This is only applicable if clients are allowed to use SSL.
void setSSLClientAuthPolicy(HTTPConnectionHandlerCfgDefn.SSLClientAuthPolicy value) throws PropertyException
Specifies the policy that the HTTP Connection Handler should use regarding client SSL certificates. Clients can use the SASL EXTERNAL mechanism only if the policy is set to "optional" or "required".
This is only applicable if clients are allowed to use SSL.
value
- The value of the "ssl-client-auth-policy" property.PropertyException
- If the new value is invalid.SortedSet<String> getSSLProtocol()
Specifies the names of the SSL protocols that are allowed for use in SSL communication.
void setSSLProtocol(Collection<String> values) throws PropertyException
Specifies the names of the SSL protocols that are allowed for use in SSL communication.
values
- The values of the "ssl-protocol" property.PropertyException
- If one or more of the new values are invalid.String getTrustManagerProvider()
Specifies the name of the trust manager that should be used with the HTTP Connection Handler .
void setTrustManagerProvider(String value) throws PropertyException
Specifies the name of the trust manager that should be used with the HTTP Connection Handler .
value
- The value of the "trust-manager-provider" property.PropertyException
- If the new value is invalid.boolean isUseSSL()
Indicates whether the HTTP Connection Handler should use SSL.
If enabled, the HTTP Connection Handler will use SSL to encrypt communication with the clients.
void setUseSSL(Boolean value) throws PropertyException
Indicates whether the HTTP Connection Handler should use SSL.
If enabled, the HTTP Connection Handler will use SSL to encrypt communication with the clients.
value
- The value of the "use-ssl" property.PropertyException
- If the new value is invalid.boolean isUseTCPKeepAlive()
Indicates whether the HTTP Connection Handler should use TCP keep-alive.
If enabled, the SO_KEEPALIVE socket option is used to indicate that TCP keepalive messages should periodically be sent to the client to verify that the associated connection is still valid. This may also help prevent cases in which intermediate network hardware could silently drop an otherwise idle client connection, provided that the keepalive interval configured in the underlying operating system is smaller than the timeout enforced by the network hardware.
void setUseTCPKeepAlive(Boolean value) throws PropertyException
Indicates whether the HTTP Connection Handler should use TCP keep-alive.
If enabled, the SO_KEEPALIVE socket option is used to indicate that TCP keepalive messages should periodically be sent to the client to verify that the associated connection is still valid. This may also help prevent cases in which intermediate network hardware could silently drop an otherwise idle client connection, provided that the keepalive interval configured in the underlying operating system is smaller than the timeout enforced by the network hardware.
value
- The value of the "use-tcp-keep-alive" property.PropertyException
- If the new value is invalid.boolean isUseTCPNoDelay()
Indicates whether the HTTP Connection Handler should use TCP no-delay.
If enabled, the TCP_NODELAY socket option is used to ensure that response messages to the client are sent immediately rather than potentially waiting to determine whether additional response messages can be sent in the same packet. In most cases, using the TCP_NODELAY socket option provides better performance and lower response times, but disabling it may help for some cases in which the server sends a large number of entries to a client in response to a search request.
void setUseTCPNoDelay(Boolean value) throws PropertyException
Indicates whether the HTTP Connection Handler should use TCP no-delay.
If enabled, the TCP_NODELAY socket option is used to ensure that response messages to the client are sent immediately rather than potentially waiting to determine whether additional response messages can be sent in the same packet. In most cases, using the TCP_NODELAY socket option provides better performance and lower response times, but disabling it may help for some cases in which the server sends a large number of entries to a client in response to a search request.
value
- The value of the "use-tcp-no-delay" property.PropertyException
- If the new value is invalid.Copyright © 2010-2016 ForgeRock AS. All Rights Reserved.