diff --git a/gradle.properties b/gradle.properties index 6807f04..3a97768 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,3 +1,3 @@ group = org.xbib name = net-http -version = 4.2.0 +version = 4.3.0 diff --git a/gradle/compile/java.gradle b/gradle/compile/java.gradle index be4708e..49943d2 100644 --- a/gradle/compile/java.gradle +++ b/gradle/compile/java.gradle @@ -17,13 +17,28 @@ jar { } tasks.withType(JavaCompile) { - options.fork = true - options.forkOptions.jvmArgs += ['-Duser.language=en','-Duser.country=US'] - options.compilerArgs.add('-Xlint:all') - options.encoding = 'UTF-8' + doFirst { + options.fork = true + options.forkOptions.jvmArgs += ['-Duser.language=en','-Duser.country=US'] + options.encoding = 'UTF-8' + options.compilerArgs.add('-Xlint:all') + options.compilerArgs.add("--module-path") + options.compilerArgs.add(classpath.asPath) + classpath = files() + } } tasks.withType(Javadoc) { - options.addStringOption('Xdoclint:none', '-quiet') - options.encoding = 'UTF-8' + doFirst { + options.addStringOption('Xdoclint:none', '-quiet') + options.encoding = 'UTF-8' + } +} + +tasks.withType(JavaExec) { + doFirst { + jvmArguments.add("--module-path") + jvmArguments.add(classpath.asPath) + classpath = files() + } } diff --git a/gradle/test/junit5.gradle b/gradle/test/junit5.gradle index 38cf13c..a0d2b6f 100644 --- a/gradle/test/junit5.gradle +++ b/gradle/test/junit5.gradle @@ -19,6 +19,12 @@ test { '--add-opens=java.base/java.util=ALL-UNNAMED' systemProperty 'java.util.logging.config.file', 'src/test/resources/logging.properties' systemProperty 'io.netty.tryReflectionSetAccessible', 'false' + systemProperty 'io.netty.allocator.typ', 'pooled' + systemProperty 'io.netty.noUnsafe', 'true' + systemProperty 'io.netty.noKeySetOptimization', 'true' + systemProperty 'io.netty.eventLoopThreads', '8' + systemProperty 'io.netty.recycler.maxCapacityPerThread', '0' + systemProperty 'io.netty.transport.noNative', 'true' testLogging { events 'STARTED', 'PASSED', 'FAILED', 'SKIPPED' } diff --git a/net-http-client-netty-secure/build.gradle b/net-http-client-netty-secure/build.gradle index c5325aa..5668b01 100644 --- a/net-http-client-netty-secure/build.gradle +++ b/net-http-client-netty-secure/build.gradle @@ -5,3 +5,14 @@ dependencies { api libs.netty.handler.proxy testImplementation project(':net-http-netty-boringssl') } + +def moduleName = 'org.xbib.net.http.client.netty.secure.test' +def patchArgs = ['--patch-module', "$moduleName=" + files(sourceSets.test.resources.srcDirs).asPath ] + +tasks.named('compileTestJava') { + options.compilerArgs += patchArgs +} + +tasks.named('test') { + jvmArgs += patchArgs +} diff --git a/net-http-client-netty-secure/src/test/java/module-info.java b/net-http-client-netty-secure/src/test/java/module-info.java new file mode 100644 index 0000000..64793d5 --- /dev/null +++ b/net-http-client-netty-secure/src/test/java/module-info.java @@ -0,0 +1,15 @@ +module org.xbib.net.http.client.netty.secure.test { + requires java.management; + requires jdk.management; + requires java.net.http; + requires transitive org.junit.jupiter.api; + requires io.netty.buffer; + requires io.netty.transport; + requires org.xbib.net; + requires org.xbib.net.http; + requires org.xbib.net.http.client; + requires org.xbib.net.http.client.netty; + requires org.xbib.net.http.client.netty.secure; + exports org.xbib.net.http.client.netty.secure.test; + opens org.xbib.net.http.client.netty.secure.test; +} diff --git a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/AkamaiTest.java b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/AkamaiTest.java similarity index 97% rename from net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/AkamaiTest.java rename to net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/AkamaiTest.java index 7ea115d..dc8ade4 100644 --- a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/AkamaiTest.java +++ b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/AkamaiTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.client.secure; +package org.xbib.net.http.client.netty.secure.test; import java.io.IOException; import java.nio.charset.StandardCharsets; diff --git a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/ExponentialBackOffTest.java b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/ExponentialBackOffTest.java similarity index 99% rename from net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/ExponentialBackOffTest.java rename to net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/ExponentialBackOffTest.java index a90d66f..527eb78 100644 --- a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/ExponentialBackOffTest.java +++ b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/ExponentialBackOffTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.client.secure; +package org.xbib.net.http.client.netty.secure.test; import org.junit.jupiter.api.Test; import org.xbib.net.http.client.BackOff; diff --git a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/FileDescriptorLeakTest.java b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/FileDescriptorLeakTest.java similarity index 97% rename from net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/FileDescriptorLeakTest.java rename to net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/FileDescriptorLeakTest.java index 1ff4bb6..6d7ce0f 100644 --- a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/FileDescriptorLeakTest.java +++ b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/FileDescriptorLeakTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.client.secure; +package org.xbib.net.http.client.netty.secure.test; import com.sun.management.UnixOperatingSystemMXBean; import java.lang.management.ManagementFactory; diff --git a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/Http2FramesTest.java b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/Http2FramesTest.java similarity index 99% rename from net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/Http2FramesTest.java rename to net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/Http2FramesTest.java index 7a39312..a24f2f6 100644 --- a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/Http2FramesTest.java +++ b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/Http2FramesTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.client.secure; +package org.xbib.net.http.client.netty.secure.test; import io.netty.bootstrap.Bootstrap; import io.netty.buffer.ByteBuf; diff --git a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/HttpBinTest.java b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/HttpBinTest.java similarity index 97% rename from net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/HttpBinTest.java rename to net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/HttpBinTest.java index 515bffb..dd38dbb 100644 --- a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/HttpBinTest.java +++ b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/HttpBinTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.client.secure; +package org.xbib.net.http.client.netty.secure.test; import java.io.IOException; import java.nio.charset.StandardCharsets; diff --git a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/Https1Test.java b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/Https1Test.java similarity index 99% rename from net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/Https1Test.java rename to net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/Https1Test.java index e38f9bc..069d081 100644 --- a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/Https1Test.java +++ b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/Https1Test.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.client.secure; +package org.xbib.net.http.client.netty.secure.test; import io.netty.handler.proxy.Socks5ProxyHandler; import java.io.IOException; diff --git a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/Https2Test.java b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/Https2Test.java similarity index 98% rename from net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/Https2Test.java rename to net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/Https2Test.java index 9ffa0d6..68cb491 100644 --- a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/Https2Test.java +++ b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/Https2Test.java @@ -1,6 +1,5 @@ -package org.xbib.net.http.netty.client.secure; +package org.xbib.net.http.client.netty.secure.test; -import io.netty.handler.codec.http.HttpMethod; import java.io.IOException; import java.nio.charset.StandardCharsets; import java.util.concurrent.atomic.AtomicBoolean; diff --git a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/JdkClientTest.java b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/JdkClientTest.java similarity index 97% rename from net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/JdkClientTest.java rename to net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/JdkClientTest.java index d76bd04..f92a93d 100644 --- a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/JdkClientTest.java +++ b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/JdkClientTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.client.secure; +package org.xbib.net.http.client.netty.secure.test; import java.net.URI; import java.net.URLEncoder; diff --git a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/MockBackOff.java b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/MockBackOff.java similarity index 97% rename from net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/MockBackOff.java rename to net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/MockBackOff.java index 2cf4800..ae6c9ae 100644 --- a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/MockBackOff.java +++ b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/MockBackOff.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.client.secure; +package org.xbib.net.http.client.netty.secure.test; import org.xbib.net.http.client.BackOff; diff --git a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/MockBackOffTest.java b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/MockBackOffTest.java similarity index 93% rename from net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/MockBackOffTest.java rename to net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/MockBackOffTest.java index 4dbf518..f6aba13 100644 --- a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/MockBackOffTest.java +++ b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/MockBackOffTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.client.secure; +package org.xbib.net.http.client.netty.secure.test; import java.io.IOException; import org.junit.jupiter.api.Test; diff --git a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/SimpleHttp1Test.java b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/SimpleHttp1Test.java similarity index 98% rename from net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/SimpleHttp1Test.java rename to net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/SimpleHttp1Test.java index c619d53..b03310c 100644 --- a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/SimpleHttp1Test.java +++ b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/SimpleHttp1Test.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.client.secure; +package org.xbib.net.http.client.netty.secure.test; import io.netty.bootstrap.Bootstrap; import io.netty.channel.Channel; @@ -33,7 +33,6 @@ import java.util.logging.Logger; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.TestInstance; -import org.junit.jupiter.api.extension.ExtendWith; @TestInstance(TestInstance.Lifecycle.PER_CLASS) class SimpleHttp1Test { diff --git a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/SimpleHttp2Test.java b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/SimpleHttp2Test.java similarity index 99% rename from net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/SimpleHttp2Test.java rename to net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/SimpleHttp2Test.java index 95c2909..b14bb4b 100644 --- a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/SimpleHttp2Test.java +++ b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/SimpleHttp2Test.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.client.secure; +package org.xbib.net.http.client.netty.secure.test; import io.netty.bootstrap.Bootstrap; import io.netty.channel.Channel; diff --git a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/ThreadLeakTest.java b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/ThreadLeakTest.java similarity index 95% rename from net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/ThreadLeakTest.java rename to net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/ThreadLeakTest.java index 133e547..be9998b 100644 --- a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/ThreadLeakTest.java +++ b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/ThreadLeakTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.client.secure; +package org.xbib.net.http.client.netty.secure.test; import java.io.IOException; import java.util.Set; diff --git a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/WebtideTest.java b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/WebtideTest.java similarity index 99% rename from net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/WebtideTest.java rename to net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/WebtideTest.java index beea72a..e8c4c42 100644 --- a/net-http-client-netty-secure/src/test/java/org/xbib/net/http/netty/client/secure/WebtideTest.java +++ b/net-http-client-netty-secure/src/test/java/org/xbib/net/http/client/netty/secure/test/WebtideTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.client.secure; +package org.xbib.net.http.client.netty.secure.test; import io.netty.bootstrap.Bootstrap; import io.netty.channel.Channel; diff --git a/net-http-client-netty/build.gradle b/net-http-client-netty/build.gradle index 89890d2..c9fed5f 100644 --- a/net-http-client-netty/build.gradle +++ b/net-http-client-netty/build.gradle @@ -3,3 +3,14 @@ dependencies { api libs.netty.codec.http2 api libs.netty.handler.proxy } + +def moduleName = 'org.xbib.net.http.client.netty.test' +def patchArgs = ['--patch-module', "$moduleName=" + files(sourceSets.test.resources.srcDirs).asPath ] + +tasks.named('compileTestJava') { + options.compilerArgs += patchArgs +} + +tasks.named('test') { + jvmArgs += patchArgs +} diff --git a/net-http-client-netty/src/test/java/module-info.java b/net-http-client-netty/src/test/java/module-info.java new file mode 100644 index 0000000..a205641 --- /dev/null +++ b/net-http-client-netty/src/test/java/module-info.java @@ -0,0 +1,15 @@ +import org.xbib.net.http.client.netty.ClientTransportProvider; +import org.xbib.net.http.client.netty.HttpChannelInitializer; + +module org.xbib.net.http.client.netty.test { + requires java.logging; + requires transitive org.junit.jupiter.api; + requires org.xbib.net; + requires org.xbib.net.http; + requires org.xbib.net.http.client; + requires org.xbib.net.http.client.netty; + uses ClientTransportProvider; + uses HttpChannelInitializer; + exports org.xbib.net.http.client.netty.test; + opens org.xbib.net.http.client.netty.test; +} diff --git a/net-http-client-netty/src/test/java/org/xbib/net/http/client/netty/Http1Test.java b/net-http-client-netty/src/test/java/org/xbib/net/http/client/netty/test/Http1Test.java similarity index 86% rename from net-http-client-netty/src/test/java/org/xbib/net/http/client/netty/Http1Test.java rename to net-http-client-netty/src/test/java/org/xbib/net/http/client/netty/test/Http1Test.java index e182989..0477bfd 100644 --- a/net-http-client-netty/src/test/java/org/xbib/net/http/client/netty/Http1Test.java +++ b/net-http-client-netty/src/test/java/org/xbib/net/http/client/netty/test/Http1Test.java @@ -1,10 +1,14 @@ -package org.xbib.net.http.client.netty; +package org.xbib.net.http.client.netty.test; import java.nio.charset.StandardCharsets; import java.util.concurrent.atomic.AtomicBoolean; import java.util.logging.Level; import java.util.logging.Logger; import org.junit.jupiter.api.Test; +import org.xbib.net.http.client.netty.HttpRequest; +import org.xbib.net.http.client.netty.NettyHttpClient; +import org.xbib.net.http.client.netty.NettyHttpClientConfig; + import static org.junit.jupiter.api.Assertions.assertTrue; class Http1Test { diff --git a/net-http-client-netty/src/test/java/org/xbib/net/http/client/netty/Http2Test.java b/net-http-client-netty/src/test/java/org/xbib/net/http/client/netty/test/Http2Test.java similarity index 88% rename from net-http-client-netty/src/test/java/org/xbib/net/http/client/netty/Http2Test.java rename to net-http-client-netty/src/test/java/org/xbib/net/http/client/netty/test/Http2Test.java index 9ae9293..8dcb9d2 100644 --- a/net-http-client-netty/src/test/java/org/xbib/net/http/client/netty/Http2Test.java +++ b/net-http-client-netty/src/test/java/org/xbib/net/http/client/netty/test/Http2Test.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.client.netty; +package org.xbib.net.http.client.netty.test; import java.io.IOException; import java.nio.charset.StandardCharsets; @@ -8,6 +8,9 @@ import java.util.logging.Logger; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; import org.xbib.net.http.HttpVersion; +import org.xbib.net.http.client.netty.HttpRequest; +import org.xbib.net.http.client.netty.NettyHttpClient; +import org.xbib.net.http.client.netty.NettyHttpClientConfig; class Http2Test { diff --git a/net-http-client-netty/src/test/java/org/xbib/net/http/client/netty/ParameterTest.java b/net-http-client-netty/src/test/java/org/xbib/net/http/client/netty/test/ParameterTest.java similarity index 89% rename from net-http-client-netty/src/test/java/org/xbib/net/http/client/netty/ParameterTest.java rename to net-http-client-netty/src/test/java/org/xbib/net/http/client/netty/test/ParameterTest.java index 10d7618..70f8d76 100644 --- a/net-http-client-netty/src/test/java/org/xbib/net/http/client/netty/ParameterTest.java +++ b/net-http-client-netty/src/test/java/org/xbib/net/http/client/netty/test/ParameterTest.java @@ -1,7 +1,8 @@ -package org.xbib.net.http.client.netty; +package org.xbib.net.http.client.netty.test; import org.junit.jupiter.api.Test; import org.xbib.net.URL; +import org.xbib.net.http.client.netty.HttpRequest; import java.util.Map; diff --git a/net-http-client-simple/build.gradle b/net-http-client-simple/build.gradle index 0343483..6a523f2 100644 --- a/net-http-client-simple/build.gradle +++ b/net-http-client-simple/build.gradle @@ -1,3 +1,14 @@ dependencies { api project(':net-http-client') } + +def moduleName = 'org.xbib.net.http.client.simple.test' +def patchArgs = ['--patch-module', "$moduleName=" + files(sourceSets.test.resources.srcDirs).asPath ] + +tasks.named('compileTestJava') { + options.compilerArgs += patchArgs +} + +tasks.named('test') { + jvmArgs += patchArgs +} diff --git a/net-http-client/build.gradle b/net-http-client/build.gradle index 5929d8a..210866c 100644 --- a/net-http-client/build.gradle +++ b/net-http-client/build.gradle @@ -1,3 +1,14 @@ dependencies { api project(':net-http') } + +def moduleName = 'org.xbib.net.http.client.test' +def patchArgs = ['--patch-module', "$moduleName=" + files(sourceSets.test.resources.srcDirs).asPath ] + +tasks.named('compileTestJava') { + options.compilerArgs += patchArgs +} + +tasks.named('test') { + jvmArgs += patchArgs +} diff --git a/net-http-client/src/test/java/module-info.java b/net-http-client/src/test/java/module-info.java new file mode 100644 index 0000000..d994617 --- /dev/null +++ b/net-http-client/src/test/java/module-info.java @@ -0,0 +1,8 @@ +module org.xbib.net.http.client.test { + requires transitive org.junit.jupiter.api; + requires org.xbib.net; + requires org.xbib.net.http; + requires org.xbib.net.http.client; + exports org.xbib.net.http.client.test; + opens org.xbib.net.http.client.test; +} diff --git a/net-http-client/src/test/java/org/xbib/net/http/client/ClientCookieDecoderTest.java b/net-http-client/src/test/java/org/xbib/net/http/client/test/ClientCookieDecoderTest.java similarity index 99% rename from net-http-client/src/test/java/org/xbib/net/http/client/ClientCookieDecoderTest.java rename to net-http-client/src/test/java/org/xbib/net/http/client/test/ClientCookieDecoderTest.java index f6540d4..c9f90e6 100644 --- a/net-http-client/src/test/java/org/xbib/net/http/client/ClientCookieDecoderTest.java +++ b/net-http-client/src/test/java/org/xbib/net/http/client/test/ClientCookieDecoderTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.client; +package org.xbib.net.http.client.test; import java.time.ZoneId; import java.time.ZonedDateTime; @@ -17,7 +17,7 @@ import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.junit.jupiter.api.Assertions.assertNull; import static org.junit.jupiter.api.Assertions.assertTrue; -class CookieDecoderTest { +class ClientCookieDecoderTest { @Test void testDecodingSingleCookieV0() { diff --git a/net-http-client/src/test/java/org/xbib/net/http/client/ClientCookieEncoderTest.java b/net-http-client/src/test/java/org/xbib/net/http/client/test/ClientCookieEncoderTest.java similarity index 97% rename from net-http-client/src/test/java/org/xbib/net/http/client/ClientCookieEncoderTest.java rename to net-http-client/src/test/java/org/xbib/net/http/client/test/ClientCookieEncoderTest.java index 15beb28..f9f32e5 100644 --- a/net-http-client/src/test/java/org/xbib/net/http/client/ClientCookieEncoderTest.java +++ b/net-http-client/src/test/java/org/xbib/net/http/client/test/ClientCookieEncoderTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.client; +package org.xbib.net.http.client.test; import org.junit.jupiter.api.Test; import org.xbib.net.http.client.cookie.CookieEncoder; diff --git a/net-http-htmlflow/NOTICE.txt b/net-http-htmlflow/NOTICE.txt new file mode 100644 index 0000000..e85e335 --- /dev/null +++ b/net-http-htmlflow/NOTICE.txt @@ -0,0 +1,4 @@ + +The htmlflow project is not enabled for Java modules. + +Maybe the dependencies are wrong. The asm-parent pom dependency can not be a module. diff --git a/net-http-j2html/build.gradle b/net-http-j2html/build.gradle index f76160e..6775ef5 100644 --- a/net-http-j2html/build.gradle +++ b/net-http-j2html/build.gradle @@ -2,3 +2,14 @@ dependencies { api project(':net-http-server') api libs.j2html } + +def moduleName = 'org.xbib.net.http.j2html.test' +def patchArgs = ['--patch-module', "$moduleName=" + files(sourceSets.test.resources.srcDirs).asPath ] + +tasks.named('compileTestJava') { + options.compilerArgs += patchArgs +} + +tasks.named('test') { + jvmArgs += patchArgs +} diff --git a/net-http-j2html/src/main/java/module-info.java b/net-http-j2html/src/main/java/module-info.java index f0bf7d7..91fd3e2 100644 --- a/net-http-j2html/src/main/java/module-info.java +++ b/net-http-j2html/src/main/java/module-info.java @@ -4,6 +4,6 @@ module org.xbib.net.http.j2html { requires org.xbib.net.http; requires org.xbib.net.http.server; requires org.xbib.config; - requires com.j2html; + requires org.xbib.j2html; requires java.logging; } diff --git a/net-http-j2html/src/main/java/org/xbib/net/http/j2html/J2HtmlResourceHandler.java b/net-http-j2html/src/main/java/org/xbib/net/http/j2html/J2HtmlResourceHandler.java index 624c8bb..3336382 100644 --- a/net-http-j2html/src/main/java/org/xbib/net/http/j2html/J2HtmlResourceHandler.java +++ b/net-http-j2html/src/main/java/org/xbib/net/http/j2html/J2HtmlResourceHandler.java @@ -13,8 +13,8 @@ import java.nio.charset.StandardCharsets; import java.nio.file.Path; import java.util.Objects; -import static j2html.TagCreator.body; -import static j2html.TagCreator.h1; +import static org.xbib.j2html.TagCreator.body; +import static org.xbib.j2html.TagCreator.h1; import static org.xbib.net.http.HttpHeaderNames.CONTENT_TYPE; public class J2HtmlResourceHandler extends HtmlTemplateResourceHandler { @@ -51,7 +51,6 @@ public class J2HtmlResourceHandler extends HtmlTemplateResourceHandler { if (httpResponseStatus == null) { httpResponseStatus = HttpResponseStatus.OK; } - //context.getAttributes().get(HttpResponseStatus.class, "_status", HttpResponseStatus.OK); context.status(httpResponseStatus) .header("cache-control", "no-cache") // override default must-revalidate behavior .header("content-length", Integer.toString(dataBuffer.writePosition())) @@ -59,6 +58,12 @@ public class J2HtmlResourceHandler extends HtmlTemplateResourceHandler { .body(dataBuffer); } + /** + * By subclassing this handler, this method should be overriden by custom j2html code. + * The body here is just a greeting as an example. + * @param context the router context + * @return the body string fo the HTTP response + */ protected String renderBody(HttpRouterContext context) { return body( h1("Hello World") diff --git a/net-http-netty-conscrypt/build.gradle b/net-http-netty-conscrypt/build.gradle index 0712a6a..13498b4 100644 --- a/net-http-netty-conscrypt/build.gradle +++ b/net-http-netty-conscrypt/build.gradle @@ -3,3 +3,14 @@ dependencies { api project(':net-http-client-netty-secure') api libs.conscrypt } + +def moduleName = 'org.xbib.net.http.netty.conscrypt.test' +def patchArgs = ['--patch-module', "$moduleName=" + files(sourceSets.test.resources.srcDirs).asPath ] + +tasks.named('compileTestJava') { + options.compilerArgs += patchArgs +} + +tasks.named('test') { + jvmArgs += patchArgs +} diff --git a/net-http-netty-conscrypt/src/test/java/module-info.java b/net-http-netty-conscrypt/src/test/java/module-info.java new file mode 100644 index 0000000..f1e5bde --- /dev/null +++ b/net-http-netty-conscrypt/src/test/java/module-info.java @@ -0,0 +1,10 @@ +module org.xbib.net.http.netty.conscrypt.test { + requires transitive org.junit.jupiter.api; + requires org.xbib.net; + requires org.xbib.net.http; + requires org.xbib.net.http.client; + requires org.xbib.net.http.client.netty; + requires org.xbib.net.http.client.netty.secure; + exports org.xbib.net.http.netty.conscrypt.test; + opens org.xbib.net.http.netty.conscrypt.test; +} diff --git a/net-http-netty-conscrypt/src/test/java/org/xbib/net/http/netty/conscrypt/Http1Test.java b/net-http-netty-conscrypt/src/test/java/org/xbib/net/http/netty/conscrypt/test/Http1Test.java similarity index 91% rename from net-http-netty-conscrypt/src/test/java/org/xbib/net/http/netty/conscrypt/Http1Test.java rename to net-http-netty-conscrypt/src/test/java/org/xbib/net/http/netty/conscrypt/test/Http1Test.java index c6dfdd5..d57b875 100644 --- a/net-http-netty-conscrypt/src/test/java/org/xbib/net/http/netty/conscrypt/Http1Test.java +++ b/net-http-netty-conscrypt/src/test/java/org/xbib/net/http/netty/conscrypt/test/Http1Test.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.conscrypt; +package org.xbib.net.http.netty.conscrypt.test; import java.nio.charset.StandardCharsets; import java.util.logging.Level; @@ -31,6 +31,7 @@ public class Http1Test { resp.getBodyAsChars(StandardCharsets.UTF_8) + " status=" + resp.getStatus())) .build(); + // we just log the request and we do not care if the response was there logger.log(Level.INFO, "request = " + request); client.execute(request).get().close(); } diff --git a/net-http-server-application-web/build.gradle b/net-http-server-application-web/build.gradle index b621bbc..a513f69 100644 --- a/net-http-server-application-web/build.gradle +++ b/net-http-server-application-web/build.gradle @@ -5,7 +5,6 @@ dependencies { api project(':net-http-server-application-config') api project(':net-http-template-groovy') api project(':net-http-j2html') - api project(':net-http-htmlflow') api libs.jdbc.query implementation libs.webjars.bootstrap implementation libs.webjars.jquery diff --git a/net-http-server-application-web/src/main/java/module-info.java b/net-http-server-application-web/src/main/java/module-info.java index 932bc12..76ae5c5 100644 --- a/net-http-server-application-web/src/main/java/module-info.java +++ b/net-http-server-application-web/src/main/java/module-info.java @@ -14,5 +14,6 @@ module org.xbib.net.http.server.application.web { requires org.xbib.jdbc.query; requires org.xbib.config; requires java.logging; - requires com.j2html; + // for error handler code + requires org.xbib.j2html; } diff --git a/net-http-server-application-web/src/main/java/org/xbib/net/http/server/application/web/j2html/InternalServerErrorHandler.java b/net-http-server-application-web/src/main/java/org/xbib/net/http/server/application/web/j2html/InternalServerErrorHandler.java index f86ec20..bd2a0cd 100644 --- a/net-http-server-application-web/src/main/java/org/xbib/net/http/server/application/web/j2html/InternalServerErrorHandler.java +++ b/net-http-server-application-web/src/main/java/org/xbib/net/http/server/application/web/j2html/InternalServerErrorHandler.java @@ -9,11 +9,11 @@ import org.xbib.net.util.ExceptionFormatter; import java.io.IOException; -import static j2html.TagCreator.body; -import static j2html.TagCreator.code; -import static j2html.TagCreator.div; -import static j2html.TagCreator.h1; -import static j2html.TagCreator.pre; +import static org.xbib.j2html.TagCreator.body; +import static org.xbib.j2html.TagCreator.code; +import static org.xbib.j2html.TagCreator.div; +import static org.xbib.j2html.TagCreator.h1; +import static org.xbib.j2html.TagCreator.pre; public class InternalServerErrorHandler extends J2HtmlResourceHandler { diff --git a/net-http-server-netty-secure/build.gradle b/net-http-server-netty-secure/build.gradle index 63d350f..74bd770 100644 --- a/net-http-server-netty-secure/build.gradle +++ b/net-http-server-netty-secure/build.gradle @@ -11,3 +11,14 @@ test { systemProperty 'application.home', 'src/test/resources' systemProperty 'application.profile', 'test' } + +def moduleName = 'org.xbib.net.http.server.netty.secure.test' +def patchArgs = ['--patch-module', "$moduleName=" + files(sourceSets.test.resources.srcDirs).asPath ] + +tasks.named('compileTestJava') { + options.compilerArgs += patchArgs +} + +tasks.named('test') { + jvmArgs += patchArgs +} diff --git a/net-http-server-netty-secure/src/main/java/module-info.java b/net-http-server-netty-secure/src/main/java/module-info.java index bbc795e..f7db8e3 100644 --- a/net-http-server-netty-secure/src/main/java/module-info.java +++ b/net-http-server-netty-secure/src/main/java/module-info.java @@ -1,5 +1,8 @@ +import org.xbib.net.http.server.netty.HttpChannelInitializer; import org.xbib.net.http.server.netty.secure.JdkServerSecureSocketProvider; import org.xbib.net.http.server.netty.secure.ServerSecureSocketProvider; +import org.xbib.net.http.server.netty.secure.http1.Https1ChannelInitializer; +import org.xbib.net.http.server.netty.secure.http2.Https2ChannelInitializer; import org.xbib.net.security.CertificateProvider; module org.xbib.net.http.server.netty.secure { @@ -18,7 +21,9 @@ module org.xbib.net.http.server.netty.secure { requires io.netty.handler; requires io.netty.transport; requires java.logging; - uses CertificateProvider; + uses HttpChannelInitializer; + provides HttpChannelInitializer with Https1ChannelInitializer, Https2ChannelInitializer; uses ServerSecureSocketProvider; provides ServerSecureSocketProvider with JdkServerSecureSocketProvider; + uses CertificateProvider; } diff --git a/net-http-server-netty-secure/src/test/java/module-info.java b/net-http-server-netty-secure/src/test/java/module-info.java new file mode 100644 index 0000000..e3b2673 --- /dev/null +++ b/net-http-server-netty-secure/src/test/java/module-info.java @@ -0,0 +1,25 @@ +import org.xbib.net.http.server.netty.HttpChannelInitializer; +import org.xbib.net.security.CertificateProvider; +import org.xbib.net.http.server.netty.ServerTransportProvider; + +module org.xbib.net.http.server.netty.secure.test { + requires transitive org.junit.jupiter.api; + requires io.netty.transport; + requires io.netty.common; + requires org.xbib.net; + requires org.xbib.net.http; + requires org.xbib.net.http.server; + requires org.xbib.net.http.server.netty; + requires org.xbib.net.http.server.netty.secure; + requires org.xbib.net.http.client; + requires org.xbib.net.http.client.netty; + requires org.xbib.net.http.client.netty.secure; + requires org.xbib.net.security; + requires org.xbib.net.http.netty.boringssl; + requires org.xbib.net.bouncycastle; + exports org.xbib.net.http.server.netty.secure.test; + opens org.xbib.net.http.server.netty.secure.test; + uses HttpChannelInitializer; + uses ServerTransportProvider; + uses CertificateProvider; +} diff --git a/net-http-server-netty/build.gradle b/net-http-server-netty/build.gradle index 9baa493..095e901 100644 --- a/net-http-server-netty/build.gradle +++ b/net-http-server-netty/build.gradle @@ -11,3 +11,14 @@ test { systemProperty 'application.home', 'src/test/resources' systemProperty 'application.profile', 'test' } + +def moduleName = 'org.xbib.net.http.server.netty.test' +def patchArgs = ['--patch-module', "$moduleName=" + files(sourceSets.test.resources.srcDirs).asPath ] + +tasks.named('compileTestJava') { + options.compilerArgs += patchArgs +} + +tasks.named('test') { + jvmArgs += patchArgs +} diff --git a/net-http-server-netty/src/test/java/module-info.java b/net-http-server-netty/src/test/java/module-info.java new file mode 100644 index 0000000..9d405a8 --- /dev/null +++ b/net-http-server-netty/src/test/java/module-info.java @@ -0,0 +1,19 @@ +module org.xbib.net.http.server.netty.test { + requires transitive org.junit.jupiter.api; + requires io.netty.transport; + requires io.netty.common; + requires org.xbib.datastructures.api; + requires org.xbib.datastructures.json.tiny; + requires org.xbib.net; + requires org.xbib.net.http; + requires org.xbib.net.http.server; + requires org.xbib.net.http.server.netty; + requires org.xbib.net.http.client; + requires org.xbib.net.http.client.netty; + exports org.xbib.net.http.server.netty.test; + exports org.xbib.net.http.server.netty.test.pipelining; + exports org.xbib.net.http.server.netty.test.simple; + opens org.xbib.net.http.server.netty.test; + opens org.xbib.net.http.server.netty.test.pipelining; + opens org.xbib.net.http.server.netty.test.simple; +} diff --git a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/HttpRequestTest.java b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/HttpRequestTest.java similarity index 98% rename from net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/HttpRequestTest.java rename to net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/HttpRequestTest.java index a4234d3..89db5fb 100644 --- a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/HttpRequestTest.java +++ b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/HttpRequestTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.test; +package org.xbib.net.http.server.netty.test; import org.junit.jupiter.api.Test; import org.xbib.datastructures.api.Builder; diff --git a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttp2ServerMultiRequestLoadTest.java b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttp2ServerMultiRequestLoadTest.java similarity index 99% rename from net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttp2ServerMultiRequestLoadTest.java rename to net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttp2ServerMultiRequestLoadTest.java index beec381..cf5c263 100644 --- a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttp2ServerMultiRequestLoadTest.java +++ b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttp2ServerMultiRequestLoadTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.test; +package org.xbib.net.http.server.netty.test; import io.netty.bootstrap.Bootstrap; import io.netty.util.ResourceLeakDetector; diff --git a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttp2ServerTest.java b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttp2ServerTest.java similarity index 98% rename from net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttp2ServerTest.java rename to net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttp2ServerTest.java index e200fbc..5b7d046 100644 --- a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttp2ServerTest.java +++ b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttp2ServerTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.test; +package org.xbib.net.http.server.netty.test; import io.netty.bootstrap.Bootstrap; import java.nio.charset.StandardCharsets; diff --git a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerBodyTest.java b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerBodyTest.java similarity index 99% rename from net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerBodyTest.java rename to net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerBodyTest.java index 843854b..2f0ae25 100644 --- a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerBodyTest.java +++ b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerBodyTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.test; +package org.xbib.net.http.server.netty.test; import io.netty.bootstrap.Bootstrap; import java.nio.charset.StandardCharsets; diff --git a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerByteOrderMarkTest.java b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerByteOrderMarkTest.java similarity index 99% rename from net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerByteOrderMarkTest.java rename to net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerByteOrderMarkTest.java index aa69d4b..bfbc725 100644 --- a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerByteOrderMarkTest.java +++ b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerByteOrderMarkTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.test; +package org.xbib.net.http.server.netty.test; import io.netty.bootstrap.Bootstrap; import org.junit.jupiter.api.Test; diff --git a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerFailureTest.java b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerFailureTest.java similarity index 99% rename from net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerFailureTest.java rename to net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerFailureTest.java index eb2a718..1f0af1f 100644 --- a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerFailureTest.java +++ b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerFailureTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.test; +package org.xbib.net.http.server.netty.test; import io.netty.bootstrap.Bootstrap; import java.io.BufferedReader; diff --git a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerFileUploadTest.java b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerFileUploadTest.java similarity index 99% rename from net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerFileUploadTest.java rename to net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerFileUploadTest.java index b0b7434..a2e2d20 100644 --- a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerFileUploadTest.java +++ b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerFileUploadTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.test; +package org.xbib.net.http.server.netty.test; import io.netty.bootstrap.Bootstrap; import java.io.InputStream; diff --git a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerMultiRequestLoadTest.java b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerMultiRequestLoadTest.java similarity index 99% rename from net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerMultiRequestLoadTest.java rename to net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerMultiRequestLoadTest.java index 50210f2..20b861b 100644 --- a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerMultiRequestLoadTest.java +++ b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerMultiRequestLoadTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.test; +package org.xbib.net.http.server.netty.test; import io.netty.bootstrap.Bootstrap; import io.netty.util.ResourceLeakDetector; diff --git a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerRequestTest.java b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerRequestTest.java similarity index 99% rename from net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerRequestTest.java rename to net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerRequestTest.java index 7d6ccee..b2d5f59 100644 --- a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerRequestTest.java +++ b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerRequestTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.test; +package org.xbib.net.http.server.netty.test; import io.netty.bootstrap.Bootstrap; import org.junit.jupiter.api.Test; diff --git a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerTest.java b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerTest.java similarity index 99% rename from net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerTest.java rename to net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerTest.java index f5ca144..f4c8c4b 100644 --- a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/NettyHttpServerTest.java +++ b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/NettyHttpServerTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.test; +package org.xbib.net.http.server.netty.test; import io.netty.bootstrap.Bootstrap; diff --git a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/pipelining/HttpPipeliningHandlerTest.java b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/pipelining/HttpPipeliningHandlerTest.java similarity index 99% rename from net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/pipelining/HttpPipeliningHandlerTest.java rename to net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/pipelining/HttpPipeliningHandlerTest.java index efe11ec..5b558d9 100644 --- a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/pipelining/HttpPipeliningHandlerTest.java +++ b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/pipelining/HttpPipeliningHandlerTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.test.pipelining; +package org.xbib.net.http.server.netty.test.pipelining; import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBufUtil; diff --git a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/simple/SimpleHttp2ClientServerTest.java b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/simple/SimpleHttp2ClientServerTest.java similarity index 99% rename from net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/simple/SimpleHttp2ClientServerTest.java rename to net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/simple/SimpleHttp2ClientServerTest.java index ddd9310..7b5c79a 100644 --- a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/simple/SimpleHttp2ClientServerTest.java +++ b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/simple/SimpleHttp2ClientServerTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.test.simple; +package org.xbib.net.http.server.netty.test.simple; import io.netty.bootstrap.Bootstrap; import io.netty.bootstrap.ServerBootstrap; diff --git a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/simple/SimpleHttpClientServerFailureTest.java b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/simple/SimpleHttpClientServerFailureTest.java similarity index 99% rename from net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/simple/SimpleHttpClientServerFailureTest.java rename to net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/simple/SimpleHttpClientServerFailureTest.java index 14d7ceb..8badc35 100644 --- a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/simple/SimpleHttpClientServerFailureTest.java +++ b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/simple/SimpleHttpClientServerFailureTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.test.simple; +package org.xbib.net.http.server.netty.test.simple; import io.netty.bootstrap.Bootstrap; import io.netty.bootstrap.ServerBootstrap; diff --git a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/simple/SimpleHttpClientServerTest.java b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/simple/SimpleHttpClientServerTest.java similarity index 99% rename from net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/simple/SimpleHttpClientServerTest.java rename to net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/simple/SimpleHttpClientServerTest.java index f9ed680..988cbb4 100644 --- a/net-http-server-netty/src/test/java/org/xbib/net/http/netty/test/simple/SimpleHttpClientServerTest.java +++ b/net-http-server-netty/src/test/java/org/xbib/net/http/server/netty/test/simple/SimpleHttpClientServerTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.netty.test.simple; +package org.xbib.net.http.server.netty.test.simple; import io.netty.bootstrap.Bootstrap; import io.netty.bootstrap.ServerBootstrap; diff --git a/net-http-server-nio/build.gradle b/net-http-server-nio/build.gradle index 44c25d3..cb1b2dc 100644 --- a/net-http-server-nio/build.gradle +++ b/net-http-server-nio/build.gradle @@ -7,3 +7,14 @@ test { systemProperty 'application.home', 'src/test/resources' systemProperty 'application.profile', 'test' } + +def moduleName = 'org.xbib.net.http.server.nio.test' +def patchArgs = ['--patch-module', "$moduleName=" + files(sourceSets.test.resources.srcDirs).asPath ] + +tasks.named('compileTestJava') { + options.compilerArgs += patchArgs +} + +tasks.named('test') { + jvmArgs += patchArgs +} diff --git a/net-http-server-nio/src/test/java/module-info.java b/net-http-server-nio/src/test/java/module-info.java new file mode 100644 index 0000000..61182f8 --- /dev/null +++ b/net-http-server-nio/src/test/java/module-info.java @@ -0,0 +1,9 @@ +module org.xbib.net.http.server.nio.test { + requires transitive org.junit.jupiter.api; + requires org.xbib.net; + requires org.xbib.net.http; + requires org.xbib.net.http.server; + requires org.xbib.net.http.server.nio; + exports org.xbib.net.http.server.nio.test; + opens org.xbib.net.http.server.nio.test; +} diff --git a/net-http-server-nio/src/test/java/org/xbib/net/http/nio/test/ByteArrayTest.java b/net-http-server-nio/src/test/java/org/xbib/net/http/server/nio/test/ByteArrayTest.java similarity index 98% rename from net-http-server-nio/src/test/java/org/xbib/net/http/nio/test/ByteArrayTest.java rename to net-http-server-nio/src/test/java/org/xbib/net/http/server/nio/test/ByteArrayTest.java index 71a6ab6..b8dbcaf 100644 --- a/net-http-server-nio/src/test/java/org/xbib/net/http/nio/test/ByteArrayTest.java +++ b/net-http-server-nio/src/test/java/org/xbib/net/http/server/nio/test/ByteArrayTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.nio.test; +package org.xbib.net.http.server.nio.test; import org.junit.jupiter.api.Test; import org.xbib.net.http.server.nio.demo.ByteArray; diff --git a/net-http-server-nio/src/test/java/org/xbib/net/http/nio/test/HttpRequestParserTest.java b/net-http-server-nio/src/test/java/org/xbib/net/http/server/nio/test/HttpRequestParserTest.java similarity index 98% rename from net-http-server-nio/src/test/java/org/xbib/net/http/nio/test/HttpRequestParserTest.java rename to net-http-server-nio/src/test/java/org/xbib/net/http/server/nio/test/HttpRequestParserTest.java index 2fb18b7..3d88175 100644 --- a/net-http-server-nio/src/test/java/org/xbib/net/http/nio/test/HttpRequestParserTest.java +++ b/net-http-server-nio/src/test/java/org/xbib/net/http/server/nio/test/HttpRequestParserTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.nio.test; +package org.xbib.net.http.server.nio.test; import org.junit.jupiter.api.Test; import org.xbib.net.http.server.nio.demo.HttpHeader; diff --git a/net-http-server-nio/src/test/java/org/xbib/net/http/nio/test/NioHttpServerTest.java b/net-http-server-nio/src/test/java/org/xbib/net/http/server/nio/test/NioHttpServerTest.java similarity index 98% rename from net-http-server-nio/src/test/java/org/xbib/net/http/nio/test/NioHttpServerTest.java rename to net-http-server-nio/src/test/java/org/xbib/net/http/server/nio/test/NioHttpServerTest.java index 5c36eb7..ca29b68 100644 --- a/net-http-server-nio/src/test/java/org/xbib/net/http/nio/test/NioHttpServerTest.java +++ b/net-http-server-nio/src/test/java/org/xbib/net/http/server/nio/test/NioHttpServerTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.nio.test; +package org.xbib.net.http.server.nio.test; import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; diff --git a/net-http-server-simple-secure/build.gradle b/net-http-server-simple-secure/build.gradle index 42ed313..3a09cb9 100644 --- a/net-http-server-simple-secure/build.gradle +++ b/net-http-server-simple-secure/build.gradle @@ -9,3 +9,14 @@ test { systemProperty 'application.home', 'src/test/resources' systemProperty 'application.profile', 'test' } + +def moduleName = 'org.xbib.net.http.server.simple.secure.test' +def patchArgs = ['--patch-module', "$moduleName=" + files(sourceSets.test.resources.srcDirs).asPath ] + +tasks.named('compileTestJava') { + options.compilerArgs += patchArgs +} + +tasks.named('test') { + jvmArgs += patchArgs +} diff --git a/net-http-server-simple-secure/src/main/java/module-info.java b/net-http-server-simple-secure/src/main/java/module-info.java index ad9d9b9..381d090 100644 --- a/net-http-server-simple-secure/src/main/java/module-info.java +++ b/net-http-server-simple-secure/src/main/java/module-info.java @@ -1,4 +1,5 @@ module org.xbib.net.http.server.simple.secure { + exports org.xbib.net.http.server.simple.secure; uses org.xbib.net.security.CertificateProvider; requires org.xbib.net; requires org.xbib.net.http; diff --git a/net-http-server-simple-secure/src/test/java/module-info.java b/net-http-server-simple-secure/src/test/java/module-info.java new file mode 100644 index 0000000..4c263e9 --- /dev/null +++ b/net-http-server-simple-secure/src/test/java/module-info.java @@ -0,0 +1,12 @@ +module org.xbib.net.http.server.simple.secure.test { + requires transitive org.junit.jupiter.api; + requires org.xbib.net; + requires org.xbib.net.http; + requires org.xbib.net.http.server; + requires org.xbib.net.http.server.simple; + requires org.xbib.net.http.server.simple.secure; + requires org.xbib.net.security; + uses org.xbib.net.security.CertificateProvider; + exports org.xbib.net.http.server.simple.secure.test; + opens org.xbib.net.http.server.simple.secure.test; +} diff --git a/net-http-server-simple-secure/src/test/java/org/xbib/net/http/server/simple/secure/SimpleHttpsServerTest.java b/net-http-server-simple-secure/src/test/java/org/xbib/net/http/server/simple/secure/test/SimpleHttpsServerTest.java similarity index 94% rename from net-http-server-simple-secure/src/test/java/org/xbib/net/http/server/simple/secure/SimpleHttpsServerTest.java rename to net-http-server-simple-secure/src/test/java/org/xbib/net/http/server/simple/secure/test/SimpleHttpsServerTest.java index 2d91a0a..50f589f 100644 --- a/net-http-server-simple-secure/src/test/java/org/xbib/net/http/server/simple/secure/SimpleHttpsServerTest.java +++ b/net-http-server-simple-secure/src/test/java/org/xbib/net/http/server/simple/secure/test/SimpleHttpsServerTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.server.simple.secure; +package org.xbib.net.http.server.simple.secure.test; import java.util.logging.Level; import java.util.logging.Logger; @@ -16,6 +16,9 @@ import org.xbib.net.http.server.route.HttpRouter; import org.xbib.net.http.server.service.BaseHttpService; import org.xbib.net.http.server.HttpServerConfig; import org.xbib.net.http.server.simple.SimpleHttpServer; +import org.xbib.net.http.server.simple.secure.HttpsAddress; +import org.xbib.net.http.server.simple.secure.HttpsRequest; +import org.xbib.net.http.server.simple.secure.SimpleHttpsServer; import java.nio.charset.StandardCharsets; diff --git a/net-http-server-simple/build.gradle b/net-http-server-simple/build.gradle index 44c25d3..d25fbeb 100644 --- a/net-http-server-simple/build.gradle +++ b/net-http-server-simple/build.gradle @@ -7,3 +7,14 @@ test { systemProperty 'application.home', 'src/test/resources' systemProperty 'application.profile', 'test' } + +def moduleName = 'org.xbib.net.http.server.simple.test' +def patchArgs = ['--patch-module', "$moduleName=" + files(sourceSets.test.resources.srcDirs).asPath ] + +tasks.named('compileTestJava') { + options.compilerArgs += patchArgs +} + +tasks.named('test') { + jvmArgs += patchArgs +} diff --git a/net-http-server-simple/src/test/java/module-info.java b/net-http-server-simple/src/test/java/module-info.java new file mode 100644 index 0000000..e272895 --- /dev/null +++ b/net-http-server-simple/src/test/java/module-info.java @@ -0,0 +1,9 @@ +module org.xbib.net.http.server.simple.test { + requires transitive org.junit.jupiter.api; + requires org.xbib.net; + requires org.xbib.net.http; + requires org.xbib.net.http.server; + requires org.xbib.net.http.server.simple; + exports org.xbib.net.http.server.simple.test; + opens org.xbib.net.http.server.simple.test; +} diff --git a/net-http-server/build.gradle b/net-http-server/build.gradle index 6e4f54f..2d7c0e4 100644 --- a/net-http-server/build.gradle +++ b/net-http-server/build.gradle @@ -4,3 +4,14 @@ dependencies { implementation libs.datastructures.tiny implementation libs.datastructures.json.tiny } + +def moduleName = 'org.xbib.net.http.server.test' +def patchArgs = ['--patch-module', "$moduleName=" + files(sourceSets.test.resources.srcDirs).asPath ] + +tasks.named('compileTestJava') { + options.compilerArgs += patchArgs +} + +tasks.named('test') { + jvmArgs += patchArgs +} diff --git a/net-http-server/src/test/java/module-info.java b/net-http-server/src/test/java/module-info.java new file mode 100644 index 0000000..688ad57 --- /dev/null +++ b/net-http-server/src/test/java/module-info.java @@ -0,0 +1,12 @@ +module org.xbib.net.http.server.test { + requires transitive org.junit.jupiter.api; + requires org.xbib.net; + requires org.xbib.net.http; + requires org.xbib.net.http.server; + exports org.xbib.net.http.server.test.base; + exports org.xbib.net.http.server.test.ldap; + exports org.xbib.net.http.server.test.session; + opens org.xbib.net.http.server.test.base; + opens org.xbib.net.http.server.test.ldap; + opens org.xbib.net.http.server.test.session; +} diff --git a/net-http-server/src/test/java/org/xbib/net/http/server/route/base/BaseHttpRouteResolverTest.java b/net-http-server/src/test/java/org/xbib/net/http/server/test/base/BaseHttpRouteResolverTest.java similarity index 99% rename from net-http-server/src/test/java/org/xbib/net/http/server/route/base/BaseHttpRouteResolverTest.java rename to net-http-server/src/test/java/org/xbib/net/http/server/test/base/BaseHttpRouteResolverTest.java index 5caacf6..69b2383 100644 --- a/net-http-server/src/test/java/org/xbib/net/http/server/route/base/BaseHttpRouteResolverTest.java +++ b/net-http-server/src/test/java/org/xbib/net/http/server/test/base/BaseHttpRouteResolverTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.server.route.base; +package org.xbib.net.http.server.test.base; import org.junit.jupiter.api.Test; import org.xbib.net.http.HttpAddress; diff --git a/net-http-server/src/test/java/org/xbib/net/http/server/ldap/LdapRealmTest.java b/net-http-server/src/test/java/org/xbib/net/http/server/test/ldap/LdapRealmTest.java similarity index 90% rename from net-http-server/src/test/java/org/xbib/net/http/server/ldap/LdapRealmTest.java rename to net-http-server/src/test/java/org/xbib/net/http/server/test/ldap/LdapRealmTest.java index c5ae046..8ad88b9 100644 --- a/net-http-server/src/test/java/org/xbib/net/http/server/ldap/LdapRealmTest.java +++ b/net-http-server/src/test/java/org/xbib/net/http/server/test/ldap/LdapRealmTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.server.ldap; +package org.xbib.net.http.server.test.ldap; import java.util.Collection; import java.util.HashMap; @@ -10,6 +10,11 @@ import org.xbib.net.Authenticator; import org.xbib.net.GroupsProvider; import org.xbib.net.UsersProvider; import org.xbib.net.UserDetails; +import org.xbib.net.http.server.ldap.LdapContextFactory; +import org.xbib.net.http.server.ldap.LdapGroupMapping; +import org.xbib.net.http.server.ldap.LdapRealm; +import org.xbib.net.http.server.ldap.LdapUserMapping; + import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; diff --git a/net-http-server/src/test/java/org/xbib/net/http/server/ldap/LdapTest.java b/net-http-server/src/test/java/org/xbib/net/http/server/test/ldap/LdapTest.java similarity index 85% rename from net-http-server/src/test/java/org/xbib/net/http/server/ldap/LdapTest.java rename to net-http-server/src/test/java/org/xbib/net/http/server/test/ldap/LdapTest.java index fd05f78..b31b86b 100644 --- a/net-http-server/src/test/java/org/xbib/net/http/server/ldap/LdapTest.java +++ b/net-http-server/src/test/java/org/xbib/net/http/server/test/ldap/LdapTest.java @@ -1,10 +1,14 @@ -package org.xbib.net.http.server.ldap; +package org.xbib.net.http.server.test.ldap; import java.util.HashMap; import java.util.Map; import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; +import org.xbib.net.http.server.ldap.LdapAuthenticator; +import org.xbib.net.http.server.ldap.LdapContextFactory; +import org.xbib.net.http.server.ldap.LdapUserMapping; + import static org.junit.jupiter.api.Assertions.assertTrue; public class LdapTest { diff --git a/net-http-server/src/test/java/org/xbib/net/http/server/session/JsonSessionTest.java b/net-http-server/src/test/java/org/xbib/net/http/server/test/session/JsonSessionTest.java similarity index 93% rename from net-http-server/src/test/java/org/xbib/net/http/server/session/JsonSessionTest.java rename to net-http-server/src/test/java/org/xbib/net/http/server/test/session/JsonSessionTest.java index 2376943..9db0a63 100644 --- a/net-http-server/src/test/java/org/xbib/net/http/server/session/JsonSessionTest.java +++ b/net-http-server/src/test/java/org/xbib/net/http/server/test/session/JsonSessionTest.java @@ -1,4 +1,4 @@ -package org.xbib.net.http.server.session; +package org.xbib.net.http.server.test.session; import java.io.IOException; import java.nio.file.Paths; @@ -8,6 +8,7 @@ import java.util.logging.Level; import java.util.logging.Logger; import org.junit.jupiter.api.Test; import org.xbib.net.http.server.persist.Codec; +import org.xbib.net.http.server.session.Session; import org.xbib.net.http.server.session.file.FileJsonSessionCodec; import org.xbib.net.util.RandomUtil; diff --git a/net-http-template-groovy/build.gradle b/net-http-template-groovy/build.gradle index b54ed76..948b9ba 100644 --- a/net-http-template-groovy/build.gradle +++ b/net-http-template-groovy/build.gradle @@ -2,3 +2,14 @@ dependencies { api project(':net-http-server') api libs.groovy.templates } + +def moduleName = 'org.xbib.net.http.template.groovy.test' +def patchArgs = ['--patch-module', "$moduleName=" + files(sourceSets.test.resources.srcDirs).asPath ] + +tasks.named('compileTestJava') { + options.compilerArgs += patchArgs +} + +tasks.named('test') { + jvmArgs += patchArgs +} diff --git a/net-http/build.gradle b/net-http/build.gradle index e19c4ec..f5a9a5d 100644 --- a/net-http/build.gradle +++ b/net-http/build.gradle @@ -2,3 +2,14 @@ dependencies { api libs.net api libs.net.mime } + +def moduleName = 'org.xbib.net.http.test' +def patchArgs = ['--patch-module', "$moduleName=" + files(sourceSets.test.resources.srcDirs).asPath ] + +tasks.named('compileTestJava') { + options.compilerArgs += patchArgs +} + +tasks.named('test') { + jvmArgs += patchArgs +} diff --git a/net-http/src/test/java/org/xbib/net/http/test/MimeParserTest.java b/net-http/src/test/java/org/xbib/net/http/test/MimeParserTest.java deleted file mode 100644 index 20aabdd..0000000 --- a/net-http/src/test/java/org/xbib/net/http/test/MimeParserTest.java +++ /dev/null @@ -1,11 +0,0 @@ -package org.xbib.net.http.test; - -import org.junit.jupiter.api.Test; - -public class MimeParserTest { - - @Test - public void simpleMimeTest() throws Exception { - - } -} diff --git a/net-http/src/test/resources/hamster.a.templates b/net-http/src/test/resources/org/xbib/net/http/test/hamster.a.templates similarity index 100% rename from net-http/src/test/resources/hamster.a.templates rename to net-http/src/test/resources/org/xbib/net/http/test/hamster.a.templates diff --git a/net-http/src/test/resources/hamster.b.templates b/net-http/src/test/resources/org/xbib/net/http/test/hamster.b.templates similarity index 100% rename from net-http/src/test/resources/hamster.b.templates rename to net-http/src/test/resources/org/xbib/net/http/test/hamster.b.templates diff --git a/net-http/src/test/resources/hamster.c.templates b/net-http/src/test/resources/org/xbib/net/http/test/hamster.c.templates similarity index 100% rename from net-http/src/test/resources/hamster.c.templates rename to net-http/src/test/resources/org/xbib/net/http/test/hamster.c.templates diff --git a/net-http/src/test/resources/whale.a.templates b/net-http/src/test/resources/org/xbib/net/http/test/whale.a.templates similarity index 100% rename from net-http/src/test/resources/whale.a.templates rename to net-http/src/test/resources/org/xbib/net/http/test/whale.a.templates diff --git a/settings.gradle b/settings.gradle index e69f96d..7e384b4 100644 --- a/settings.gradle +++ b/settings.gradle @@ -6,7 +6,7 @@ dependencyResolutionManagement { version('netty', '4.1.107.Final') version('netty-tcnative', '2.0.62.Final') version('datastructures', '5.0.6') - version('net', '4.2.0') + version('net', '4.3.0') library('netty-codec-http2', 'io.netty', 'netty-codec-http2').versionRef('netty') library('netty-handler', 'io.netty', 'netty-handler').versionRef('netty') library('netty-handler-proxy', 'io.netty', 'netty-handler-proxy').versionRef('netty') @@ -17,7 +17,7 @@ dependencyResolutionManagement { library('jackson', 'com.fasterxml.jackson.core', 'jackson-databind').version('2.16.0') library('jna', 'net.java.dev.jna', 'jna').version('5.14.0') library('groovy-templates', 'org.apache.groovy', 'groovy-templates').versionRef('groovy') - library('j2html', 'com.j2html', 'j2html').version('1.6.0') + library('j2html', 'org.xbib', 'j2html').version('1.6.0') library('htmlflow', 'com.github.xmlet', 'htmlflow').version('4.0') library('webjars-bootstrap', 'org.webjars', 'bootstrap').version('5.2.3') library('webjars-jquery', 'org.webjars', 'jquery').version('3.6.4') @@ -64,7 +64,6 @@ include 'net-http-server-nio' include 'net-http-server-simple' include 'net-http-server-simple-secure' include 'net-http-template-groovy' -include 'net-http-htmlflow' include 'net-http-j2html' include 'net-http-server-application-web' include 'net-http-server-application-config'