From 120e7453ed025f168d7ad9c8955838daccd1e95f Mon Sep 17 00:00:00 2001 From: hongqiaowei Date: Tue, 19 Oct 2021 13:38:43 +0800 Subject: [PATCH] Add switch for api pairing web server --- .../FizzApiPairingHttpHandler.java} | 10 +++++----- .../FizzApiPairingWebServer.java} | 18 +++++++++++------- .../main/resources/META-INF/spring.factories | 3 ++- 3 files changed, 18 insertions(+), 13 deletions(-) rename fizz-core/src/main/java/we/api/{match/FizzApiMatchHttpHandler.java => pairing/FizzApiPairingHttpHandler.java} (94%) rename fizz-core/src/main/java/we/api/{match/FizzApiMatchWebServer.java => pairing/FizzApiPairingWebServer.java} (80%) diff --git a/fizz-core/src/main/java/we/api/match/FizzApiMatchHttpHandler.java b/fizz-core/src/main/java/we/api/pairing/FizzApiPairingHttpHandler.java similarity index 94% rename from fizz-core/src/main/java/we/api/match/FizzApiMatchHttpHandler.java rename to fizz-core/src/main/java/we/api/pairing/FizzApiPairingHttpHandler.java index 160b4c6..9281373 100644 --- a/fizz-core/src/main/java/we/api/match/FizzApiMatchHttpHandler.java +++ b/fizz-core/src/main/java/we/api/pairing/FizzApiPairingHttpHandler.java @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package we.api.match; +package we.api.pairing; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -48,11 +48,11 @@ import java.util.Set; * @author hongqiaowei */ -public class FizzApiMatchHttpHandler implements HttpHandler { +public class FizzApiPairingHttpHandler implements HttpHandler { private static final String disconnected_client_log_category = "DisconnectedClient"; - private static final Logger log = LoggerFactory.getLogger(FizzApiMatchHttpHandler.class); + private static final Logger log = LoggerFactory.getLogger(FizzApiPairingHttpHandler.class); private static final Logger lostClientLog = LoggerFactory.getLogger(disconnected_client_log_category); @@ -64,8 +64,8 @@ public class FizzApiMatchHttpHandler implements HttpHandler { private ForwardedHeaderTransformer forwardedHeaderTransformer; private boolean enableLoggingRequestDetails = false; - public FizzApiMatchHttpHandler(WebSessionManager sessionManager, ServerCodecConfigurer codecConfigurer, - LocaleContextResolver localeContextResolver, ForwardedHeaderTransformer forwardedHeaderTransformer) { + public FizzApiPairingHttpHandler(WebSessionManager sessionManager, ServerCodecConfigurer codecConfigurer, + LocaleContextResolver localeContextResolver, ForwardedHeaderTransformer forwardedHeaderTransformer) { this.sessionManager = sessionManager; this.serverCodecConfigurer = codecConfigurer; this.localeContextResolver = localeContextResolver; diff --git a/fizz-core/src/main/java/we/api/match/FizzApiMatchWebServer.java b/fizz-core/src/main/java/we/api/pairing/FizzApiPairingWebServer.java similarity index 80% rename from fizz-core/src/main/java/we/api/match/FizzApiMatchWebServer.java rename to fizz-core/src/main/java/we/api/pairing/FizzApiPairingWebServer.java index e3bda8f..9bba2a9 100644 --- a/fizz-core/src/main/java/we/api/match/FizzApiMatchWebServer.java +++ b/fizz-core/src/main/java/we/api/pairing/FizzApiPairingWebServer.java @@ -15,11 +15,13 @@ * along with this program. If not, see . */ -package we.api.match; +package we.api.pairing; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.AutoConfigureAfter; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.boot.autoconfigure.web.reactive.HttpHandlerAutoConfiguration; import org.springframework.boot.web.embedded.netty.NettyReactiveWebServerFactory; import org.springframework.boot.web.server.WebServer; @@ -36,17 +38,19 @@ import javax.annotation.Resource; * @author hongqiaowei */ -//@Configuration -//@AutoConfigureAfter({HttpHandlerAutoConfiguration.class}) -public class FizzApiMatchWebServer { +@ConditionalOnProperty(name = "fizz.api.pairing.enable", havingValue = "true") +@Configuration +@AutoConfigureAfter({HttpHandlerAutoConfiguration.class}) +public class FizzApiPairingWebServer { - private static final Logger log = LoggerFactory.getLogger(FizzApiMatchWebServer.class); + private static final Logger log = LoggerFactory.getLogger(FizzApiPairingWebServer.class); @Resource private HttpHandler httpHandler; private WebServer server; + @Value("${fizz.api.pairing.web-server.port:8601}") private int port = 8601; @PostConstruct @@ -54,7 +58,7 @@ public class FizzApiMatchWebServer { HttpWebHandlerAdapter adapter = (HttpWebHandlerAdapter) httpHandler; NettyReactiveWebServerFactory factory = new NettyReactiveWebServerFactory(port); server = factory.getWebServer( - new FizzApiMatchHttpHandler( + new FizzApiPairingHttpHandler( new DefaultWebSessionManager(), adapter.getCodecConfigurer(), adapter.getLocaleContextResolver(), @@ -62,7 +66,7 @@ public class FizzApiMatchWebServer { ) ); server.start(); - log.info("fizz api match web server listen on {}", port); + log.info("fizz api pairing web server listen on {}", port); } @PreDestroy diff --git a/fizz-spring-boot-starter/src/main/resources/META-INF/spring.factories b/fizz-spring-boot-starter/src/main/resources/META-INF/spring.factories index 9ee2176..ee8ee28 100644 --- a/fizz-spring-boot-starter/src/main/resources/META-INF/spring.factories +++ b/fizz-spring-boot-starter/src/main/resources/META-INF/spring.factories @@ -45,4 +45,5 @@ we.proxy.FizzWebClient,\ we.proxy.NacosUriSelector,\ we.proxy.RpcInstanceServiceImpl,\ we.stats.ratelimit.ResourceRateLimitConfigService,\ -we.global_resource.GlobalResourceService +we.global_resource.GlobalResourceService,\ +we.api.pairing.FizzApiPairingWebServer