summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgjoranv <gv@oath.com>2018-09-05 15:09:18 +0200
committergjoranv <gv@oath.com>2019-01-21 15:09:20 +0100
commit452678ef3262f788d58f2de596ca569dee1b8680 (patch)
tree8fca212d36359acc4e2777290e4e0073d6f1b4fe
parentbe89b9f7d9e965c5a46dfedfd110ce3f00d03f18 (diff)
Remove legacy config container.jdisc.config.http-server
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/container/http/ConnectorFactory.java120
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/container/http/Http.java18
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/container/http/xml/JettyConnectorBuilder.java13
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/container/http/FilterBindingsTest.java4
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/container/xml/JettyContainerModelBuilderTest.java80
-rw-r--r--config-model/src/test/schema-test-files/services.xml6
-rw-r--r--container-disc/CMakeLists.txt1
-rw-r--r--container-disc/src/main/resources/configdefinitions/container.jdisc.config.http-server.def47
8 files changed, 34 insertions, 255 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/http/ConnectorFactory.java b/config-model/src/main/java/com/yahoo/vespa/model/container/http/ConnectorFactory.java
index a9d3ec0e5a2..66d779d6fff 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/container/http/ConnectorFactory.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/container/http/ConnectorFactory.java
@@ -5,13 +5,11 @@ import com.yahoo.component.ComponentId;
import com.yahoo.container.bundle.BundleInstantiationSpecification;
import com.yahoo.jdisc.http.ConnectorConfig;
import com.yahoo.osgi.provider.model.ComponentModel;
-import com.yahoo.text.XML;
import com.yahoo.vespa.model.container.component.SimpleComponent;
import com.yahoo.vespa.model.container.http.ssl.LegacySslProvider;
import org.w3c.dom.Element;
import static com.yahoo.component.ComponentSpecification.fromString;
-import static com.yahoo.jdisc.http.ConnectorConfig.Ssl.KeyStoreType;
/**
* @author Einar M R Rosenvinge
@@ -22,16 +20,14 @@ public class ConnectorFactory extends SimpleComponent implements ConnectorConfig
private final String name;
private final int listenPort;
- private final Element legacyConfig;
private final SimpleComponent sslProviderComponent;
public ConnectorFactory(String name, int listenPort) {
- this(name, listenPort, null, new LegacySslProvider(name));
+ this(name, listenPort, new LegacySslProvider(name));
}
public ConnectorFactory(String name,
int listenPort,
- Element legacyConfig,
SimpleComponent sslProviderComponent) {
super(new ComponentModel(
new BundleInstantiationSpecification(new ComponentId(name),
@@ -39,7 +35,6 @@ public class ConnectorFactory extends SimpleComponent implements ConnectorConfig
fromString("jdisc_http_service"))));
this.name = name;
this.listenPort = listenPort;
- this.legacyConfig = legacyConfig;
this.sslProviderComponent = sslProviderComponent;
addChild(sslProviderComponent);
inject(sslProviderComponent);
@@ -47,7 +42,6 @@ public class ConnectorFactory extends SimpleComponent implements ConnectorConfig
@Override
public void getConfig(ConnectorConfig.Builder connectorBuilder) {
- configureWithLegacyHttpConfig(legacyConfig, connectorBuilder);
connectorBuilder.listenPort(listenPort);
connectorBuilder.name(name);
((ConnectorConfig.Producer)sslProviderComponent).getConfig(connectorBuilder);
@@ -61,97 +55,31 @@ public class ConnectorFactory extends SimpleComponent implements ConnectorConfig
return listenPort;
}
- // TODO Remove support for legacy config in Vespa 7
- @Deprecated
- private static void configureWithLegacyHttpConfig(Element legacyConfig, ConnectorConfig.Builder connectorBuilder) {
- if (legacyConfig != null) {
- {
- Element tcpKeepAliveEnabled = XML.getChild(legacyConfig, "tcpKeepAliveEnabled");
- if (tcpKeepAliveEnabled != null) {
- connectorBuilder.tcpKeepAliveEnabled(Boolean.valueOf(XML.getValue(tcpKeepAliveEnabled).trim()));
- }
- }
- {
- Element tcpNoDelayEnabled = XML.getChild(legacyConfig, "tcpNoDelayEnabled");
- if (tcpNoDelayEnabled != null) {
- connectorBuilder.tcpNoDelay(Boolean.valueOf(XML.getValue(tcpNoDelayEnabled).trim()));
- }
- }
- {
- Element tcpListenBacklogLength = XML.getChild(legacyConfig, "tcpListenBacklogLength");
- if (tcpListenBacklogLength != null) {
- connectorBuilder.acceptQueueSize(Integer.parseInt(XML.getValue(tcpListenBacklogLength).trim()));
- }
- }
- {
- Element idleConnectionTimeout = XML.getChild(legacyConfig, "idleConnectionTimeout");
- if (idleConnectionTimeout != null) {
- connectorBuilder.idleTimeout(Double.parseDouble(XML.getValue(idleConnectionTimeout).trim()));
- }
- }
- {
- Element soLinger = XML.getChild(legacyConfig, "soLinger");
- if (soLinger != null) {
+<
+ private void addSslKeyStoreConfigurator(String name, Element sslKeystoreConfigurator) {
+ addSslConfigurator("ssl-keystore-configurator@" + name,
+ DefaultSslKeyStoreConfigurator.class,
+ sslKeystoreConfigurator);
+ }
- connectorBuilder.soLingerTime(Double.parseDouble(XML.getValue(soLinger).trim()));
- }
- }
- {
- Element sendBufferSize = XML.getChild(legacyConfig, "sendBufferSize");
- if (sendBufferSize != null) {
- connectorBuilder.outputBufferSize(Integer.parseInt(XML.getValue(sendBufferSize).trim()));
- }
- }
- {
- Element maxHeaderSize = XML.getChild(legacyConfig, "maxHeaderSize");
- if (maxHeaderSize != null) {
- connectorBuilder.headerCacheSize(Integer.parseInt(XML.getValue(maxHeaderSize).trim()));
- }
- }
+ private void addSslTrustStoreConfigurator(String name, Element sslKeystoreConfigurator) {
+ addSslConfigurator("ssl-truststore-configurator@" + name,
+ DefaultSslTrustStoreConfigurator.class,
+ sslKeystoreConfigurator);
+ }
- Element ssl = XML.getChild(legacyConfig, "ssl");
- Element sslEnabled = XML.getChild(ssl, "enabled");
- if (ssl != null && sslEnabled != null && Boolean.parseBoolean(XML.getValue(sslEnabled).trim())) {
- ConnectorConfig.Ssl.Builder sslBuilder = new ConnectorConfig.Ssl.Builder();
- sslBuilder.enabled(true);
- {
- Element keyStoreType = XML.getChild(ssl, "keyStoreType");
- if (keyStoreType != null) {
- sslBuilder.keyStoreType(KeyStoreType.Enum.valueOf(XML.getValue(keyStoreType).trim()));
- }
- }
- {
- Element keyStorePath = XML.getChild(ssl, "keyStorePath");
- if (keyStorePath != null) {
- sslBuilder.keyStorePath(XML.getValue(keyStorePath).trim());
- }
- }
- {
- Element trustStorePath = XML.getChild(ssl, "trustStorePath");
- if (trustStorePath != null) {
- sslBuilder.trustStorePath(XML.getValue(trustStorePath).trim());
- }
- }
- {
- Element keyDBKey = XML.getChild(ssl, "keyDBKey");
- if (keyDBKey != null) {
- sslBuilder.keyDbKey(XML.getValue(keyDBKey).trim());
- }
- }
- {
- Element algorithm = XML.getChild(ssl, "algorithm");
- if (algorithm != null) {
- sslBuilder.sslKeyManagerFactoryAlgorithm(XML.getValue(algorithm).trim());
- }
- }
- {
- Element protocol = XML.getChild(ssl, "protocol");
- if (protocol != null) {
- sslBuilder.protocol(XML.getValue(protocol).trim());
- }
- }
- connectorBuilder.ssl(sslBuilder);
- }
+ private void addSslConfigurator(String idSpec, Class<?> defaultImplementation, Element configuratorElement) {
+ SimpleComponent configuratorComponent;
+ if (configuratorElement != null) {
+ String className = configuratorElement.getAttribute("class");
+ String bundleName = configuratorElement.getAttribute("bundle");
+ configuratorComponent = new SimpleComponent(new ComponentModel(idSpec, className, bundleName));
+ } else {
+ configuratorComponent =
+ new SimpleComponent(new ComponentModel(idSpec, defaultImplementation.getName(), "jdisc_http_service"));
}
+ addChild(configuratorComponent);
+ inject(configuratorComponent);
}
+
}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/http/Http.java b/config-model/src/main/java/com/yahoo/vespa/model/container/http/Http.java
index 4eed3628bfd..9e85a889075 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/container/http/Http.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/container/http/Http.java
@@ -4,7 +4,6 @@ package com.yahoo.vespa.model.container.http;
import com.yahoo.component.ComponentSpecification;
import com.yahoo.component.provider.ComponentRegistry;
import com.yahoo.config.model.producer.AbstractConfigProducer;
-import com.yahoo.container.jdisc.config.HttpServerConfig;
import com.yahoo.jdisc.http.ServerConfig;
import com.yahoo.vespa.model.container.component.chain.Chain;
import com.yahoo.vespa.model.container.component.chain.ChainedComponent;
@@ -19,8 +18,7 @@ import java.util.Optional;
*
* @author Tony Vaagenes
*/
-public class Http extends AbstractConfigProducer<AbstractConfigProducer<?>>
- implements HttpServerConfig.Producer, ServerConfig.Producer {
+public class Http extends AbstractConfigProducer<AbstractConfigProducer<?>> implements ServerConfig.Producer {
public static class Binding {
public final ComponentSpecification filterId;
@@ -89,12 +87,6 @@ public class Http extends AbstractConfigProducer<AbstractConfigProducer<?>>
}
@Override
- public void getConfig(HttpServerConfig.Builder builder) {
- for (Binding binding: bindings)
- builder.filter(filterBindings(binding));
- }
-
- @Override
public void getConfig(ServerConfig.Builder builder) {
for (final Binding binding : bindings) {
builder.filter(
@@ -104,14 +96,6 @@ public class Http extends AbstractConfigProducer<AbstractConfigProducer<?>>
}
}
- static HttpServerConfig.Filter.Builder filterBindings(Binding binding) {
- HttpServerConfig.Filter.Builder builder = new HttpServerConfig.Filter.Builder();
- builder.id(binding.filterId.stringValue()).
- binding(binding.binding);
- return builder;
- }
-
-
@Override
public void validate() throws Exception {
validate(bindings);
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/http/xml/JettyConnectorBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/container/http/xml/JettyConnectorBuilder.java
index 02840ff380b..a33b49f8749 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/container/http/xml/JettyConnectorBuilder.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/container/http/xml/JettyConnectorBuilder.java
@@ -22,25 +22,14 @@ import java.util.logging.Logger;
* @author mortent
*/
public class JettyConnectorBuilder extends VespaDomBuilder.DomConfigProducerBuilder<ConnectorFactory> {
- private static final Logger log = Logger.getLogger(JettyConnectorBuilder.class.getName());
@Override
protected ConnectorFactory doBuild(DeployState deployState, AbstractConfigProducer ancestor, Element serverSpec) {
String name = XmlHelper.getIdString(serverSpec);
int port = HttpBuilder.readPort(serverSpec, deployState.isHosted(), deployState.getDeployLogger());
- Element legacyServerConfig = XML.getChild(serverSpec, "config");
- if (legacyServerConfig != null) {
- String configName = legacyServerConfig.getAttribute("name");
- if (configName.equals("container.jdisc.config.http-server")) {
- deployState.getDeployLogger().log(Level.WARNING, "The config 'container.jdisc.config.http-server' is deprecated and will be removed in a later version of Vespa."
- + " Please use 'jdisc.http.connector' instead, see http://docs.vespa.ai/documentation/jdisc/http-server-and-filters.html#configuring-jetty-server");
- } else {
- legacyServerConfig = null;
- }
- }
SimpleComponent sslProviderComponent = getSslConfigComponents(name, serverSpec);
- return new ConnectorFactory(name, port, legacyServerConfig, sslProviderComponent);
+ return new ConnectorFactory(name, port, sslProviderComponent);
}
SimpleComponent getSslConfigComponents(String serverName, Element serverSpec) {
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/http/FilterBindingsTest.java b/config-model/src/test/java/com/yahoo/vespa/model/container/http/FilterBindingsTest.java
index 643e65ffc61..4d04a1be614 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/container/http/FilterBindingsTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/container/http/FilterBindingsTest.java
@@ -3,7 +3,6 @@ package com.yahoo.vespa.model.container.http;
import com.yahoo.config.model.deploy.DeployState;
import com.yahoo.config.model.builder.xml.test.DomBuilderTest;
-import com.yahoo.container.jdisc.config.HttpServerConfig;
import com.yahoo.jdisc.http.ServerConfig;
import com.yahoo.vespa.model.container.ContainerModel;
import com.yahoo.vespa.model.container.component.chain.Chain;
@@ -23,7 +22,6 @@ import static org.junit.Assert.assertNotNull;
/**
* @author gjoranv
- * @since 5.1.25
*/
public class FilterBindingsTest extends DomBuilderTest {
@@ -85,7 +83,7 @@ public class FilterBindingsTest extends DomBuilderTest {
@Test
public void bindings_are_added_to_config_for_all_http_servers_with_jetty() throws Exception {
final Element xml = parse(
- "<jdisc version='1.0' jetty='true'>",
+ "<jdisc version='1.0'>",
" <http>",
" <filtering>",
" <request-chain id='my-request-chain'>",
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/JettyContainerModelBuilderTest.java b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/JettyContainerModelBuilderTest.java
index ceff9f3d4bb..5525b75373d 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/JettyContainerModelBuilderTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/JettyContainerModelBuilderTest.java
@@ -16,7 +16,6 @@ import org.w3c.dom.Element;
import java.util.List;
import java.util.Optional;
-import static com.yahoo.jdisc.http.ConnectorConfig.Ssl.KeyStoreType;
import static org.hamcrest.CoreMatchers.equalTo;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.not;
@@ -33,7 +32,7 @@ public class JettyContainerModelBuilderTest extends ContainerModelBuilderTestBas
@Test
public void verify_that_overriding_connector_options_works() throws Exception {
Element clusterElem = DomBuilderTest.parse(
- "<jdisc id='default' version='1.0' jetty='true'>\n" +
+ "<jdisc id='default' version='1.0'>\n" +
" <http>\n" +
" <server id='bananarama' port='4321'>\n" +
" <config name='jdisc.http.connector'>\n" +
@@ -46,7 +45,6 @@ public class JettyContainerModelBuilderTest extends ContainerModelBuilderTestBas
"</jdisc>\n"
);
createModel(root, clusterElem);
- ConnectorConfig.Builder connectorConfigBuilder = new ConnectorConfig.Builder();
ConnectorConfig cfg = root.getConfig(ConnectorConfig.class, "default/http/jdisc-jetty/bananarama");
assertThat(cfg.requestHeaderSize(), is(300000));
assertThat(cfg.headerCacheSize(), is(300000));
@@ -55,7 +53,7 @@ public class JettyContainerModelBuilderTest extends ContainerModelBuilderTestBas
@Test
public void verify_that_enabling_jetty_works() throws Exception {
Element clusterElem = DomBuilderTest.parse(
- "<jdisc id='default' version='1.0' jetty='true'>" +
+ "<jdisc id='default' version='1.0'>" +
nodesXml +
"</jdisc>"
);
@@ -66,7 +64,7 @@ public class JettyContainerModelBuilderTest extends ContainerModelBuilderTestBas
@Test
public void verify_that_enabling_jetty_works_for_custom_http_servers() throws Exception {
Element clusterElem = DomBuilderTest.parse(
- "<jdisc id='default' version='1.0' jetty='true'>",
+ "<jdisc id='default' version='1.0'>",
" <http>",
" <server port='9000' id='foo' />",
" </http>",
@@ -79,7 +77,7 @@ public class JettyContainerModelBuilderTest extends ContainerModelBuilderTestBas
@Test
public void verifyThatJettyHttpServerHasFilterBindingsProvider() throws Exception {
final Element clusterElem = DomBuilderTest.parse(
- "<jdisc id='default' version='1.0' jetty='true'>",
+ "<jdisc id='default' version='1.0'>",
nodesXml,
"</jdisc>" );
createModel(root, clusterElem);
@@ -100,7 +98,7 @@ public class JettyContainerModelBuilderTest extends ContainerModelBuilderTestBas
@Test
public void verifyThatJettyHttpServerHasFilterBindingsProviderForCustomHttpServers() throws Exception {
final Element clusterElem = DomBuilderTest.parse(
- "<jdisc id='default' version='1.0' jetty='true'>",
+ "<jdisc id='default' version='1.0'>",
" <http>",
" <server port='9000' id='foo' />",
" </http>",
@@ -122,73 +120,7 @@ public class JettyContainerModelBuilderTest extends ContainerModelBuilderTestBas
}
@Test
- public void verify_that_old_http_config_override_inside_server_tag_works() throws Exception {
- Element clusterElem = DomBuilderTest.parse(
- "<jdisc id='default' version='1.0' jetty='true'>",
- " <http>",
- " <server port='9000' id='foo'>",
- " <config name=\"container.jdisc.config.http-server\">",
- " <tcpKeepAliveEnabled>true</tcpKeepAliveEnabled>",
- " <tcpNoDelayEnabled>false</tcpNoDelayEnabled>",
- " <tcpListenBacklogLength>2</tcpListenBacklogLength>",
- " <idleConnectionTimeout>34.1</idleConnectionTimeout>",
- " <soLinger>42.2</soLinger>",
- " <sendBufferSize>1234</sendBufferSize>",
- " <maxHeaderSize>4321</maxHeaderSize>",
- " <ssl>",
- " <enabled>true</enabled>",
- " <keyStoreType>JKS</keyStoreType>",
- " <keyStorePath>apple</keyStorePath>",
- " <trustStorePath>grape</trustStorePath>",
- " <keyDBKey>tomato</keyDBKey>",
- " <algorithm>onion</algorithm>",
- " <protocol>carrot</protocol>",
- " </ssl>",
- " </config>",
- " </server>",
- " </http>",
- nodesXml,
- "</jdisc>" );
- createModel(root, clusterElem);
- ContainerCluster cluster = (ContainerCluster) root.getChildren().get("default");
- List<JettyHttpServer> jettyServers = cluster.getChildrenByTypeRecursive(JettyHttpServer.class);
-
- assertThat(jettyServers.size(), is(1));
-
- JettyHttpServer server = jettyServers.get(0);
- assertThat(server.model.bundleInstantiationSpec.classId.toString(),
- is(com.yahoo.jdisc.http.server.jetty.JettyHttpServer.class.getName()));
- assertThat(server.model.bundleInstantiationSpec.bundle.toString(), is("jdisc_http_service"));
- assertThat(server.getConnectorFactories().size(), is(1));
-
- ConnectorConfig.Builder connectorConfigBuilder = new ConnectorConfig.Builder();
- server.getConnectorFactories().get(0).getConfig(connectorConfigBuilder);
- ConnectorConfig connector = new ConnectorConfig(connectorConfigBuilder);
- assertThat(connector.name(), equalTo("foo"));
- assertThat(connector.tcpKeepAliveEnabled(), equalTo(true));
- assertThat(connector.tcpNoDelay(), equalTo(false));
- assertThat(connector.acceptQueueSize(), equalTo(2));
- assertThat(connector.idleTimeout(), equalTo(34.1));
- assertThat(connector.soLingerTime(), equalTo(42.2));
- assertThat(connector.outputBufferSize(), equalTo(1234));
- assertThat(connector.headerCacheSize(), equalTo(4321));
- assertThat(connector.ssl().enabled(), equalTo(true));
- assertThat(connector.ssl().keyStoreType(), equalTo(KeyStoreType.Enum.JKS));
- assertThat(connector.ssl().keyStorePath(), equalTo("apple"));
- assertThat(connector.ssl().trustStorePath(), equalTo("grape"));
- assertThat(connector.ssl().keyDbKey(), equalTo("tomato"));
- assertThat(connector.ssl().sslKeyManagerFactoryAlgorithm(), equalTo("onion"));
- assertThat(connector.ssl().protocol(), equalTo("carrot"));
-
- assertThat(
- extractComponentByClassName(
- clusterComponentsConfig(),
- com.yahoo.jdisc.http.server.jetty.JettyHttpServer.class.getName()),
- is(not(nullValue())));
- }
-
- @Test
- public void verify_that_ssl_element_generates_connector_config_and_inject_provider_component() {
+ public void ssl_element_generates_connector_config_and_injects_provider_component() {
Element clusterElem = DomBuilderTest.parse(
"<jdisc id='default' version='1.0' jetty='true'>",
" <http>",
diff --git a/config-model/src/test/schema-test-files/services.xml b/config-model/src/test/schema-test-files/services.xml
index 43a8d31e2ee..880d49fa460 100644
--- a/config-model/src/test/schema-test-files/services.xml
+++ b/config-model/src/test/schema-test-files/services.xml
@@ -113,11 +113,7 @@
</filtering>
<server port="4080" id="myServer"/>
- <server port="4081" id="anotherServer">
- <config name="container.jdisc.config.http-server">
- <maxChunkSize>9999</maxChunkSize>
- </config>
- </server>
+ <server port="4081" id="anotherServer"/>
<server port="4082" id="defaultSsl">
<ssl>
<private-key-file>/foo/key</private-key-file>
diff --git a/container-disc/CMakeLists.txt b/container-disc/CMakeLists.txt
index 92f5b303d41..edb9dc1ef1b 100644
--- a/container-disc/CMakeLists.txt
+++ b/container-disc/CMakeLists.txt
@@ -3,7 +3,6 @@ install_fat_java_artifact(container-disc)
vespa_install_script(src/main/sh/vespa-start-container-daemon.sh vespa-start-container-daemon bin)
-install_config_definition(src/main/resources/configdefinitions/container.jdisc.config.http-server.def)
install_config_definition(src/main/resources/configdefinitions/jdisc-bindings.def container.jdisc.jdisc-bindings.def)
install_config_definition(src/main/resources/configdefinitions/jersey-connection.def container.config.jersey.jersey-connection.def)
install_config_definition(src/main/resources/configdefinitions/jersey-web-app-pool.def container.config.jersey.jersey-web-app-pool.def)
diff --git a/container-disc/src/main/resources/configdefinitions/container.jdisc.config.http-server.def b/container-disc/src/main/resources/configdefinitions/container.jdisc.config.http-server.def
deleted file mode 100644
index 9275136c585..00000000000
--- a/container-disc/src/main/resources/configdefinitions/container.jdisc.config.http-server.def
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-namespace=container.jdisc.config
-
-# TODO Vespa 7: Remove this config and its adapter in config-model (ConnectorFactory)
-
-serverName string default="default"
-tcpKeepAliveEnabled bool default=false
-httpKeepAliveEnabled bool default=true
-optimizedForPipeline bool default=false
-removeRawPostBodyForWwwUrlEncodedPost bool default=false
-responseChunkingEnabled bool default=true
-tcpNoDelayEnabled bool default=true
-listenPort int
-maxChunkSize int default=65536
-maxHeaderSize int default=65536
-maxInitialLineLength int default=65536
-maxUnchunkedResponseSize int default=10362880
-numWorkerThreads int default=16
-receiveBufferSize int default=-1
-responseCompressionLevel int default=6
-sendBufferSize int default=-1
-tcpListenBacklogLength int default=0
-connectTimeout double default=10
-idleConnectionTimeout double default=180
-soLinger double default=-1
-perRequestMetricsEnabled bool default=false
-metricUpdateInterval double default=1
-ssl.enabled bool default=false
-ssl.keyStoreType string default="JKS"
-ssl.keyStorePath string default="default"
-ssl.trustStorePath string default="default"
-ssl.keyDBKey string default=""
-ssl.algorithm string default="SunX509"
-ssl.protocol string default="TLS"
-
-filter[].id string
-filter[].binding string
-
-#copy pasted from new http-server.def(namespace=jdisc.http.server)
-accessLog.bufferSize int default = 10240
-accessLog.flushTimeout double default = 5 # seconds
-accessLog.fileName string default = ""
-accessLog.rotatable bool default = false
-accessLog.directory string default = "logs/jdisc_core"
-accessLog.prefix string default = "access_log."
-accessLog.suffix string default = ""
-accessLog.fileDateFormat string default = "yyyy-MM-dd"