diff --git a/xio-core/src/main/java/com/xjeffrose/xio/application/ApplicationConfig.java b/xio-core/src/main/java/com/xjeffrose/xio/application/ApplicationConfig.java index b49f3bf1..0f13d160 100644 --- a/xio-core/src/main/java/com/xjeffrose/xio/application/ApplicationConfig.java +++ b/xio-core/src/main/java/com/xjeffrose/xio/application/ApplicationConfig.java @@ -1,5 +1,6 @@ package com.xjeffrose.xio.application; +import com.google.common.annotations.VisibleForTesting; import com.typesafe.config.Config; import com.typesafe.config.ConfigException; import com.typesafe.config.ConfigFactory; @@ -38,7 +39,7 @@ public class ApplicationConfig { private final Map> clientRateLimitOverride = PlatformDependent.newConcurrentHashMap(); - public ApplicationConfig(Config config, XioTracing tracing) { + private ApplicationConfig(Config config, XioTracing tracing) { this.config = config; name = config.getString("name"); bossThreads = config.getInt("settings.bossThreads"); @@ -56,6 +57,7 @@ public ApplicationConfig(Config config, XioTracing tracing) { this.tracing = tracing; } + @VisibleForTesting public ApplicationConfig(Config config, Function tracingSupplier) { this(config, tracingSupplier.apply(config)); } diff --git a/xio-core/src/main/java/com/xjeffrose/xio/server/XioServerState.java b/xio-core/src/main/java/com/xjeffrose/xio/server/XioServerState.java index 0595fac7..df844a4e 100644 --- a/xio-core/src/main/java/com/xjeffrose/xio/server/XioServerState.java +++ b/xio-core/src/main/java/com/xjeffrose/xio/server/XioServerState.java @@ -29,6 +29,10 @@ public XioServerState(XioServerConfig config) { } public ChannelHandler tracingHandler(ApplicationState appState) { - return appState.tracing().newServerHandler(config.isTlsEnabled()); + if (appState.tracing() != null) { + return appState.tracing().newServerHandler(config.isTlsEnabled()); + } else { + return null; + } } }