From 8f02c03d424c4f45299c937f1cb6b552722b42d5 Mon Sep 17 00:00:00 2001 From: wujiawei <12345678> Date: Sat, 5 Apr 2025 18:01:23 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90fix=E3=80=91=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E7=AB=AF=E3=80=81=E5=AE=A2=E6=88=B7=E7=AB=AF?= =?UTF-8?q?=E8=B7=AF=E7=94=B1=E7=AE=A1=E7=90=86=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...tpClientProxyClientProxyTypeAdvanced.java} | 4 +- ...olHandleChannelLocalProxyTypeAdvanced.java | 4 +- .../LazyNettyClientRouteApplication.java | 109 ++++++++++++ .../LazyNettyServerRouteApplication.java | 109 ++++++++++++ .../LazyNettyClientRouteDTOAssembler.java | 93 ++++++++++ .../LazyNettyServerRouteDTOAssembler.java | 93 ++++++++++ .../LazyNettyClientRouteQueryListCommand.java | 79 +++++++++ .../LazyNettyClientRouteQueryOneCommand.java | 79 +++++++++ .../LazyNettyClientRouteRemoveCommand.java | 79 +++++++++ .../LazyNettyClientRouteStoryCommand.java | 73 ++++++++ .../LazyNettyClientRouteUpdateCommand.java | 79 +++++++++ .../LazyNettyServerRouteQueryListCommand.java | 72 ++++++++ .../LazyNettyServerRouteQueryOneCommand.java | 72 ++++++++ .../LazyNettyServerRouteRemoveCommand.java | 72 ++++++++ .../LazyNettyServerRouteStoryCommand.java | 66 ++++++++ .../LazyNettyServerRouteUpdateCommand.java | 72 ++++++++ .../dto/LazyNettyClientRouteDTO.java | 79 +++++++++ .../dto/LazyNettyServerRouteDTO.java | 72 ++++++++ .../LazyNettyClientRouteApplicationImpl.java | 144 ++++++++++++++++ .../LazyNettyServerRouteApplicationImpl.java | 144 ++++++++++++++++ .../LazyNettyClientRouteProvider.java | 142 ++++++++++++++++ .../LazyNettyServerRouteProvider.java | 142 ++++++++++++++++ .../client/route/LazyNettyClientRoute.java | 79 +++++++++ .../route/LazyNettyClientRouteRepository.java | 106 ++++++++++++ .../server/route/LazyNettyServerRoute.java | 72 ++++++++ .../route/LazyNettyServerRouteRepository.java | 106 ++++++++++++ .../handler/NettyHttpProxyHandler.java | 12 +- .../LazyNettyClientRouteConverter.java | 48 ++++++ .../LazyNettyServerRouteConverter.java | 48 ++++++ .../entity/LazyNettyClientRouteDO.java | 96 +++++++++++ .../entity/LazyNettyServerRouteDO.java | 88 ++++++++++ ...LazyNettyClientRouteLazyJpaRepository.java | 18 ++ ...LazyNettyServerRouteLazyJpaRepository.java | 18 ++ .../mapper/LazyNettyClientRouteMapper.java | 15 ++ .../mapper/LazyNettyServerRouteMapper.java | 15 ++ .../LazyNettyClientRouteRepositoryImpl.java | 160 ++++++++++++++++++ .../LazyNettyServerRouteRepositoryImpl.java | 160 ++++++++++++++++++ .../xml/LazyNettyClientRouteMapper.xml | 16 ++ .../xml/LazyNettyServerRouteMapper.xml | 15 ++ .../heartbeat/protocol/route/RouteType.java | 4 +- 40 files changed, 2946 insertions(+), 8 deletions(-) rename wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/advanced/{HttpProtocolHandleChannelRemoteProxyTypeAdvanced.java => HttpClientProxyClientProxyTypeAdvanced.java} (92%) create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/LazyNettyClientRouteApplication.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/LazyNettyServerRouteApplication.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/assembler/LazyNettyClientRouteDTOAssembler.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/assembler/LazyNettyServerRouteDTOAssembler.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteQueryListCommand.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteQueryOneCommand.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteRemoveCommand.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteStoryCommand.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteUpdateCommand.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteQueryListCommand.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteQueryOneCommand.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteRemoveCommand.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteStoryCommand.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteUpdateCommand.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/dto/LazyNettyClientRouteDTO.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/dto/LazyNettyServerRouteDTO.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/impl/LazyNettyClientRouteApplicationImpl.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/impl/LazyNettyServerRouteApplicationImpl.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/controller/LazyNettyClientRouteProvider.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/controller/LazyNettyServerRouteProvider.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/domain/model/lazy/netty/client/route/LazyNettyClientRoute.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/domain/model/lazy/netty/client/route/LazyNettyClientRouteRepository.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/domain/model/lazy/netty/server/route/LazyNettyServerRoute.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/domain/model/lazy/netty/server/route/LazyNettyServerRouteRepository.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/converter/LazyNettyClientRouteConverter.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/converter/LazyNettyServerRouteConverter.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/entity/LazyNettyClientRouteDO.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/entity/LazyNettyServerRouteDO.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/jpa/lazy/LazyNettyClientRouteLazyJpaRepository.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/jpa/lazy/LazyNettyServerRouteLazyJpaRepository.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/mapper/LazyNettyClientRouteMapper.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/mapper/LazyNettyServerRouteMapper.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/persistence/LazyNettyClientRouteRepositoryImpl.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/persistence/LazyNettyServerRouteRepositoryImpl.java create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/xml/LazyNettyClientRouteMapper.xml create mode 100644 wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/xml/LazyNettyServerRouteMapper.xml diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/advanced/HttpProtocolHandleChannelRemoteProxyTypeAdvanced.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/advanced/HttpClientProxyClientProxyTypeAdvanced.java similarity index 92% rename from wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/advanced/HttpProtocolHandleChannelRemoteProxyTypeAdvanced.java rename to wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/advanced/HttpClientProxyClientProxyTypeAdvanced.java index ae34864..05fce5f 100644 --- a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/advanced/HttpProtocolHandleChannelRemoteProxyTypeAdvanced.java +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/advanced/HttpClientProxyClientProxyTypeAdvanced.java @@ -9,7 +9,7 @@ import io.netty.channel.ChannelInitializer; import io.netty.channel.socket.SocketChannel; import io.netty.channel.socket.nio.NioSocketChannel; import org.framework.lazy.cloud.network.heartbeat.common.NettyProxyMsg; -import org.framework.lazy.cloud.network.heartbeat.common.advanced.protocol.http.AbstractHttpProtocolHandleChannelRemoteProxyTypeAdvanced; +import org.framework.lazy.cloud.network.heartbeat.common.advanced.proxy.http.AbstractHttpClientProxyClientTypeAdvanced; import org.framework.lazy.cloud.network.heartbeat.common.decoder.TransferDecoder; import org.framework.lazy.cloud.network.heartbeat.common.encoder.TransferEncoder; import org.framework.lazy.cloud.network.heartbeat.common.utils.ChannelAttributeKeyUtils; @@ -20,7 +20,7 @@ import org.framework.lazy.cloud.network.heartbeat.protocol.handler.NettyHttpProx * 客户端:客户端远程到服务端、客户端远程到客户端 * 服务端:服务端远程到客户端 */ -public class HttpProtocolHandleChannelRemoteProxyTypeAdvanced extends AbstractHttpProtocolHandleChannelRemoteProxyTypeAdvanced { +public class HttpClientProxyClientProxyTypeAdvanced extends AbstractHttpClientProxyClientTypeAdvanced { /** diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/advanced/HttpProtocolHandleChannelLocalProxyTypeAdvanced.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/advanced/HttpProtocolHandleChannelLocalProxyTypeAdvanced.java index d824e73..d889479 100644 --- a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/advanced/HttpProtocolHandleChannelLocalProxyTypeAdvanced.java +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/advanced/HttpProtocolHandleChannelLocalProxyTypeAdvanced.java @@ -9,7 +9,7 @@ import io.netty.channel.ChannelInitializer; import io.netty.channel.socket.SocketChannel; import io.netty.channel.socket.nio.NioSocketChannel; import org.framework.lazy.cloud.network.heartbeat.common.NettyProxyMsg; -import org.framework.lazy.cloud.network.heartbeat.common.advanced.protocol.http.AbstractHttpProtocolHandleChannelLocalProxyTypeAdvanced; +import org.framework.lazy.cloud.network.heartbeat.common.advanced.proxy.http.AbstractHttpLocalProxyTypeAdvanced; import org.framework.lazy.cloud.network.heartbeat.common.decoder.TransferDecoder; import org.framework.lazy.cloud.network.heartbeat.common.encoder.TransferEncoder; import org.framework.lazy.cloud.network.heartbeat.common.utils.ChannelAttributeKeyUtils; @@ -20,7 +20,7 @@ import org.springframework.stereotype.Component; * http 本地代理 */ @Component -public class HttpProtocolHandleChannelLocalProxyTypeAdvanced extends AbstractHttpProtocolHandleChannelLocalProxyTypeAdvanced { +public class HttpProtocolHandleChannelLocalProxyTypeAdvanced extends AbstractHttpLocalProxyTypeAdvanced { /** diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/LazyNettyClientRouteApplication.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/LazyNettyClientRouteApplication.java new file mode 100644 index 0000000..53e2a3e --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/LazyNettyClientRouteApplication.java @@ -0,0 +1,109 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.application; + +import org.wu.framework.web.response.Result; +import org.wu.framework.web.response.ResultFactory; +import org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.client.route.LazyNettyClientRoute; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteRemoveCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteStoryCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteUpdateCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteQueryListCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteQueryOneCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.dto.LazyNettyClientRouteDTO; +import java.util.List; +import org.wu.framework.lazy.orm.database.lambda.domain.LazyPage; +/** + * describe 客户端代理路由规则 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyApplication + **/ + +public interface LazyNettyClientRouteApplication { + + + /** + * describe 新增客户端代理路由规则 + * + * @param lazyNettyClientRouteStoryCommand 新增客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则新增后领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result story(LazyNettyClientRouteStoryCommand lazyNettyClientRouteStoryCommand); + + /** + * describe 批量新增客户端代理路由规则 + * + * @param lazyNettyClientRouteStoryCommandList 批量新增客户端代理路由规则 + * @return {@link Result>} 客户端代理路由规则新增后领域对象集合 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result> batchStory(List lazyNettyClientRouteStoryCommandList); + + /** + * describe 更新客户端代理路由规则 + * + * @param lazyNettyClientRouteUpdateCommand 更新客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result updateOne(LazyNettyClientRouteUpdateCommand lazyNettyClientRouteUpdateCommand); + + /** + * describe 查询单个客户端代理路由规则 + * + * @param lazyNettyClientRouteQueryOneCommand 查询单个客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result findOne(LazyNettyClientRouteQueryOneCommand lazyNettyClientRouteQueryOneCommand); + + /** + * describe 查询多个客户端代理路由规则 + * + * @param lazyNettyClientRouteQueryListCommand 查询多个客户端代理路由规则 + * @return {@link Result >} 客户端代理路由规则DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result > findList(LazyNettyClientRouteQueryListCommand lazyNettyClientRouteQueryListCommand); + + /** + * describe 分页查询多个客户端代理路由规则 + * + * @param lazyNettyClientRouteQueryListCommand 分页查询多个客户端代理路由规则 + * @return {@link Result >} 分页客户端代理路由规则DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result > findPage(int size,int current,LazyNettyClientRouteQueryListCommand lazyNettyClientRouteQueryListCommand); + + /** + * describe 删除客户端代理路由规则 + * + * @param lazyNettyClientRouteRemoveCommand 删除客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result remove(LazyNettyClientRouteRemoveCommand lazyNettyClientRouteRemoveCommand); + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/LazyNettyServerRouteApplication.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/LazyNettyServerRouteApplication.java new file mode 100644 index 0000000..2010004 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/LazyNettyServerRouteApplication.java @@ -0,0 +1,109 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.application; + +import org.wu.framework.web.response.Result; +import org.wu.framework.web.response.ResultFactory; +import org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.server.route.LazyNettyServerRoute; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteRemoveCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteStoryCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteUpdateCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteQueryListCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteQueryOneCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.dto.LazyNettyServerRouteDTO; +import java.util.List; +import org.wu.framework.lazy.orm.database.lambda.domain.LazyPage; +/** + * describe 服务端路由 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyApplication + **/ + +public interface LazyNettyServerRouteApplication { + + + /** + * describe 新增服务端路由 + * + * @param lazyNettyServerRouteStoryCommand 新增服务端路由 + * @return {@link Result} 服务端路由新增后领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result story(LazyNettyServerRouteStoryCommand lazyNettyServerRouteStoryCommand); + + /** + * describe 批量新增服务端路由 + * + * @param lazyNettyServerRouteStoryCommandList 批量新增服务端路由 + * @return {@link Result>} 服务端路由新增后领域对象集合 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result> batchStory(List lazyNettyServerRouteStoryCommandList); + + /** + * describe 更新服务端路由 + * + * @param lazyNettyServerRouteUpdateCommand 更新服务端路由 + * @return {@link Result} 服务端路由领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result updateOne(LazyNettyServerRouteUpdateCommand lazyNettyServerRouteUpdateCommand); + + /** + * describe 查询单个服务端路由 + * + * @param lazyNettyServerRouteQueryOneCommand 查询单个服务端路由 + * @return {@link Result} 服务端路由DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result findOne(LazyNettyServerRouteQueryOneCommand lazyNettyServerRouteQueryOneCommand); + + /** + * describe 查询多个服务端路由 + * + * @param lazyNettyServerRouteQueryListCommand 查询多个服务端路由 + * @return {@link Result >} 服务端路由DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result > findList(LazyNettyServerRouteQueryListCommand lazyNettyServerRouteQueryListCommand); + + /** + * describe 分页查询多个服务端路由 + * + * @param lazyNettyServerRouteQueryListCommand 分页查询多个服务端路由 + * @return {@link Result >} 分页服务端路由DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result > findPage(int size,int current,LazyNettyServerRouteQueryListCommand lazyNettyServerRouteQueryListCommand); + + /** + * describe 删除服务端路由 + * + * @param lazyNettyServerRouteRemoveCommand 删除服务端路由 + * @return {@link Result} 服务端路由 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result remove(LazyNettyServerRouteRemoveCommand lazyNettyServerRouteRemoveCommand); + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/assembler/LazyNettyClientRouteDTOAssembler.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/assembler/LazyNettyClientRouteDTOAssembler.java new file mode 100644 index 0000000..568cc02 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/assembler/LazyNettyClientRouteDTOAssembler.java @@ -0,0 +1,93 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.application.assembler; + +import org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.client.route.LazyNettyClientRoute; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteRemoveCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteStoryCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteUpdateCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteQueryListCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteQueryOneCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.dto.LazyNettyClientRouteDTO; +import org.mapstruct.factory.Mappers; +import org.mapstruct.Mapper; +/** + * describe 客户端代理路由规则 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyAssembler + **/ +@Mapper +public interface LazyNettyClientRouteDTOAssembler { + + + /** + * describe MapStruct 创建的代理对象 + * + + + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyClientRouteDTOAssembler INSTANCE = Mappers.getMapper(LazyNettyClientRouteDTOAssembler.class); + /** + * describe 应用层存储入参转换成 领域对象 + * + * @param lazyNettyClientRouteStoryCommand 保存客户端代理路由规则对象 + * @return {@link LazyNettyClientRoute} 客户端代理路由规则领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyClientRoute toLazyNettyClientRoute(LazyNettyClientRouteStoryCommand lazyNettyClientRouteStoryCommand); + /** + * describe 应用层更新入参转换成 领域对象 + * + * @param lazyNettyClientRouteUpdateCommand 更新客户端代理路由规则对象 + * @return {@link LazyNettyClientRoute} 客户端代理路由规则领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyClientRoute toLazyNettyClientRoute(LazyNettyClientRouteUpdateCommand lazyNettyClientRouteUpdateCommand); + /** + * describe 应用层查询入参转换成 领域对象 + * + * @param lazyNettyClientRouteQueryOneCommand 查询单个客户端代理路由规则对象参数 + * @return {@link LazyNettyClientRoute} 客户端代理路由规则领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyClientRoute toLazyNettyClientRoute(LazyNettyClientRouteQueryOneCommand lazyNettyClientRouteQueryOneCommand); + /** + * describe 应用层查询入参转换成 领域对象 + * + * @param lazyNettyClientRouteQueryListCommand 查询集合客户端代理路由规则对象参数 + * @return {@link LazyNettyClientRoute} 客户端代理路由规则领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyClientRoute toLazyNettyClientRoute(LazyNettyClientRouteQueryListCommand lazyNettyClientRouteQueryListCommand); + /** + * describe 应用层删除入参转换成 领域对象 + * + * @param lazyNettyClientRouteRemoveCommand 删除客户端代理路由规则对象参数 + * @return {@link LazyNettyClientRoute} 客户端代理路由规则领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyClientRoute toLazyNettyClientRoute(LazyNettyClientRouteRemoveCommand lazyNettyClientRouteRemoveCommand); + /** + * describe 持久层领域对象转换成DTO对象 + * + * @param lazyNettyClientRoute 客户端代理路由规则领域对象 + * @return {@link LazyNettyClientRouteDTO} 客户端代理路由规则DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyClientRouteDTO fromLazyNettyClientRoute(LazyNettyClientRoute lazyNettyClientRoute); +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/assembler/LazyNettyServerRouteDTOAssembler.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/assembler/LazyNettyServerRouteDTOAssembler.java new file mode 100644 index 0000000..388de4e --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/assembler/LazyNettyServerRouteDTOAssembler.java @@ -0,0 +1,93 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.application.assembler; + +import org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.server.route.LazyNettyServerRoute; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteRemoveCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteStoryCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteUpdateCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteQueryListCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteQueryOneCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.dto.LazyNettyServerRouteDTO; +import org.mapstruct.factory.Mappers; +import org.mapstruct.Mapper; +/** + * describe 服务端路由 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyAssembler + **/ +@Mapper +public interface LazyNettyServerRouteDTOAssembler { + + + /** + * describe MapStruct 创建的代理对象 + * + + + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyServerRouteDTOAssembler INSTANCE = Mappers.getMapper(LazyNettyServerRouteDTOAssembler.class); + /** + * describe 应用层存储入参转换成 领域对象 + * + * @param lazyNettyServerRouteStoryCommand 保存服务端路由对象 + * @return {@link LazyNettyServerRoute} 服务端路由领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyServerRoute toLazyNettyServerRoute(LazyNettyServerRouteStoryCommand lazyNettyServerRouteStoryCommand); + /** + * describe 应用层更新入参转换成 领域对象 + * + * @param lazyNettyServerRouteUpdateCommand 更新服务端路由对象 + * @return {@link LazyNettyServerRoute} 服务端路由领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyServerRoute toLazyNettyServerRoute(LazyNettyServerRouteUpdateCommand lazyNettyServerRouteUpdateCommand); + /** + * describe 应用层查询入参转换成 领域对象 + * + * @param lazyNettyServerRouteQueryOneCommand 查询单个服务端路由对象参数 + * @return {@link LazyNettyServerRoute} 服务端路由领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyServerRoute toLazyNettyServerRoute(LazyNettyServerRouteQueryOneCommand lazyNettyServerRouteQueryOneCommand); + /** + * describe 应用层查询入参转换成 领域对象 + * + * @param lazyNettyServerRouteQueryListCommand 查询集合服务端路由对象参数 + * @return {@link LazyNettyServerRoute} 服务端路由领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyServerRoute toLazyNettyServerRoute(LazyNettyServerRouteQueryListCommand lazyNettyServerRouteQueryListCommand); + /** + * describe 应用层删除入参转换成 领域对象 + * + * @param lazyNettyServerRouteRemoveCommand 删除服务端路由对象参数 + * @return {@link LazyNettyServerRoute} 服务端路由领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyServerRoute toLazyNettyServerRoute(LazyNettyServerRouteRemoveCommand lazyNettyServerRouteRemoveCommand); + /** + * describe 持久层领域对象转换成DTO对象 + * + * @param lazyNettyServerRoute 服务端路由领域对象 + * @return {@link LazyNettyServerRouteDTO} 服务端路由DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyServerRouteDTO fromLazyNettyServerRoute(LazyNettyServerRoute lazyNettyServerRoute); +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteQueryListCommand.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteQueryListCommand.java new file mode 100644 index 0000000..900184a --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteQueryListCommand.java @@ -0,0 +1,79 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route; + +import lombok.Data; +import lombok.experimental.Accessors; +import io.swagger.v3.oas.annotations.media.Schema; +import java.lang.String; +import java.time.LocalDateTime; +import java.lang.Long; +import java.lang.Boolean; +/** + * describe 客户端代理路由规则 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyQueryListCommand + **/ +@Data +@Accessors(chain = true) +@Schema(title = "lazy_netty_client_route_query_List_command",description = "客户端代理路由规则") +public class LazyNettyClientRouteQueryListCommand { + + + /** + * + * 客户端ID + */ + @Schema(description ="客户端ID",name ="clientId",example = "") + private String clientId; + + /** + * + * 创建时间 + */ + @Schema(description ="创建时间",name ="createTime",example = "") + private LocalDateTime createTime; + + /** + * + * 规则描述 + */ + @Schema(description ="规则描述",name ="describe",example = "") + private String describe; + + /** + * + * 主键ID + */ + @Schema(description ="主键ID",name ="id",example = "") + private Long id; + + /** + * + * 是否删除 + */ + @Schema(description ="是否删除",name ="isDeleted",example = "") + private Boolean isDeleted; + + /** + * + * 路由IP + */ + @Schema(description ="路由IP",name ="routeIp",example = "") + private String routeIp; + + /** + * + * 路由端口:默认ALL + */ + @Schema(description ="路由端口:默认ALL",name ="routePort",example = "") + private String routePort; + + /** + * + * 更新时间 + */ + @Schema(description ="更新时间",name ="updateTime",example = "") + private LocalDateTime updateTime; + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteQueryOneCommand.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteQueryOneCommand.java new file mode 100644 index 0000000..6fc7d9d --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteQueryOneCommand.java @@ -0,0 +1,79 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route; + +import lombok.Data; +import lombok.experimental.Accessors; +import io.swagger.v3.oas.annotations.media.Schema; +import java.lang.String; +import java.time.LocalDateTime; +import java.lang.Long; +import java.lang.Boolean; +/** + * describe 客户端代理路由规则 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyQueryOneCommand + **/ +@Data +@Accessors(chain = true) +@Schema(title = "lazy_netty_client_route_query_one_command",description = "客户端代理路由规则") +public class LazyNettyClientRouteQueryOneCommand { + + + /** + * + * 客户端ID + */ + @Schema(description ="客户端ID",name ="clientId",example = "") + private String clientId; + + /** + * + * 创建时间 + */ + @Schema(description ="创建时间",name ="createTime",example = "") + private LocalDateTime createTime; + + /** + * + * 规则描述 + */ + @Schema(description ="规则描述",name ="describe",example = "") + private String describe; + + /** + * + * 主键ID + */ + @Schema(description ="主键ID",name ="id",example = "") + private Long id; + + /** + * + * 是否删除 + */ + @Schema(description ="是否删除",name ="isDeleted",example = "") + private Boolean isDeleted; + + /** + * + * 路由IP + */ + @Schema(description ="路由IP",name ="routeIp",example = "") + private String routeIp; + + /** + * + * 路由端口:默认ALL + */ + @Schema(description ="路由端口:默认ALL",name ="routePort",example = "") + private String routePort; + + /** + * + * 更新时间 + */ + @Schema(description ="更新时间",name ="updateTime",example = "") + private LocalDateTime updateTime; + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteRemoveCommand.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteRemoveCommand.java new file mode 100644 index 0000000..9133d19 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteRemoveCommand.java @@ -0,0 +1,79 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route; + +import lombok.Data; +import lombok.experimental.Accessors; +import io.swagger.v3.oas.annotations.media.Schema; +import java.lang.String; +import java.time.LocalDateTime; +import java.lang.Long; +import java.lang.Boolean; +/** + * describe 客户端代理路由规则 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyRemoveCommand + **/ +@Data +@Accessors(chain = true) +@Schema(title = "lazy_netty_client_route_remove_command",description = "客户端代理路由规则") +public class LazyNettyClientRouteRemoveCommand { + + + /** + * + * 客户端ID + */ + @Schema(description ="客户端ID",name ="clientId",example = "") + private String clientId; + + /** + * + * 创建时间 + */ + @Schema(description ="创建时间",name ="createTime",example = "") + private LocalDateTime createTime; + + /** + * + * 规则描述 + */ + @Schema(description ="规则描述",name ="describe",example = "") + private String describe; + + /** + * + * 主键ID + */ + @Schema(description ="主键ID",name ="id",example = "") + private Long id; + + /** + * + * 是否删除 + */ + @Schema(description ="是否删除",name ="isDeleted",example = "") + private Boolean isDeleted; + + /** + * + * 路由IP + */ + @Schema(description ="路由IP",name ="routeIp",example = "") + private String routeIp; + + /** + * + * 路由端口:默认ALL + */ + @Schema(description ="路由端口:默认ALL",name ="routePort",example = "") + private String routePort; + + /** + * + * 更新时间 + */ + @Schema(description ="更新时间",name ="updateTime",example = "") + private LocalDateTime updateTime; + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteStoryCommand.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteStoryCommand.java new file mode 100644 index 0000000..fa70be3 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteStoryCommand.java @@ -0,0 +1,73 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route; + +import lombok.Data; +import lombok.experimental.Accessors; +import io.swagger.v3.oas.annotations.media.Schema; +import java.lang.String; +import java.time.LocalDateTime; +import java.lang.Long; +import java.lang.Boolean; +/** + * describe 客户端代理路由规则 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyStoryCommand + **/ +@Data +@Accessors(chain = true) +@Schema(title = "lazy_netty_client_route_story_command",description = "客户端代理路由规则") +public class LazyNettyClientRouteStoryCommand { + + + /** + * + * 客户端ID + */ + @Schema(description ="客户端ID",name ="clientId",example = "") + private String clientId; + + /** + * + * 创建时间 + */ + @Schema(description ="创建时间",name ="createTime",example = "") + private LocalDateTime createTime; + + /** + * + * 规则描述 + */ + @Schema(description ="规则描述",name ="describe",example = "") + private String describe; + + /** + * + * 主键ID + */ + @Schema(description ="主键ID",name ="id",example = "") + private Long id; + + + /** + * + * 路由IP + */ + @Schema(description ="路由IP",name ="routeIp",example = "") + private String routeIp; + + /** + * + * 路由端口:默认ALL + */ + @Schema(description ="路由端口:默认ALL",name ="routePort",example = "") + private String routePort; + + /** + * + * 更新时间 + */ + @Schema(description ="更新时间",name ="updateTime",example = "") + private LocalDateTime updateTime; + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteUpdateCommand.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteUpdateCommand.java new file mode 100644 index 0000000..99a8867 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/client/route/LazyNettyClientRouteUpdateCommand.java @@ -0,0 +1,79 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route; + +import lombok.Data; +import lombok.experimental.Accessors; +import io.swagger.v3.oas.annotations.media.Schema; +import java.lang.String; +import java.time.LocalDateTime; +import java.lang.Long; +import java.lang.Boolean; +/** + * describe 客户端代理路由规则 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyUpdateCommand + **/ +@Data +@Accessors(chain = true) +@Schema(title = "lazy_netty_client_route_update_command",description = "客户端代理路由规则") +public class LazyNettyClientRouteUpdateCommand { + + + /** + * + * 客户端ID + */ + @Schema(description ="客户端ID",name ="clientId",example = "") + private String clientId; + + /** + * + * 创建时间 + */ + @Schema(description ="创建时间",name ="createTime",example = "") + private LocalDateTime createTime; + + /** + * + * 规则描述 + */ + @Schema(description ="规则描述",name ="describe",example = "") + private String describe; + + /** + * + * 主键ID + */ + @Schema(description ="主键ID",name ="id",example = "") + private Long id; + + /** + * + * 是否删除 + */ + @Schema(description ="是否删除",name ="isDeleted",example = "") + private Boolean isDeleted; + + /** + * + * 路由IP + */ + @Schema(description ="路由IP",name ="routeIp",example = "") + private String routeIp; + + /** + * + * 路由端口:默认ALL + */ + @Schema(description ="路由端口:默认ALL",name ="routePort",example = "") + private String routePort; + + /** + * + * 更新时间 + */ + @Schema(description ="更新时间",name ="updateTime",example = "") + private LocalDateTime updateTime; + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteQueryListCommand.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteQueryListCommand.java new file mode 100644 index 0000000..bf7c56e --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteQueryListCommand.java @@ -0,0 +1,72 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route; + +import lombok.Data; +import lombok.experimental.Accessors; +import io.swagger.v3.oas.annotations.media.Schema; +import java.time.LocalDateTime; +import java.lang.String; +import java.lang.Long; +import java.lang.Boolean; +/** + * describe 服务端路由 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyQueryListCommand + **/ +@Data +@Accessors(chain = true) +@Schema(title = "lazy_netty_server_route_query_List_command",description = "服务端路由") +public class LazyNettyServerRouteQueryListCommand { + + + /** + * + * 创建时间 + */ + @Schema(description ="创建时间",name ="createTime",example = "") + private LocalDateTime createTime; + + /** + * + * 规则描述 + */ + @Schema(description ="规则描述",name ="describe",example = "") + private String describe; + + /** + * + * 主键ID + */ + @Schema(description ="主键ID",name ="id",example = "") + private Long id; + + /** + * + * 是否删除 + */ + @Schema(description ="是否删除",name ="isDeleted",example = "") + private Boolean isDeleted; + + /** + * + * 路由IP + */ + @Schema(description ="路由IP",name ="routeIp",example = "") + private String routeIp; + + /** + * + * 路由端口:默认ALL + */ + @Schema(description ="路由端口:默认ALL",name ="routePort",example = "") + private String routePort; + + /** + * + * 更新时间 + */ + @Schema(description ="更新时间",name ="updateTime",example = "") + private LocalDateTime updateTime; + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteQueryOneCommand.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteQueryOneCommand.java new file mode 100644 index 0000000..6dec1ab --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteQueryOneCommand.java @@ -0,0 +1,72 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route; + +import lombok.Data; +import lombok.experimental.Accessors; +import io.swagger.v3.oas.annotations.media.Schema; +import java.time.LocalDateTime; +import java.lang.String; +import java.lang.Long; +import java.lang.Boolean; +/** + * describe 服务端路由 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyQueryOneCommand + **/ +@Data +@Accessors(chain = true) +@Schema(title = "lazy_netty_server_route_query_one_command",description = "服务端路由") +public class LazyNettyServerRouteQueryOneCommand { + + + /** + * + * 创建时间 + */ + @Schema(description ="创建时间",name ="createTime",example = "") + private LocalDateTime createTime; + + /** + * + * 规则描述 + */ + @Schema(description ="规则描述",name ="describe",example = "") + private String describe; + + /** + * + * 主键ID + */ + @Schema(description ="主键ID",name ="id",example = "") + private Long id; + + /** + * + * 是否删除 + */ + @Schema(description ="是否删除",name ="isDeleted",example = "") + private Boolean isDeleted; + + /** + * + * 路由IP + */ + @Schema(description ="路由IP",name ="routeIp",example = "") + private String routeIp; + + /** + * + * 路由端口:默认ALL + */ + @Schema(description ="路由端口:默认ALL",name ="routePort",example = "") + private String routePort; + + /** + * + * 更新时间 + */ + @Schema(description ="更新时间",name ="updateTime",example = "") + private LocalDateTime updateTime; + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteRemoveCommand.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteRemoveCommand.java new file mode 100644 index 0000000..d7304b5 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteRemoveCommand.java @@ -0,0 +1,72 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route; + +import lombok.Data; +import lombok.experimental.Accessors; +import io.swagger.v3.oas.annotations.media.Schema; +import java.time.LocalDateTime; +import java.lang.String; +import java.lang.Long; +import java.lang.Boolean; +/** + * describe 服务端路由 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyRemoveCommand + **/ +@Data +@Accessors(chain = true) +@Schema(title = "lazy_netty_server_route_remove_command",description = "服务端路由") +public class LazyNettyServerRouteRemoveCommand { + + + /** + * + * 创建时间 + */ + @Schema(description ="创建时间",name ="createTime",example = "") + private LocalDateTime createTime; + + /** + * + * 规则描述 + */ + @Schema(description ="规则描述",name ="describe",example = "") + private String describe; + + /** + * + * 主键ID + */ + @Schema(description ="主键ID",name ="id",example = "") + private Long id; + + /** + * + * 是否删除 + */ + @Schema(description ="是否删除",name ="isDeleted",example = "") + private Boolean isDeleted; + + /** + * + * 路由IP + */ + @Schema(description ="路由IP",name ="routeIp",example = "") + private String routeIp; + + /** + * + * 路由端口:默认ALL + */ + @Schema(description ="路由端口:默认ALL",name ="routePort",example = "") + private String routePort; + + /** + * + * 更新时间 + */ + @Schema(description ="更新时间",name ="updateTime",example = "") + private LocalDateTime updateTime; + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteStoryCommand.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteStoryCommand.java new file mode 100644 index 0000000..0f51de4 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteStoryCommand.java @@ -0,0 +1,66 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route; + +import lombok.Data; +import lombok.experimental.Accessors; +import io.swagger.v3.oas.annotations.media.Schema; +import java.time.LocalDateTime; +import java.lang.String; +import java.lang.Long; +import java.lang.Boolean; +/** + * describe 服务端路由 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyStoryCommand + **/ +@Data +@Accessors(chain = true) +@Schema(title = "lazy_netty_server_route_story_command",description = "服务端路由") +public class LazyNettyServerRouteStoryCommand { + + + /** + * + * 创建时间 + */ + @Schema(description ="创建时间",name ="createTime",example = "") + private LocalDateTime createTime; + + /** + * + * 规则描述 + */ + @Schema(description ="规则描述",name ="describe",example = "") + private String describe; + + /** + * + * 主键ID + */ + @Schema(description ="主键ID",name ="id",example = "") + private Long id; + + + /** + * + * 路由IP + */ + @Schema(description ="路由IP",name ="routeIp",example = "") + private String routeIp; + + /** + * + * 路由端口:默认ALL + */ + @Schema(description ="路由端口:默认ALL",name ="routePort",example = "") + private String routePort; + + /** + * + * 更新时间 + */ + @Schema(description ="更新时间",name ="updateTime",example = "") + private LocalDateTime updateTime; + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteUpdateCommand.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteUpdateCommand.java new file mode 100644 index 0000000..b22d86e --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/command/lazy/netty/server/route/LazyNettyServerRouteUpdateCommand.java @@ -0,0 +1,72 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route; + +import lombok.Data; +import lombok.experimental.Accessors; +import io.swagger.v3.oas.annotations.media.Schema; +import java.time.LocalDateTime; +import java.lang.String; +import java.lang.Long; +import java.lang.Boolean; +/** + * describe 服务端路由 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyUpdateCommand + **/ +@Data +@Accessors(chain = true) +@Schema(title = "lazy_netty_server_route_update_command",description = "服务端路由") +public class LazyNettyServerRouteUpdateCommand { + + + /** + * + * 创建时间 + */ + @Schema(description ="创建时间",name ="createTime",example = "") + private LocalDateTime createTime; + + /** + * + * 规则描述 + */ + @Schema(description ="规则描述",name ="describe",example = "") + private String describe; + + /** + * + * 主键ID + */ + @Schema(description ="主键ID",name ="id",example = "") + private Long id; + + /** + * + * 是否删除 + */ + @Schema(description ="是否删除",name ="isDeleted",example = "") + private Boolean isDeleted; + + /** + * + * 路由IP + */ + @Schema(description ="路由IP",name ="routeIp",example = "") + private String routeIp; + + /** + * + * 路由端口:默认ALL + */ + @Schema(description ="路由端口:默认ALL",name ="routePort",example = "") + private String routePort; + + /** + * + * 更新时间 + */ + @Schema(description ="更新时间",name ="updateTime",example = "") + private LocalDateTime updateTime; + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/dto/LazyNettyClientRouteDTO.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/dto/LazyNettyClientRouteDTO.java new file mode 100644 index 0000000..4221935 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/dto/LazyNettyClientRouteDTO.java @@ -0,0 +1,79 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.application.dto; + +import lombok.Data; +import lombok.experimental.Accessors; +import io.swagger.v3.oas.annotations.media.Schema; +import java.lang.String; +import java.time.LocalDateTime; +import java.lang.Long; +import java.lang.Boolean; +/** + * describe 客户端代理路由规则 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyDTO + **/ +@Data +@Accessors(chain = true) +@Schema(title = "lazy_netty_client_route_command_dto",description = "客户端代理路由规则") +public class LazyNettyClientRouteDTO { + + + /** + * + * 客户端ID + */ + @Schema(description ="客户端ID",name ="clientId",example = "") + private String clientId; + + /** + * + * 创建时间 + */ + @Schema(description ="创建时间",name ="createTime",example = "") + private LocalDateTime createTime; + + /** + * + * 规则描述 + */ + @Schema(description ="规则描述",name ="describe",example = "") + private String describe; + + /** + * + * 主键ID + */ + @Schema(description ="主键ID",name ="id",example = "") + private Long id; + + /** + * + * 是否删除 + */ + @Schema(description ="是否删除",name ="isDeleted",example = "") + private Boolean isDeleted; + + /** + * + * 路由IP + */ + @Schema(description ="路由IP",name ="routeIp",example = "") + private String routeIp; + + /** + * + * 路由端口:默认ALL + */ + @Schema(description ="路由端口:默认ALL",name ="routePort",example = "") + private String routePort; + + /** + * + * 更新时间 + */ + @Schema(description ="更新时间",name ="updateTime",example = "") + private LocalDateTime updateTime; + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/dto/LazyNettyServerRouteDTO.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/dto/LazyNettyServerRouteDTO.java new file mode 100644 index 0000000..2de56cb --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/dto/LazyNettyServerRouteDTO.java @@ -0,0 +1,72 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.application.dto; + +import lombok.Data; +import lombok.experimental.Accessors; +import io.swagger.v3.oas.annotations.media.Schema; +import java.time.LocalDateTime; +import java.lang.String; +import java.lang.Long; +import java.lang.Boolean; +/** + * describe 服务端路由 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyDTO + **/ +@Data +@Accessors(chain = true) +@Schema(title = "lazy_netty_server_route_command_dto",description = "服务端路由") +public class LazyNettyServerRouteDTO { + + + /** + * + * 创建时间 + */ + @Schema(description ="创建时间",name ="createTime",example = "") + private LocalDateTime createTime; + + /** + * + * 规则描述 + */ + @Schema(description ="规则描述",name ="describe",example = "") + private String describe; + + /** + * + * 主键ID + */ + @Schema(description ="主键ID",name ="id",example = "") + private Long id; + + /** + * + * 是否删除 + */ + @Schema(description ="是否删除",name ="isDeleted",example = "") + private Boolean isDeleted; + + /** + * + * 路由IP + */ + @Schema(description ="路由IP",name ="routeIp",example = "") + private String routeIp; + + /** + * + * 路由端口:默认ALL + */ + @Schema(description ="路由端口:默认ALL",name ="routePort",example = "") + private String routePort; + + /** + * + * 更新时间 + */ + @Schema(description ="更新时间",name ="updateTime",example = "") + private LocalDateTime updateTime; + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/impl/LazyNettyClientRouteApplicationImpl.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/impl/LazyNettyClientRouteApplicationImpl.java new file mode 100644 index 0000000..76ec055 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/impl/LazyNettyClientRouteApplicationImpl.java @@ -0,0 +1,144 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.application.impl; + +import org.wu.framework.database.lazy.web.plus.stereotype.LazyApplication; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.LazyNettyClientRouteApplication; +import org.springframework.web.bind.annotation.*; +import org.wu.framework.web.response.Result; +import org.wu.framework.web.response.ResultFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.client.route.LazyNettyClientRoute; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteRemoveCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteStoryCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteUpdateCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteQueryListCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteQueryOneCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.assembler.LazyNettyClientRouteDTOAssembler; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.dto.LazyNettyClientRouteDTO; +import java.util.stream.Collectors; +import jakarta.annotation.Resource; +import org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.client.route.LazyNettyClientRouteRepository; +import java.util.List; +import org.wu.framework.lazy.orm.database.lambda.domain.LazyPage; +/** + * describe 客户端代理路由规则 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyApplicationImpl + **/ +@LazyApplication +public class LazyNettyClientRouteApplicationImpl implements LazyNettyClientRouteApplication { + + @Resource + LazyNettyClientRouteRepository lazyNettyClientRouteRepository; + /** + * describe 新增客户端代理路由规则 + * + * @param lazyNettyClientRouteStoryCommand 新增客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则新增后领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result story(LazyNettyClientRouteStoryCommand lazyNettyClientRouteStoryCommand) { + LazyNettyClientRoute lazyNettyClientRoute = LazyNettyClientRouteDTOAssembler.INSTANCE.toLazyNettyClientRoute(lazyNettyClientRouteStoryCommand); + return lazyNettyClientRouteRepository.story(lazyNettyClientRoute); + } + /** + * describe 批量新增客户端代理路由规则 + * + * @param lazyNettyClientRouteStoryCommandList 批量新增客户端代理路由规则 + * @return {@link Result>} 客户端代理路由规则新增后领域对象集合 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result> batchStory(List lazyNettyClientRouteStoryCommandList) { + List lazyNettyClientRouteList = lazyNettyClientRouteStoryCommandList.stream().map( LazyNettyClientRouteDTOAssembler.INSTANCE::toLazyNettyClientRoute).collect(Collectors.toList()); + return lazyNettyClientRouteRepository.batchStory(lazyNettyClientRouteList); + } + /** + * describe 更新客户端代理路由规则 + * + * @param lazyNettyClientRouteUpdateCommand 更新客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result updateOne(LazyNettyClientRouteUpdateCommand lazyNettyClientRouteUpdateCommand) { + LazyNettyClientRoute lazyNettyClientRoute = LazyNettyClientRouteDTOAssembler.INSTANCE.toLazyNettyClientRoute(lazyNettyClientRouteUpdateCommand); + return lazyNettyClientRouteRepository.story(lazyNettyClientRoute); + } + + /** + * describe 查询单个客户端代理路由规则 + * + * @param lazyNettyClientRouteQueryOneCommand 查询单个客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result findOne(LazyNettyClientRouteQueryOneCommand lazyNettyClientRouteQueryOneCommand) { + LazyNettyClientRoute lazyNettyClientRoute = LazyNettyClientRouteDTOAssembler.INSTANCE.toLazyNettyClientRoute(lazyNettyClientRouteQueryOneCommand); + return lazyNettyClientRouteRepository.findOne(lazyNettyClientRoute).convert(LazyNettyClientRouteDTOAssembler.INSTANCE::fromLazyNettyClientRoute); + } + + /** + * describe 查询多个客户端代理路由规则 + * + * @param lazyNettyClientRouteQueryListCommand 查询多个客户端代理路由规则 + * @return {@link Result>} 客户端代理路由规则DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result> findList(LazyNettyClientRouteQueryListCommand lazyNettyClientRouteQueryListCommand) { + LazyNettyClientRoute lazyNettyClientRoute = LazyNettyClientRouteDTOAssembler.INSTANCE.toLazyNettyClientRoute(lazyNettyClientRouteQueryListCommand); + return lazyNettyClientRouteRepository.findList(lazyNettyClientRoute) .convert(lazyNettyClientRoutes -> lazyNettyClientRoutes.stream().map(LazyNettyClientRouteDTOAssembler.INSTANCE::fromLazyNettyClientRoute).collect(Collectors.toList())) ; + } + + /** + * describe 分页查询多个客户端代理路由规则 + * + * @param lazyNettyClientRouteQueryListCommand 分页查询多个客户端代理路由规则 + * @return {@link Result>} 分页客户端代理路由规则DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result> findPage(int size,int current,LazyNettyClientRouteQueryListCommand lazyNettyClientRouteQueryListCommand) { + LazyNettyClientRoute lazyNettyClientRoute = LazyNettyClientRouteDTOAssembler.INSTANCE.toLazyNettyClientRoute(lazyNettyClientRouteQueryListCommand); + return lazyNettyClientRouteRepository.findPage(size,current,lazyNettyClientRoute) .convert(page -> page.convert(LazyNettyClientRouteDTOAssembler.INSTANCE::fromLazyNettyClientRoute)) ; + } + + /** + * describe 删除客户端代理路由规则 + * + * @param lazyNettyClientRouteRemoveCommand 删除客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result remove(LazyNettyClientRouteRemoveCommand lazyNettyClientRouteRemoveCommand) { + LazyNettyClientRoute lazyNettyClientRoute = LazyNettyClientRouteDTOAssembler.INSTANCE.toLazyNettyClientRoute(lazyNettyClientRouteRemoveCommand); + return lazyNettyClientRouteRepository.remove(lazyNettyClientRoute); + } + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/impl/LazyNettyServerRouteApplicationImpl.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/impl/LazyNettyServerRouteApplicationImpl.java new file mode 100644 index 0000000..516beaf --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/application/impl/LazyNettyServerRouteApplicationImpl.java @@ -0,0 +1,144 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.application.impl; + +import org.wu.framework.database.lazy.web.plus.stereotype.LazyApplication; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.LazyNettyServerRouteApplication; +import org.springframework.web.bind.annotation.*; +import org.wu.framework.web.response.Result; +import org.wu.framework.web.response.ResultFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.server.route.LazyNettyServerRoute; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteRemoveCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteStoryCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteUpdateCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteQueryListCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteQueryOneCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.assembler.LazyNettyServerRouteDTOAssembler; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.dto.LazyNettyServerRouteDTO; +import java.util.stream.Collectors; +import jakarta.annotation.Resource; +import org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.server.route.LazyNettyServerRouteRepository; +import java.util.List; +import org.wu.framework.lazy.orm.database.lambda.domain.LazyPage; +/** + * describe 服务端路由 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyApplicationImpl + **/ +@LazyApplication +public class LazyNettyServerRouteApplicationImpl implements LazyNettyServerRouteApplication { + + @Resource + LazyNettyServerRouteRepository lazyNettyServerRouteRepository; + /** + * describe 新增服务端路由 + * + * @param lazyNettyServerRouteStoryCommand 新增服务端路由 + * @return {@link Result} 服务端路由新增后领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result story(LazyNettyServerRouteStoryCommand lazyNettyServerRouteStoryCommand) { + LazyNettyServerRoute lazyNettyServerRoute = LazyNettyServerRouteDTOAssembler.INSTANCE.toLazyNettyServerRoute(lazyNettyServerRouteStoryCommand); + return lazyNettyServerRouteRepository.story(lazyNettyServerRoute); + } + /** + * describe 批量新增服务端路由 + * + * @param lazyNettyServerRouteStoryCommandList 批量新增服务端路由 + * @return {@link Result>} 服务端路由新增后领域对象集合 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result> batchStory(List lazyNettyServerRouteStoryCommandList) { + List lazyNettyServerRouteList = lazyNettyServerRouteStoryCommandList.stream().map( LazyNettyServerRouteDTOAssembler.INSTANCE::toLazyNettyServerRoute).collect(Collectors.toList()); + return lazyNettyServerRouteRepository.batchStory(lazyNettyServerRouteList); + } + /** + * describe 更新服务端路由 + * + * @param lazyNettyServerRouteUpdateCommand 更新服务端路由 + * @return {@link Result} 服务端路由领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result updateOne(LazyNettyServerRouteUpdateCommand lazyNettyServerRouteUpdateCommand) { + LazyNettyServerRoute lazyNettyServerRoute = LazyNettyServerRouteDTOAssembler.INSTANCE.toLazyNettyServerRoute(lazyNettyServerRouteUpdateCommand); + return lazyNettyServerRouteRepository.story(lazyNettyServerRoute); + } + + /** + * describe 查询单个服务端路由 + * + * @param lazyNettyServerRouteQueryOneCommand 查询单个服务端路由 + * @return {@link Result} 服务端路由DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result findOne(LazyNettyServerRouteQueryOneCommand lazyNettyServerRouteQueryOneCommand) { + LazyNettyServerRoute lazyNettyServerRoute = LazyNettyServerRouteDTOAssembler.INSTANCE.toLazyNettyServerRoute(lazyNettyServerRouteQueryOneCommand); + return lazyNettyServerRouteRepository.findOne(lazyNettyServerRoute).convert(LazyNettyServerRouteDTOAssembler.INSTANCE::fromLazyNettyServerRoute); + } + + /** + * describe 查询多个服务端路由 + * + * @param lazyNettyServerRouteQueryListCommand 查询多个服务端路由 + * @return {@link Result>} 服务端路由DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result> findList(LazyNettyServerRouteQueryListCommand lazyNettyServerRouteQueryListCommand) { + LazyNettyServerRoute lazyNettyServerRoute = LazyNettyServerRouteDTOAssembler.INSTANCE.toLazyNettyServerRoute(lazyNettyServerRouteQueryListCommand); + return lazyNettyServerRouteRepository.findList(lazyNettyServerRoute) .convert(lazyNettyServerRoutes -> lazyNettyServerRoutes.stream().map(LazyNettyServerRouteDTOAssembler.INSTANCE::fromLazyNettyServerRoute).collect(Collectors.toList())) ; + } + + /** + * describe 分页查询多个服务端路由 + * + * @param lazyNettyServerRouteQueryListCommand 分页查询多个服务端路由 + * @return {@link Result>} 分页服务端路由DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result> findPage(int size,int current,LazyNettyServerRouteQueryListCommand lazyNettyServerRouteQueryListCommand) { + LazyNettyServerRoute lazyNettyServerRoute = LazyNettyServerRouteDTOAssembler.INSTANCE.toLazyNettyServerRoute(lazyNettyServerRouteQueryListCommand); + return lazyNettyServerRouteRepository.findPage(size,current,lazyNettyServerRoute) .convert(page -> page.convert(LazyNettyServerRouteDTOAssembler.INSTANCE::fromLazyNettyServerRoute)) ; + } + + /** + * describe 删除服务端路由 + * + * @param lazyNettyServerRouteRemoveCommand 删除服务端路由 + * @return {@link Result} 服务端路由 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result remove(LazyNettyServerRouteRemoveCommand lazyNettyServerRouteRemoveCommand) { + LazyNettyServerRoute lazyNettyServerRoute = LazyNettyServerRouteDTOAssembler.INSTANCE.toLazyNettyServerRoute(lazyNettyServerRouteRemoveCommand); + return lazyNettyServerRouteRepository.remove(lazyNettyServerRoute); + } + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/controller/LazyNettyClientRouteProvider.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/controller/LazyNettyClientRouteProvider.java new file mode 100644 index 0000000..c15368a --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/controller/LazyNettyClientRouteProvider.java @@ -0,0 +1,142 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.controller; + +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import org.wu.framework.web.spring.EasyController; +import org.springframework.web.bind.annotation.*; +import org.wu.framework.web.response.Result; +import org.wu.framework.web.response.ResultFactory; +import org.springframework.beans.factory.annotation.Autowired; +import jakarta.annotation.Resource; +import org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.client.route.LazyNettyClientRoute; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteRemoveCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteStoryCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteUpdateCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteQueryListCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.client.route.LazyNettyClientRouteQueryOneCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.LazyNettyClientRouteApplication; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.dto.LazyNettyClientRouteDTO; +import java.util.List; +import org.wu.framework.lazy.orm.database.lambda.domain.LazyPage; +/** + * describe 客户端代理路由规则 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyController + **/ +@Tag(name = "客户端代理路由规则提供者") +@EasyController("/lazy/netty/client/route") +public class LazyNettyClientRouteProvider { + + @Resource + private LazyNettyClientRouteApplication lazyNettyClientRouteApplication; + + /** + * describe 新增客户端代理路由规则 + * + * @param lazyNettyClientRouteStoryCommand 新增客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则新增后领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Operation(summary = "新增客户端代理路由规则") + @PostMapping("/story") + public Result story(@RequestBody LazyNettyClientRouteStoryCommand lazyNettyClientRouteStoryCommand){ + return lazyNettyClientRouteApplication.story(lazyNettyClientRouteStoryCommand); + } + /** + * describe 批量新增客户端代理路由规则 + * + * @param lazyNettyClientRouteStoryCommandList 批量新增客户端代理路由规则 + * @return {@link Result>} 客户端代理路由规则新增后领域对象集合 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Operation(summary = "批量新增客户端代理路由规则") + @PostMapping("/batchStory") + public Result> batchStory(@RequestBody List lazyNettyClientRouteStoryCommandList){ + return lazyNettyClientRouteApplication.batchStory(lazyNettyClientRouteStoryCommandList); + } + /** + * describe 更新客户端代理路由规则 + * + * @param lazyNettyClientRouteUpdateCommand 更新客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Operation(summary = "更新客户端代理路由规则") + @PutMapping("/updateOne") + public Result updateOne(@RequestBody LazyNettyClientRouteUpdateCommand lazyNettyClientRouteUpdateCommand){ + return lazyNettyClientRouteApplication.updateOne(lazyNettyClientRouteUpdateCommand); + } + /** + * describe 查询单个客户端代理路由规则 + * + * @param lazyNettyClientRouteQueryOneCommand 查询单个客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Operation(summary = "查询单个客户端代理路由规则") + @GetMapping("/findOne") + public Result findOne(@ModelAttribute LazyNettyClientRouteQueryOneCommand lazyNettyClientRouteQueryOneCommand){ + return lazyNettyClientRouteApplication.findOne(lazyNettyClientRouteQueryOneCommand); + } + /** + * describe 查询多个客户端代理路由规则 + * + * @param lazyNettyClientRouteQueryListCommand 查询多个客户端代理路由规则 + * @return {@link Result>} 客户端代理路由规则DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Operation(summary = "查询多个客户端代理路由规则") + @GetMapping("/findList") + public Result> findList(@ModelAttribute LazyNettyClientRouteQueryListCommand lazyNettyClientRouteQueryListCommand){ + return lazyNettyClientRouteApplication.findList(lazyNettyClientRouteQueryListCommand); + } + /** + * describe 分页查询多个客户端代理路由规则 + * + * @param lazyNettyClientRouteQueryListCommand 分页查询多个客户端代理路由规则 + * @return {@link Result>} 分页客户端代理路由规则DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Operation(summary = "分页查询多个客户端代理路由规则") + @GetMapping("/findPage") + public Result> findPage(@Parameter(description ="分页大小") @RequestParam(defaultValue = "10", value = "size") int size, + @Parameter(description ="当前页数") @RequestParam(defaultValue = "1", value = "current") int current,@ModelAttribute LazyNettyClientRouteQueryListCommand lazyNettyClientRouteQueryListCommand){ + return lazyNettyClientRouteApplication.findPage(size,current,lazyNettyClientRouteQueryListCommand); + } + /** + * describe 删除客户端代理路由规则 + * + * @param lazyNettyClientRouteRemoveCommand 删除客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Operation(summary = "删除客户端代理路由规则") + @DeleteMapping("/remove") + public Result remove(@ModelAttribute LazyNettyClientRouteRemoveCommand lazyNettyClientRouteRemoveCommand){ + return lazyNettyClientRouteApplication.remove(lazyNettyClientRouteRemoveCommand); + } +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/controller/LazyNettyServerRouteProvider.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/controller/LazyNettyServerRouteProvider.java new file mode 100644 index 0000000..9487543 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/controller/LazyNettyServerRouteProvider.java @@ -0,0 +1,142 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.controller; + +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import org.wu.framework.web.spring.EasyController; +import org.springframework.web.bind.annotation.*; +import org.wu.framework.web.response.Result; +import org.wu.framework.web.response.ResultFactory; +import org.springframework.beans.factory.annotation.Autowired; +import jakarta.annotation.Resource; +import org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.server.route.LazyNettyServerRoute; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteRemoveCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteStoryCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteUpdateCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteQueryListCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.command.lazy.netty.server.route.LazyNettyServerRouteQueryOneCommand; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.LazyNettyServerRouteApplication; +import org.framework.lazy.cloud.network.heartbeat.protocol.application.dto.LazyNettyServerRouteDTO; +import java.util.List; +import org.wu.framework.lazy.orm.database.lambda.domain.LazyPage; +/** + * describe 服务端路由 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyController + **/ +@Tag(name = "服务端路由提供者") +@EasyController("/lazy/netty/server/route") +public class LazyNettyServerRouteProvider { + + @Resource + private LazyNettyServerRouteApplication lazyNettyServerRouteApplication; + + /** + * describe 新增服务端路由 + * + * @param lazyNettyServerRouteStoryCommand 新增服务端路由 + * @return {@link Result} 服务端路由新增后领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Operation(summary = "新增服务端路由") + @PostMapping("/story") + public Result story(@RequestBody LazyNettyServerRouteStoryCommand lazyNettyServerRouteStoryCommand){ + return lazyNettyServerRouteApplication.story(lazyNettyServerRouteStoryCommand); + } + /** + * describe 批量新增服务端路由 + * + * @param lazyNettyServerRouteStoryCommandList 批量新增服务端路由 + * @return {@link Result>} 服务端路由新增后领域对象集合 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Operation(summary = "批量新增服务端路由") + @PostMapping("/batchStory") + public Result> batchStory(@RequestBody List lazyNettyServerRouteStoryCommandList){ + return lazyNettyServerRouteApplication.batchStory(lazyNettyServerRouteStoryCommandList); + } + /** + * describe 更新服务端路由 + * + * @param lazyNettyServerRouteUpdateCommand 更新服务端路由 + * @return {@link Result} 服务端路由领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Operation(summary = "更新服务端路由") + @PutMapping("/updateOne") + public Result updateOne(@RequestBody LazyNettyServerRouteUpdateCommand lazyNettyServerRouteUpdateCommand){ + return lazyNettyServerRouteApplication.updateOne(lazyNettyServerRouteUpdateCommand); + } + /** + * describe 查询单个服务端路由 + * + * @param lazyNettyServerRouteQueryOneCommand 查询单个服务端路由 + * @return {@link Result} 服务端路由DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Operation(summary = "查询单个服务端路由") + @GetMapping("/findOne") + public Result findOne(@ModelAttribute LazyNettyServerRouteQueryOneCommand lazyNettyServerRouteQueryOneCommand){ + return lazyNettyServerRouteApplication.findOne(lazyNettyServerRouteQueryOneCommand); + } + /** + * describe 查询多个服务端路由 + * + * @param lazyNettyServerRouteQueryListCommand 查询多个服务端路由 + * @return {@link Result>} 服务端路由DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Operation(summary = "查询多个服务端路由") + @GetMapping("/findList") + public Result> findList(@ModelAttribute LazyNettyServerRouteQueryListCommand lazyNettyServerRouteQueryListCommand){ + return lazyNettyServerRouteApplication.findList(lazyNettyServerRouteQueryListCommand); + } + /** + * describe 分页查询多个服务端路由 + * + * @param lazyNettyServerRouteQueryListCommand 分页查询多个服务端路由 + * @return {@link Result>} 分页服务端路由DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Operation(summary = "分页查询多个服务端路由") + @GetMapping("/findPage") + public Result> findPage(@Parameter(description ="分页大小") @RequestParam(defaultValue = "10", value = "size") int size, + @Parameter(description ="当前页数") @RequestParam(defaultValue = "1", value = "current") int current,@ModelAttribute LazyNettyServerRouteQueryListCommand lazyNettyServerRouteQueryListCommand){ + return lazyNettyServerRouteApplication.findPage(size,current,lazyNettyServerRouteQueryListCommand); + } + /** + * describe 删除服务端路由 + * + * @param lazyNettyServerRouteRemoveCommand 删除服务端路由 + * @return {@link Result} 服务端路由 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Operation(summary = "删除服务端路由") + @DeleteMapping("/remove") + public Result remove(@ModelAttribute LazyNettyServerRouteRemoveCommand lazyNettyServerRouteRemoveCommand){ + return lazyNettyServerRouteApplication.remove(lazyNettyServerRouteRemoveCommand); + } +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/domain/model/lazy/netty/client/route/LazyNettyClientRoute.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/domain/model/lazy/netty/client/route/LazyNettyClientRoute.java new file mode 100644 index 0000000..872e25b --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/domain/model/lazy/netty/client/route/LazyNettyClientRoute.java @@ -0,0 +1,79 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.client.route; + +import lombok.Data; +import lombok.experimental.Accessors; +import io.swagger.v3.oas.annotations.media.Schema; +import java.lang.String; +import java.time.LocalDateTime; +import java.lang.Long; +import java.lang.Boolean; +/** + * describe 客户端代理路由规则 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyDomain + **/ +@Data +@Accessors(chain = true) +@Schema(title = "lazy_netty_client_route",description = "客户端代理路由规则") +public class LazyNettyClientRoute { + + + /** + * + * 客户端ID + */ + @Schema(description ="客户端ID",name ="clientId",example = "") + private String clientId; + + /** + * + * 创建时间 + */ + @Schema(description ="创建时间",name ="createTime",example = "") + private LocalDateTime createTime; + + /** + * + * 规则描述 + */ + @Schema(description ="规则描述",name ="describe",example = "") + private String describe; + + /** + * + * 主键ID + */ + @Schema(description ="主键ID",name ="id",example = "") + private Long id; + + /** + * + * 是否删除 + */ + @Schema(description ="是否删除",name ="isDeleted",example = "") + private Boolean isDeleted; + + /** + * + * 路由IP + */ + @Schema(description ="路由IP",name ="routeIp",example = "") + private String routeIp; + + /** + * + * 路由端口:默认ALL + */ + @Schema(description ="路由端口:默认ALL",name ="routePort",example = "") + private String routePort; + + /** + * + * 更新时间 + */ + @Schema(description ="更新时间",name ="updateTime",example = "") + private LocalDateTime updateTime; + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/domain/model/lazy/netty/client/route/LazyNettyClientRouteRepository.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/domain/model/lazy/netty/client/route/LazyNettyClientRouteRepository.java new file mode 100644 index 0000000..2903d9c --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/domain/model/lazy/netty/client/route/LazyNettyClientRouteRepository.java @@ -0,0 +1,106 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.client.route; + +import org.wu.framework.web.response.Result; +import org.wu.framework.web.response.ResultFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.client.route.LazyNettyClientRoute; +import java.util.List; +import org.wu.framework.lazy.orm.database.lambda.domain.LazyPage; +/** + * describe 客户端代理路由规则 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyDomainRepository + **/ + +public interface LazyNettyClientRouteRepository { + + + /** + * describe 新增客户端代理路由规则 + * + * @param lazyNettyClientRoute 新增客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则新增后领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result story(LazyNettyClientRoute lazyNettyClientRoute); + + /** + * describe 批量新增客户端代理路由规则 + * + * @param lazyNettyClientRouteList 批量新增客户端代理路由规则 + * @return {@link Result>} 客户端代理路由规则新增后领域对象集合 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result> batchStory(List lazyNettyClientRouteList); + + /** + * describe 查询单个客户端代理路由规则 + * + * @param lazyNettyClientRoute 查询单个客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result findOne(LazyNettyClientRoute lazyNettyClientRoute); + + /** + * describe 查询多个客户端代理路由规则 + * + * @param lazyNettyClientRoute 查询多个客户端代理路由规则 + * @return {@link Result>} 客户端代理路由规则DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result> findList(LazyNettyClientRoute lazyNettyClientRoute); + + /** + * describe 分页查询多个客户端代理路由规则 + * + * @param size 当前页数 + * @param current 当前页 + * @param lazyNettyClientRoute 分页查询多个客户端代理路由规则 + * @return {@link Result>} 分页客户端代理路由规则领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result> findPage(int size,int current,LazyNettyClientRoute lazyNettyClientRoute); + + /** + * describe 删除客户端代理路由规则 + * + * @param lazyNettyClientRoute 删除客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result remove(LazyNettyClientRoute lazyNettyClientRoute); + + /** + * describe 是否存在客户端代理路由规则 + * + * @param lazyNettyClientRoute 是否存在客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则是否存在 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result exists(LazyNettyClientRoute lazyNettyClientRoute); + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/domain/model/lazy/netty/server/route/LazyNettyServerRoute.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/domain/model/lazy/netty/server/route/LazyNettyServerRoute.java new file mode 100644 index 0000000..bd34fc3 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/domain/model/lazy/netty/server/route/LazyNettyServerRoute.java @@ -0,0 +1,72 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.server.route; + +import lombok.Data; +import lombok.experimental.Accessors; +import io.swagger.v3.oas.annotations.media.Schema; +import java.time.LocalDateTime; +import java.lang.String; +import java.lang.Long; +import java.lang.Boolean; +/** + * describe 服务端路由 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyDomain + **/ +@Data +@Accessors(chain = true) +@Schema(title = "lazy_netty_server_route",description = "服务端路由") +public class LazyNettyServerRoute { + + + /** + * + * 创建时间 + */ + @Schema(description ="创建时间",name ="createTime",example = "") + private LocalDateTime createTime; + + /** + * + * 规则描述 + */ + @Schema(description ="规则描述",name ="describe",example = "") + private String describe; + + /** + * + * 主键ID + */ + @Schema(description ="主键ID",name ="id",example = "") + private Long id; + + /** + * + * 是否删除 + */ + @Schema(description ="是否删除",name ="isDeleted",example = "") + private Boolean isDeleted; + + /** + * + * 路由IP + */ + @Schema(description ="路由IP",name ="routeIp",example = "") + private String routeIp; + + /** + * + * 路由端口:默认ALL + */ + @Schema(description ="路由端口:默认ALL",name ="routePort",example = "") + private String routePort; + + /** + * + * 更新时间 + */ + @Schema(description ="更新时间",name ="updateTime",example = "") + private LocalDateTime updateTime; + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/domain/model/lazy/netty/server/route/LazyNettyServerRouteRepository.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/domain/model/lazy/netty/server/route/LazyNettyServerRouteRepository.java new file mode 100644 index 0000000..7db7cf0 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/domain/model/lazy/netty/server/route/LazyNettyServerRouteRepository.java @@ -0,0 +1,106 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.server.route; + +import org.wu.framework.web.response.Result; +import org.wu.framework.web.response.ResultFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.server.route.LazyNettyServerRoute; +import java.util.List; +import org.wu.framework.lazy.orm.database.lambda.domain.LazyPage; +/** + * describe 服务端路由 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyDomainRepository + **/ + +public interface LazyNettyServerRouteRepository { + + + /** + * describe 新增服务端路由 + * + * @param lazyNettyServerRoute 新增服务端路由 + * @return {@link Result} 服务端路由新增后领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result story(LazyNettyServerRoute lazyNettyServerRoute); + + /** + * describe 批量新增服务端路由 + * + * @param lazyNettyServerRouteList 批量新增服务端路由 + * @return {@link Result>} 服务端路由新增后领域对象集合 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result> batchStory(List lazyNettyServerRouteList); + + /** + * describe 查询单个服务端路由 + * + * @param lazyNettyServerRoute 查询单个服务端路由 + * @return {@link Result} 服务端路由DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result findOne(LazyNettyServerRoute lazyNettyServerRoute); + + /** + * describe 查询多个服务端路由 + * + * @param lazyNettyServerRoute 查询多个服务端路由 + * @return {@link Result>} 服务端路由DTO对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result> findList(LazyNettyServerRoute lazyNettyServerRoute); + + /** + * describe 分页查询多个服务端路由 + * + * @param size 当前页数 + * @param current 当前页 + * @param lazyNettyServerRoute 分页查询多个服务端路由 + * @return {@link Result>} 分页服务端路由领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result> findPage(int size,int current,LazyNettyServerRoute lazyNettyServerRoute); + + /** + * describe 删除服务端路由 + * + * @param lazyNettyServerRoute 删除服务端路由 + * @return {@link Result} 服务端路由 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result remove(LazyNettyServerRoute lazyNettyServerRoute); + + /** + * describe 是否存在服务端路由 + * + * @param lazyNettyServerRoute 是否存在服务端路由 + * @return {@link Result} 服务端路由是否存在 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + Result exists(LazyNettyServerRoute lazyNettyServerRoute); + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/handler/NettyHttpProxyHandler.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/handler/NettyHttpProxyHandler.java index bdd5784..79d46a3 100644 --- a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/handler/NettyHttpProxyHandler.java +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/handler/NettyHttpProxyHandler.java @@ -91,8 +91,10 @@ public class NettyHttpProxyHandler extends ChannelInboundHandlerAdapter { }else { if(RouteType.LOCAL.equals(route.getRouteType())){ proxyMsg.setType(TcpMessageType.HTTP_LOCAL_PROXY); - }else { - proxyMsg.setType(TcpMessageType.HTTP_REMOTE_PROXY); + }else if (RouteType.CLIENT_PROXY_CLIENT.equals(route.getRouteType())){ + proxyMsg.setType(TcpMessageType.HTTP_CLIENT_PROXY_CLIENT_); + }else if (RouteType.CLIENT_PROXY_SEVER.equals(route.getRouteType())){ + proxyMsg.setType(TcpMessageType.HTTP_CLIENT_PROXY_SERVER_); } } channelTypeAdapter.handler(ctx.channel(), proxyMsg); @@ -107,6 +109,12 @@ public class NettyHttpProxyHandler extends ChannelInboundHandlerAdapter { public void channelInactive(ChannelHandlerContext ctx) throws Exception { Channel nextChannel = ChannelAttributeKeyUtils.getNextChannel(ctx.channel()); if (nextChannel != null) { + String visitorId = ChannelAttributeKeyUtils.getVisitorId(ctx.channel()); + // close + NettyProxyMsg closeMes=new NettyProxyMsg(); + closeMes.setVisitorId(visitorId); + closeMes.setType(TcpMessageType.HTTP_CLIENT_PROXY_SERVER_TRANSFER_CLOSE_REPORT_); + nextChannel.writeAndFlush(closeMes); closeOnFlush(nextChannel); } } diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/converter/LazyNettyClientRouteConverter.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/converter/LazyNettyClientRouteConverter.java new file mode 100644 index 0000000..38149cd --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/converter/LazyNettyClientRouteConverter.java @@ -0,0 +1,48 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.converter; + +import org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.client.route.LazyNettyClientRoute; +import org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.entity.LazyNettyClientRouteDO; +import org.mapstruct.factory.Mappers; +import org.mapstruct.Mapper; +/** + * describe 客户端代理路由规则 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyInfrastructureConverter + **/ +@Mapper +public interface LazyNettyClientRouteConverter { + + + /** + * describe MapStruct 创建的代理对象 + * + + + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyClientRouteConverter INSTANCE = Mappers.getMapper(LazyNettyClientRouteConverter.class); + /** + * describe 实体对象 转换成领域对象 + * + * @param lazyNettyClientRouteDO 客户端代理路由规则实体对象 + * @return {@link LazyNettyClientRoute} 客户端代理路由规则领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyClientRoute toLazyNettyClientRoute(LazyNettyClientRouteDO lazyNettyClientRouteDO); + /** + * describe 领域对象 转换成实体对象 + * + * @param lazyNettyClientRoute 客户端代理路由规则领域对象 + * @return {@link LazyNettyClientRouteDO} 客户端代理路由规则实体对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyClientRouteDO fromLazyNettyClientRoute(LazyNettyClientRoute lazyNettyClientRoute); +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/converter/LazyNettyServerRouteConverter.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/converter/LazyNettyServerRouteConverter.java new file mode 100644 index 0000000..6838e00 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/converter/LazyNettyServerRouteConverter.java @@ -0,0 +1,48 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.converter; + +import org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.server.route.LazyNettyServerRoute; +import org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.entity.LazyNettyServerRouteDO; +import org.mapstruct.factory.Mappers; +import org.mapstruct.Mapper; +/** + * describe 服务端路由 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyInfrastructureConverter + **/ +@Mapper +public interface LazyNettyServerRouteConverter { + + + /** + * describe MapStruct 创建的代理对象 + * + + + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyServerRouteConverter INSTANCE = Mappers.getMapper(LazyNettyServerRouteConverter.class); + /** + * describe 实体对象 转换成领域对象 + * + * @param lazyNettyServerRouteDO 服务端路由实体对象 + * @return {@link LazyNettyServerRoute} 服务端路由领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyServerRoute toLazyNettyServerRoute(LazyNettyServerRouteDO lazyNettyServerRouteDO); + /** + * describe 领域对象 转换成实体对象 + * + * @param lazyNettyServerRoute 服务端路由领域对象 + * @return {@link LazyNettyServerRouteDO} 服务端路由实体对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + LazyNettyServerRouteDO fromLazyNettyServerRoute(LazyNettyServerRoute lazyNettyServerRoute); +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/entity/LazyNettyClientRouteDO.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/entity/LazyNettyClientRouteDO.java new file mode 100644 index 0000000..b3cd990 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/entity/LazyNettyClientRouteDO.java @@ -0,0 +1,96 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.entity; + +import lombok.Data; +import lombok.experimental.Accessors; +import org.wu.framework.lazy.orm.core.stereotype.LazyTableIndex; +import org.wu.framework.core.stereotype.LayerField; +import org.wu.framework.core.stereotype.LayerField.LayerFieldType; +import org.wu.framework.lazy.orm.core.stereotype.LazyTable; +import org.wu.framework.lazy.orm.core.stereotype.LazyTableField; +import org.wu.framework.lazy.orm.core.stereotype.*; +import io.swagger.v3.oas.annotations.media.Schema; +import io.swagger.v3.oas.annotations.media.Schema; +import java.lang.String; +import java.time.LocalDateTime; +import org.wu.framework.lazy.orm.core.stereotype.LazyTableFieldId; +import java.lang.Long; +import java.lang.Boolean; +/** + * describe 客户端代理路由规则 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyInfrastructureEntity + **/ +@Data +@Accessors(chain = true) +@LazyTable(tableName = "lazy_netty_client_route",comment = "客户端代理路由规则") +@Schema(title = "lazy_netty_client_route",description = "客户端代理路由规则") +public class LazyNettyClientRouteDO { + + + /** + * + * 客户端ID + */ + @Schema(description ="客户端ID",name ="clientId",example = "") + @LazyTableField(name="client_id",comment="客户端ID",notNull=true,columnType="varchar(255)") + private String clientId; + + /** + * + * 创建时间 + */ + @Schema(description ="创建时间",name ="createTime",example = "") + @LazyTableField(name="create_time",comment="创建时间",defaultValue="CURRENT_TIMESTAMP",upsertStrategy = LazyFieldStrategy.NEVER,columnType="datetime",extra=" on update CURRENT_TIMESTAMP") + private LocalDateTime createTime; + + /** + * + * 规则描述 + */ + @Schema(description ="规则描述",name ="describe",example = "") + @LazyTableField(name="describe",comment="规则描述",columnType="varchar(255)") + private String describe; + + /** + * + * 主键ID + */ + @Schema(description ="主键ID",name ="id",example = "") + @LazyTableFieldId(name = "id", comment = "主键ID") + private Long id; + + /** + * + * 是否删除 + */ + @Schema(description ="是否删除",name ="isDeleted",example = "") + @LazyTableField(name="is_deleted",comment="是否删除",notNull=true,defaultValue="'0'",upsertStrategy = LazyFieldStrategy.NEVER,columnType="tinyint(1)") + private Boolean isDeleted; + + /** + * + * 路由IP + */ + @Schema(description ="路由IP",name ="routeIp",example = "") + @LazyTableField(name="route_ip",comment="路由IP",notNull=true,columnType="varchar(255)") + private String routeIp; + + /** + * + * 路由端口:默认ALL + */ + @Schema(description ="路由端口:默认ALL",name ="routePort",example = "") + @LazyTableField(name="route_port",comment="路由端口:默认ALL",notNull=true,defaultValue="'ALL'",upsertStrategy = LazyFieldStrategy.NEVER,columnType="varchar(255)") + private String routePort; + + /** + * + * 更新时间 + */ + @Schema(description ="更新时间",name ="updateTime",example = "") + @LazyTableField(name="update_time",comment="更新时间",defaultValue="CURRENT_TIMESTAMP",upsertStrategy = LazyFieldStrategy.NEVER,columnType="datetime",extra=" on update CURRENT_TIMESTAMP") + private LocalDateTime updateTime; + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/entity/LazyNettyServerRouteDO.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/entity/LazyNettyServerRouteDO.java new file mode 100644 index 0000000..2683e56 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/entity/LazyNettyServerRouteDO.java @@ -0,0 +1,88 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.entity; + +import lombok.Data; +import lombok.experimental.Accessors; +import org.wu.framework.lazy.orm.core.stereotype.LazyTableIndex; +import org.wu.framework.core.stereotype.LayerField; +import org.wu.framework.core.stereotype.LayerField.LayerFieldType; +import org.wu.framework.lazy.orm.core.stereotype.LazyTable; +import org.wu.framework.lazy.orm.core.stereotype.LazyTableField; +import org.wu.framework.lazy.orm.core.stereotype.*; +import io.swagger.v3.oas.annotations.media.Schema; +import io.swagger.v3.oas.annotations.media.Schema; +import java.time.LocalDateTime; +import java.lang.String; +import org.wu.framework.lazy.orm.core.stereotype.LazyTableFieldId; +import java.lang.Long; +import java.lang.Boolean; +/** + * describe 服务端路由 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyInfrastructureEntity + **/ +@Data +@Accessors(chain = true) +@LazyTable(tableName = "lazy_netty_server_route",comment = "服务端路由") +@Schema(title = "lazy_netty_server_route",description = "服务端路由") +public class LazyNettyServerRouteDO { + + + /** + * + * 创建时间 + */ + @Schema(description ="创建时间",name ="createTime",example = "") + @LazyTableField(name="create_time",comment="创建时间",defaultValue="CURRENT_TIMESTAMP",upsertStrategy = LazyFieldStrategy.NEVER,columnType="datetime",extra=" on update CURRENT_TIMESTAMP") + private LocalDateTime createTime; + + /** + * + * 规则描述 + */ + @Schema(description ="规则描述",name ="describe",example = "") + @LazyTableField(name="describe",comment="规则描述",columnType="varchar(255)") + private String describe; + + /** + * + * 主键ID + */ + @Schema(description ="主键ID",name ="id",example = "") + @LazyTableFieldId(name = "id", comment = "主键ID") + private Long id; + + /** + * + * 是否删除 + */ + @Schema(description ="是否删除",name ="isDeleted",example = "") + @LazyTableField(name="is_deleted",comment="是否删除",notNull=true,defaultValue="'0'",upsertStrategy = LazyFieldStrategy.NEVER,columnType="tinyint(1)") + private Boolean isDeleted; + + /** + * + * 路由IP + */ + @Schema(description ="路由IP",name ="routeIp",example = "") + @LazyTableField(name="route_ip",comment="路由IP",notNull=true,columnType="varchar(255)") + private String routeIp; + + /** + * + * 路由端口:默认ALL + */ + @Schema(description ="路由端口:默认ALL",name ="routePort",example = "") + @LazyTableField(name="route_port",comment="路由端口:默认ALL",notNull=true,defaultValue="'ALL'",upsertStrategy = LazyFieldStrategy.NEVER,columnType="varchar(255)") + private String routePort; + + /** + * + * 更新时间 + */ + @Schema(description ="更新时间",name ="updateTime",example = "") + @LazyTableField(name="update_time",comment="更新时间",defaultValue="CURRENT_TIMESTAMP",upsertStrategy = LazyFieldStrategy.NEVER,columnType="datetime",extra=" on update CURRENT_TIMESTAMP") + private LocalDateTime updateTime; + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/jpa/lazy/LazyNettyClientRouteLazyJpaRepository.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/jpa/lazy/LazyNettyClientRouteLazyJpaRepository.java new file mode 100644 index 0000000..c77abbc --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/jpa/lazy/LazyNettyClientRouteLazyJpaRepository.java @@ -0,0 +1,18 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.jpa.lazy; + +import org.wu.framework.lazy.orm.database.jpa.repository.LazyJpaRepository; +import org.wu.framework.lazy.orm.database.jpa.repository.annotation.*; +import org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.entity.LazyNettyClientRouteDO; +/** + * describe 客户端代理路由规则 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyInfrastructureLazyJpa + **/ +@LazyRepository +public interface LazyNettyClientRouteLazyJpaRepository extends LazyJpaRepository { + + + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/jpa/lazy/LazyNettyServerRouteLazyJpaRepository.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/jpa/lazy/LazyNettyServerRouteLazyJpaRepository.java new file mode 100644 index 0000000..f8e0738 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/jpa/lazy/LazyNettyServerRouteLazyJpaRepository.java @@ -0,0 +1,18 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.jpa.lazy; + +import org.wu.framework.lazy.orm.database.jpa.repository.LazyJpaRepository; +import org.wu.framework.lazy.orm.database.jpa.repository.annotation.*; +import org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.entity.LazyNettyServerRouteDO; +/** + * describe 服务端路由 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyInfrastructureLazyJpa + **/ +@LazyRepository +public interface LazyNettyServerRouteLazyJpaRepository extends LazyJpaRepository { + + + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/mapper/LazyNettyClientRouteMapper.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/mapper/LazyNettyClientRouteMapper.java new file mode 100644 index 0000000..3053883 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/mapper/LazyNettyClientRouteMapper.java @@ -0,0 +1,15 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.mapper; + +/** + * describe 客户端代理路由规则 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyInfrastructureMapper + **/ + +public interface LazyNettyClientRouteMapper { + + + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/mapper/LazyNettyServerRouteMapper.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/mapper/LazyNettyServerRouteMapper.java new file mode 100644 index 0000000..6d324d7 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/mapper/LazyNettyServerRouteMapper.java @@ -0,0 +1,15 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.mapper; + +/** + * describe 服务端路由 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyInfrastructureMapper + **/ + +public interface LazyNettyServerRouteMapper { + + + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/persistence/LazyNettyClientRouteRepositoryImpl.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/persistence/LazyNettyClientRouteRepositoryImpl.java new file mode 100644 index 0000000..dbaeb29 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/persistence/LazyNettyClientRouteRepositoryImpl.java @@ -0,0 +1,160 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.persistence; + +import org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.entity.LazyNettyClientRouteDO; +import org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.converter.LazyNettyClientRouteConverter; +import org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.mapper.LazyNettyClientRouteMapper; +import org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.client.route.LazyNettyClientRouteRepository; +import org.springframework.stereotype.Repository; +import java.util.stream.Collectors; + +import org.wu.framework.lazy.orm.database.lambda.stream.wrapper.LazyUpdateSetValueWrappers; +import org.wu.framework.lazy.orm.database.lambda.stream.wrapper.LazyWrappers; +import org.wu.framework.web.response.Result; +import org.wu.framework.web.response.ResultFactory; +import jakarta.annotation.Resource; +import org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.client.route.LazyNettyClientRoute; +import org.wu.framework.lazy.orm.database.lambda.stream.lambda.LazyLambdaStream; +import java.util.List; +import org.wu.framework.lazy.orm.database.lambda.domain.LazyPage; +/** + * describe 客户端代理路由规则 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyInfrastructurePersistence + **/ +@Repository +public class LazyNettyClientRouteRepositoryImpl implements LazyNettyClientRouteRepository { + + @Resource + LazyLambdaStream lazyLambdaStream; + + /** + * describe 新增客户端代理路由规则 + * + * @param lazyNettyClientRoute 新增客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则新增后领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result story(LazyNettyClientRoute lazyNettyClientRoute) { + LazyNettyClientRouteDO lazyNettyClientRouteDO = LazyNettyClientRouteConverter.INSTANCE.fromLazyNettyClientRoute(lazyNettyClientRoute); + lazyLambdaStream.upsert(lazyNettyClientRouteDO); + return ResultFactory.successOf(); + } + + /** + * describe 批量新增客户端代理路由规则 + * + * @param lazyNettyClientRouteList 批量新增客户端代理路由规则 + * @return {@link Result>} 客户端代理路由规则新增后领域对象集合 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result> batchStory(List lazyNettyClientRouteList) { + List lazyNettyClientRouteDOList = lazyNettyClientRouteList.stream().map(LazyNettyClientRouteConverter.INSTANCE::fromLazyNettyClientRoute).collect(Collectors.toList()); + lazyLambdaStream.upsert(lazyNettyClientRouteDOList); + return ResultFactory.successOf(); + } + + /** + * describe 查询单个客户端代理路由规则 + * + * @param lazyNettyClientRoute 查询单个客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result findOne(LazyNettyClientRoute lazyNettyClientRoute) { + LazyNettyClientRouteDO lazyNettyClientRouteDO = LazyNettyClientRouteConverter.INSTANCE.fromLazyNettyClientRoute(lazyNettyClientRoute); + LazyNettyClientRoute lazyNettyClientRouteOne = lazyLambdaStream.selectOne(LazyWrappers.lambdaWrapperBean(lazyNettyClientRouteDO), LazyNettyClientRoute.class); + return ResultFactory.successOf(lazyNettyClientRouteOne); + } + + /** + * describe 查询多个客户端代理路由规则 + * + * @param lazyNettyClientRoute 查询多个客户端代理路由规则 + * @return {@link Result>} 客户端代理路由规则领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result> findList(LazyNettyClientRoute lazyNettyClientRoute) { + LazyNettyClientRouteDO lazyNettyClientRouteDO = LazyNettyClientRouteConverter.INSTANCE.fromLazyNettyClientRoute(lazyNettyClientRoute); + List lazyNettyClientRouteList = lazyLambdaStream.selectList(LazyWrappers.lambdaWrapperBean(lazyNettyClientRouteDO), LazyNettyClientRoute.class); + return ResultFactory.successOf(lazyNettyClientRouteList); + } + + /** + * describe 分页查询多个客户端代理路由规则 + * + * @param size 当前页数 + * @param current 当前页 + * @param lazyNettyClientRoute 分页查询多个客户端代理路由规则 + * @return {@link Result>} 分页客户端代理路由规则领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result> findPage(int size,int current,LazyNettyClientRoute lazyNettyClientRoute) { + LazyNettyClientRouteDO lazyNettyClientRouteDO = LazyNettyClientRouteConverter.INSTANCE.fromLazyNettyClientRoute(lazyNettyClientRoute); + LazyPage lazyPage = new LazyPage<>(current,size); + LazyPage lazyNettyClientRouteLazyPage = lazyLambdaStream.selectPage(LazyWrappers.lambdaWrapperBean(lazyNettyClientRouteDO),lazyPage, LazyNettyClientRoute.class); + return ResultFactory.successOf(lazyNettyClientRouteLazyPage); + } + + /** + * describe 删除客户端代理路由规则 + * + * @param lazyNettyClientRoute 删除客户端代理路由规则 + * @return {@link Result} 客户端代理路由规则 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result remove(LazyNettyClientRoute lazyNettyClientRoute) { + LazyNettyClientRouteDO lazyNettyClientRouteDO = LazyNettyClientRouteConverter.INSTANCE.fromLazyNettyClientRoute(lazyNettyClientRoute); + lazyLambdaStream.update(LazyUpdateSetValueWrappers.lambdaWrapper() + .set(LazyNettyClientRouteDO::getIsDeleted, true), + LazyWrappers + .lambdaWrapper() + .eq(LazyNettyClientRouteDO::getId, lazyNettyClientRoute.getId()) + + ); + return ResultFactory.successOf(); + } + + /** + * describe 是否存在客户端代理路由规则 + * + * @param lazyNettyClientRoute 客户端代理路由规则领域对象 + * @return {@link Result} 是否存在 true 存在,false 不存在 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result exists(LazyNettyClientRoute lazyNettyClientRoute) { + LazyNettyClientRouteDO lazyNettyClientRouteDO = LazyNettyClientRouteConverter.INSTANCE.fromLazyNettyClientRoute(lazyNettyClientRoute); + Boolean exists=lazyLambdaStream.exists(LazyWrappers.lambdaWrapperBean(lazyNettyClientRouteDO)); + return ResultFactory.successOf(exists); + } + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/persistence/LazyNettyServerRouteRepositoryImpl.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/persistence/LazyNettyServerRouteRepositoryImpl.java new file mode 100644 index 0000000..d677627 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/persistence/LazyNettyServerRouteRepositoryImpl.java @@ -0,0 +1,160 @@ +package org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.persistence; + +import org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.entity.LazyNettyServerRouteDO; +import org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.converter.LazyNettyServerRouteConverter; +import org.framework.lazy.cloud.network.heartbeat.protocol.infrastructure.mapper.LazyNettyServerRouteMapper; +import org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.server.route.LazyNettyServerRouteRepository; +import org.springframework.stereotype.Repository; +import java.util.stream.Collectors; + +import org.wu.framework.lazy.orm.database.lambda.stream.wrapper.LazyUpdateSetValueWrappers; +import org.wu.framework.lazy.orm.database.lambda.stream.wrapper.LazyWrappers; +import org.wu.framework.web.response.Result; +import org.wu.framework.web.response.ResultFactory; +import jakarta.annotation.Resource; +import org.framework.lazy.cloud.network.heartbeat.protocol.domain.model.lazy.netty.server.route.LazyNettyServerRoute; +import org.wu.framework.lazy.orm.database.lambda.stream.lambda.LazyLambdaStream; +import java.util.List; +import org.wu.framework.lazy.orm.database.lambda.domain.LazyPage; +/** + * describe 服务端路由 + * + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyInfrastructurePersistence + **/ +@Repository +public class LazyNettyServerRouteRepositoryImpl implements LazyNettyServerRouteRepository { + + @Resource + LazyLambdaStream lazyLambdaStream; + + /** + * describe 新增服务端路由 + * + * @param lazyNettyServerRoute 新增服务端路由 + * @return {@link Result} 服务端路由新增后领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result story(LazyNettyServerRoute lazyNettyServerRoute) { + LazyNettyServerRouteDO lazyNettyServerRouteDO = LazyNettyServerRouteConverter.INSTANCE.fromLazyNettyServerRoute(lazyNettyServerRoute); + lazyLambdaStream.upsert(lazyNettyServerRouteDO); + return ResultFactory.successOf(); + } + + /** + * describe 批量新增服务端路由 + * + * @param lazyNettyServerRouteList 批量新增服务端路由 + * @return {@link Result>} 服务端路由新增后领域对象集合 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result> batchStory(List lazyNettyServerRouteList) { + List lazyNettyServerRouteDOList = lazyNettyServerRouteList.stream().map(LazyNettyServerRouteConverter.INSTANCE::fromLazyNettyServerRoute).collect(Collectors.toList()); + lazyLambdaStream.upsert(lazyNettyServerRouteDOList); + return ResultFactory.successOf(); + } + + /** + * describe 查询单个服务端路由 + * + * @param lazyNettyServerRoute 查询单个服务端路由 + * @return {@link Result} 服务端路由领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result findOne(LazyNettyServerRoute lazyNettyServerRoute) { + LazyNettyServerRouteDO lazyNettyServerRouteDO = LazyNettyServerRouteConverter.INSTANCE.fromLazyNettyServerRoute(lazyNettyServerRoute); + LazyNettyServerRoute lazyNettyServerRouteOne = lazyLambdaStream.selectOne(LazyWrappers.lambdaWrapperBean(lazyNettyServerRouteDO), LazyNettyServerRoute.class); + return ResultFactory.successOf(lazyNettyServerRouteOne); + } + + /** + * describe 查询多个服务端路由 + * + * @param lazyNettyServerRoute 查询多个服务端路由 + * @return {@link Result>} 服务端路由领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result> findList(LazyNettyServerRoute lazyNettyServerRoute) { + LazyNettyServerRouteDO lazyNettyServerRouteDO = LazyNettyServerRouteConverter.INSTANCE.fromLazyNettyServerRoute(lazyNettyServerRoute); + List lazyNettyServerRouteList = lazyLambdaStream.selectList(LazyWrappers.lambdaWrapperBean(lazyNettyServerRouteDO), LazyNettyServerRoute.class); + return ResultFactory.successOf(lazyNettyServerRouteList); + } + + /** + * describe 分页查询多个服务端路由 + * + * @param size 当前页数 + * @param current 当前页 + * @param lazyNettyServerRoute 分页查询多个服务端路由 + * @return {@link Result>} 分页服务端路由领域对象 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result> findPage(int size,int current,LazyNettyServerRoute lazyNettyServerRoute) { + LazyNettyServerRouteDO lazyNettyServerRouteDO = LazyNettyServerRouteConverter.INSTANCE.fromLazyNettyServerRoute(lazyNettyServerRoute); + LazyPage lazyPage = new LazyPage<>(current,size); + LazyPage lazyNettyServerRouteLazyPage = lazyLambdaStream.selectPage(LazyWrappers.lambdaWrapperBean(lazyNettyServerRouteDO),lazyPage, LazyNettyServerRoute.class); + return ResultFactory.successOf(lazyNettyServerRouteLazyPage); + } + + /** + * describe 删除服务端路由 + * + * @param lazyNettyServerRoute 删除服务端路由 + * @return {@link Result} 服务端路由 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result remove(LazyNettyServerRoute lazyNettyServerRoute) { + LazyNettyServerRouteDO lazyNettyServerRouteDO = LazyNettyServerRouteConverter.INSTANCE.fromLazyNettyServerRoute(lazyNettyServerRoute); + lazyLambdaStream.update(LazyUpdateSetValueWrappers.lambdaWrapper() + .set(LazyNettyServerRouteDO::getIsDeleted, true), + LazyWrappers + .lambdaWrapper() + .eq(LazyNettyServerRouteDO::getId, lazyNettyServerRoute.getId()) + + ); + return ResultFactory.successOf(); + } + + /** + * describe 是否存在服务端路由 + * + * @param lazyNettyServerRoute 服务端路由领域对象 + * @return {@link Result} 是否存在 true 存在,false 不存在 + + * @author Jia wei Wu + * @date 2025/04/05 05:57 下午 + **/ + + @Override + public Result exists(LazyNettyServerRoute lazyNettyServerRoute) { + LazyNettyServerRouteDO lazyNettyServerRouteDO = LazyNettyServerRouteConverter.INSTANCE.fromLazyNettyServerRoute(lazyNettyServerRoute); + Boolean exists=lazyLambdaStream.exists(LazyWrappers.lambdaWrapperBean(lazyNettyServerRouteDO)); + return ResultFactory.successOf(exists); + } + +} \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/xml/LazyNettyClientRouteMapper.xml b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/xml/LazyNettyClientRouteMapper.xml new file mode 100644 index 0000000..eb4bfca --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/xml/LazyNettyClientRouteMapper.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/xml/LazyNettyServerRouteMapper.xml b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/xml/LazyNettyServerRouteMapper.xml new file mode 100644 index 0000000..ac53d10 --- /dev/null +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/infrastructure/xml/LazyNettyServerRouteMapper.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/route/RouteType.java b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/route/RouteType.java index 8217ba2..bb6fbc9 100644 --- a/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/route/RouteType.java +++ b/wu-lazy-cloud-heartbeat-protocol-proxy/src/main/java/org/framework/lazy/cloud/network/heartbeat/protocol/route/RouteType.java @@ -7,8 +7,8 @@ import lombok.Getter; @Getter public enum RouteType { LOCAL("本地路由"), - REMOTE_CLIENT("远程客户端路由"), - REMOTE_SEVER("远程服务端路由"); + CLIENT_PROXY_CLIENT("客户端远程客户端路由"), + CLIENT_PROXY_SEVER("客户端远程服务端路由"); private final String desc;