This is an automated email from the ASF dual-hosted git repository.

xiaoyu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shenyu.git


The following commit(s) were added to refs/heads/master by this push:
     new 5b8e7d07f6 [type:refactor] Optimize code for shenyu-client (#5866)
5b8e7d07f6 is described below

commit 5b8e7d07f68e36d4457f354d57b4cbf5411ef817
Author: po-168 <po...@foxmail.com>
AuthorDate: Fri Dec 27 15:16:13 2024 +0800

    [type:refactor] Optimize code for shenyu-client (#5866)
---
 .../client/auto/config/ClientRegisterConfiguration.java       |  8 ++------
 .../subcriber/ShenyuClientApiDocExecutorSubscriber.java       |  4 +---
 .../subcriber/ShenyuClientMetadataExecutorSubscriber.java     |  4 +---
 .../core/exception/ShenyuClientIllegalArgumentException.java  |  2 ++
 .../client/core/register/ClientApiRefreshedEventListener.java | 11 ++++-------
 .../client/core/register/extractor/BaseApiBeansExtractor.java |  8 ++------
 .../shenyu/client/core/register/registrar/ApiRegistrar.java   |  4 +---
 .../client/core/register/registrar/BaseApiRegistrarImpl.java  |  4 +---
 .../shenyu/client/core/shutdown/ShutdownHookManager.java      |  6 ++----
 .../springcloud/init/SpringCloudClientEventListener.java      |  2 +-
 .../springcloud/register/SpringCloudApiMetaRegister.java      |  2 +-
 .../client/springmvc/init/SpringMvcClientEventListener.java   |  2 +-
 .../spring/websocket/init/ShenyuServerEndpointerExporter.java |  4 ++--
 13 files changed, 21 insertions(+), 40 deletions(-)

diff --git 
a/shenyu-client/shenyu-client-autoconfig/src/main/java/org/apache/shenyu/client/auto/config/ClientRegisterConfiguration.java
 
b/shenyu-client/shenyu-client-autoconfig/src/main/java/org/apache/shenyu/client/auto/config/ClientRegisterConfiguration.java
index 06dd081027..daa1ddc6e5 100644
--- 
a/shenyu-client/shenyu-client-autoconfig/src/main/java/org/apache/shenyu/client/auto/config/ClientRegisterConfiguration.java
+++ 
b/shenyu-client/shenyu-client-autoconfig/src/main/java/org/apache/shenyu/client/auto/config/ClientRegisterConfiguration.java
@@ -60,9 +60,7 @@ public class ClientRegisterConfiguration {
     @Bean
     public MateDataApiRegistrarImpl mateDataApiRegistrarImpl(final 
ClientRegisterConfig clientRegisterConfig, final List<ApiRegisterProcessor> 
processor) {
         final MateDataApiRegistrarImpl apiRegistrarImpl = new 
MateDataApiRegistrarImpl(clientRegisterConfig);
-        for (ApiRegisterProcessor apiProcessor : processor) {
-            apiRegistrarImpl.addApiProcessor(apiProcessor);
-        }
+        processor.forEach(apiRegistrarImpl::addApiProcessor);
         return apiRegistrarImpl;
     }
 
@@ -76,9 +74,7 @@ public class ClientRegisterConfiguration {
     @Bean
     public ApiDocRegistrarImpl apiDocRegistrarImpl(final ClientRegisterConfig 
clientRegisterConfig, final List<ApiRegisterProcessor> processor) {
         final ApiDocRegistrarImpl apiRegistrarImpl = new 
ApiDocRegistrarImpl(clientRegisterConfig);
-        for (ApiRegisterProcessor apiProcessor : processor) {
-            apiRegistrarImpl.addApiProcessor(apiProcessor);
-        }
+        processor.forEach(apiRegistrarImpl::addApiProcessor);
         return apiRegistrarImpl;
     }
 
diff --git 
a/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/disruptor/subcriber/ShenyuClientApiDocExecutorSubscriber.java
 
b/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/disruptor/subcriber/ShenyuClientApiDocExecutorSubscriber.java
index 24d239e73f..4a5a7a5159 100644
--- 
a/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/disruptor/subcriber/ShenyuClientApiDocExecutorSubscriber.java
+++ 
b/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/disruptor/subcriber/ShenyuClientApiDocExecutorSubscriber.java
@@ -46,8 +46,6 @@ public class ShenyuClientApiDocExecutorSubscriber implements 
ExecutorTypeSubscri
 
     @Override
     public void executor(final Collection<ApiDocRegisterDTO> dataList) {
-        for (ApiDocRegisterDTO apiDocRegisterDTO : dataList) {
-            shenyuClientRegisterRepository.persistApiDoc(apiDocRegisterDTO);
-        }
+        dataList.forEach(shenyuClientRegisterRepository::persistApiDoc);
     }
 }
diff --git 
a/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/disruptor/subcriber/ShenyuClientMetadataExecutorSubscriber.java
 
b/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/disruptor/subcriber/ShenyuClientMetadataExecutorSubscriber.java
index 9f0035f1ea..5fd43313b8 100644
--- 
a/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/disruptor/subcriber/ShenyuClientMetadataExecutorSubscriber.java
+++ 
b/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/disruptor/subcriber/ShenyuClientMetadataExecutorSubscriber.java
@@ -47,8 +47,6 @@ public class ShenyuClientMetadataExecutorSubscriber 
implements ExecutorTypeSubsc
     
     @Override
     public void executor(final Collection<MetaDataRegisterDTO> 
metaDataRegisterDTOList) {
-        for (MetaDataRegisterDTO metaDataRegisterDTO : 
metaDataRegisterDTOList) {
-            
shenyuClientRegisterRepository.persistInterface(metaDataRegisterDTO);
-        }
+        
metaDataRegisterDTOList.forEach(shenyuClientRegisterRepository::persistInterface);
     }
 }
diff --git 
a/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/exception/ShenyuClientIllegalArgumentException.java
 
b/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/exception/ShenyuClientIllegalArgumentException.java
index 9b3f7b7768..0974a5655f 100644
--- 
a/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/exception/ShenyuClientIllegalArgumentException.java
+++ 
b/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/exception/ShenyuClientIllegalArgumentException.java
@@ -22,6 +22,8 @@ package org.apache.shenyu.client.core.exception;
  */
 public class ShenyuClientIllegalArgumentException extends 
IllegalArgumentException {
 
+    private static final long serialVersionUID = -5608921593520024291L;
+
     /**
      * Constructs an <code>IllegalArgumentException</code> with the
      * specified detail message.
diff --git 
a/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/register/ClientApiRefreshedEventListener.java
 
b/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/register/ClientApiRefreshedEventListener.java
index 9102838f4c..3fc805494b 100644
--- 
a/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/register/ClientApiRefreshedEventListener.java
+++ 
b/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/register/ClientApiRefreshedEventListener.java
@@ -42,13 +42,10 @@ public final class ClientApiRefreshedEventListener 
implements ApplicationListene
         // Collect all types of RPC client APIs
         List<ApiBean> apiBeans = 
apiBeanExtractor.extract(event.getApplicationContext());
         // Register different metadata
-        for (ApiRegistrar registrar : apiRegistrars) {
-            // Optimization point: parallel registration
-            // Each registrar holds a copy of the full API information,
-            // which is not complete and can be modified during the 
registration process
-            
-            registrar.register(copy(apiBeans));
-        }
+        // Optimization point: parallel registration
+        // Each registrar holds a copy of the full API information,
+        // which is not complete and can be modified during the registration 
process
+        apiRegistrars.forEach(registrar -> registrar.register(copy(apiBeans)));
     }
     
     @NotNull
diff --git 
a/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/register/extractor/BaseApiBeansExtractor.java
 
b/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/register/extractor/BaseApiBeansExtractor.java
index 6010e7983f..eeecda9a12 100644
--- 
a/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/register/extractor/BaseApiBeansExtractor.java
+++ 
b/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/register/extractor/BaseApiBeansExtractor.java
@@ -89,9 +89,7 @@ public abstract class BaseApiBeansExtractor implements 
RpcApiBeansExtractor {
      * @param api api
      */
     protected void apiPostProcess(final ApiBean api) {
-        for (ExtractorProcessor apiAnnotationProcessor : extractorProcessors) {
-            apiAnnotationProcessor.process(api);
-        }
+        extractorProcessors.forEach(apiAnnotationProcessor -> 
apiAnnotationProcessor.process(api));
         LOG.debug("[Shenyu Client] extract api info [{}]", api);
     }
     
@@ -147,9 +145,7 @@ public abstract class BaseApiBeansExtractor implements 
RpcApiBeansExtractor {
      * @param apiDefinition apiDefinition
      */
     protected void definitionPostProcess(final ApiBean.ApiDefinition 
apiDefinition) {
-        for (ExtractorProcessor apiAnnotationProcessor : extractorProcessors) {
-            apiAnnotationProcessor.process(apiDefinition);
-        }
+        extractorProcessors.forEach(apiAnnotationProcessor -> 
apiAnnotationProcessor.process(apiDefinition));
         LOG.debug("[Shenyu Client] extract api definition info [{}]", 
apiDefinition);
     }
     
diff --git 
a/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/register/registrar/ApiRegistrar.java
 
b/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/register/registrar/ApiRegistrar.java
index 7a36982331..0973b3f4cd 100644
--- 
a/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/register/registrar/ApiRegistrar.java
+++ 
b/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/register/registrar/ApiRegistrar.java
@@ -30,9 +30,7 @@ public interface ApiRegistrar {
      * @param beans apiBean to register
      */
     default void register(List<ApiBean> beans) {
-        for (ApiBean bean : beans) {
-            register(bean);
-        }
+        beans.forEach(this::register);
     }
     
     /**
diff --git 
a/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/register/registrar/BaseApiRegistrarImpl.java
 
b/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/register/registrar/BaseApiRegistrarImpl.java
index 7b77480da6..fd3db680ac 100644
--- 
a/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/register/registrar/BaseApiRegistrarImpl.java
+++ 
b/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/register/registrar/BaseApiRegistrarImpl.java
@@ -51,9 +51,7 @@ public abstract class BaseApiRegistrarImpl implements 
ApiRegistrar, Initializing
     
     @Override
     public void register(final ApiBean apiBean) {
-        for (ApiRegisterProcessor processor : processors) {
-            processor.process(apiBean);
-        }
+        processors.forEach(processor -> processor.process(apiBean));
         if (ApiBean.Status.INIT.equals(apiBean.getStatus())) {
             // default register all api
             apiBean.setStatus(ApiBean.Status.REGISTRABLE_API);
diff --git 
a/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/shutdown/ShutdownHookManager.java
 
b/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/shutdown/ShutdownHookManager.java
index 5d0952b788..eb308f212f 100644
--- 
a/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/shutdown/ShutdownHookManager.java
+++ 
b/shenyu-client/shenyu-client-core/src/main/java/org/apache/shenyu/client/core/shutdown/ShutdownHookManager.java
@@ -86,9 +86,7 @@ public final class ShutdownHookManager {
         }
         list.sort((o1, o2) -> o2.priority - o1.priority);
         List<Runnable> ordered = new ArrayList<>();
-        for (HookEntry entry : list) {
-            ordered.add(entry.hook);
-        }
+        list.forEach(entry -> ordered.add(entry.hook));
         return ordered;
     }
 
@@ -200,7 +198,7 @@ public final class ShutdownHookManager {
             if (this == o) {
                 return true;
             }
-            if (o == null || getClass() != o.getClass()) {
+            if (Objects.isNull(o) || getClass() != o.getClass()) {
                 return false;
             }
             HookEntry hookEntry = (HookEntry) o;
diff --git 
a/shenyu-client/shenyu-client-http/shenyu-client-springcloud/src/main/java/org/apache/shenyu/client/springcloud/init/SpringCloudClientEventListener.java
 
b/shenyu-client/shenyu-client-http/shenyu-client-springcloud/src/main/java/org/apache/shenyu/client/springcloud/init/SpringCloudClientEventListener.java
index a6c5599fbd..4778964dc6 100644
--- 
a/shenyu-client/shenyu-client-http/shenyu-client-springcloud/src/main/java/org/apache/shenyu/client/springcloud/init/SpringCloudClientEventListener.java
+++ 
b/shenyu-client/shenyu-client-http/shenyu-client-springcloud/src/main/java/org/apache/shenyu/client/springcloud/init/SpringCloudClientEventListener.java
@@ -276,7 +276,7 @@ public class SpringCloudClientEventListener extends 
AbstractContextRefreshedEven
     
     @Override
     public String getPort() {
-        final int port = 
Integer.parseInt(Optional.ofNullable(super.getPort()).orElseGet(() -> "-1"));
+        final int port = 
Integer.parseInt(Optional.ofNullable(super.getPort()).orElse("-1"));
         final int mergedPort = port <= 0 ? 
PortUtils.findPort(getContext().getAutowireCapableBeanFactory()) : port;
         return String.valueOf(mergedPort);
     }
diff --git 
a/shenyu-client/shenyu-client-http/shenyu-client-springcloud/src/main/java/org/apache/shenyu/client/springcloud/register/SpringCloudApiMetaRegister.java
 
b/shenyu-client/shenyu-client-http/shenyu-client-springcloud/src/main/java/org/apache/shenyu/client/springcloud/register/SpringCloudApiMetaRegister.java
index 51f7c0c926..495273b946 100644
--- 
a/shenyu-client/shenyu-client-http/shenyu-client-springcloud/src/main/java/org/apache/shenyu/client/springcloud/register/SpringCloudApiMetaRegister.java
+++ 
b/shenyu-client/shenyu-client-http/shenyu-client-springcloud/src/main/java/org/apache/shenyu/client/springcloud/register/SpringCloudApiMetaRegister.java
@@ -95,7 +95,7 @@ public class SpringCloudApiMetaRegister extends 
AbstractApiMetaRegistrar {
     @Override
     protected Boolean match(final ApiBean apiBean) {
         ShenyuSpringCloudClient annotation = 
apiBean.getAnnotation(ShenyuSpringCloudClient.class);
-        if (annotation != null) {
+        if (Objects.nonNull(annotation)) {
             return !annotation.path()[0].endsWith("/**");
         }
         return true;
diff --git 
a/shenyu-client/shenyu-client-http/shenyu-client-springmvc/src/main/java/org/apache/shenyu/client/springmvc/init/SpringMvcClientEventListener.java
 
b/shenyu-client/shenyu-client-http/shenyu-client-springmvc/src/main/java/org/apache/shenyu/client/springmvc/init/SpringMvcClientEventListener.java
index 568bb91ab6..d2f89f8816 100644
--- 
a/shenyu-client/shenyu-client-http/shenyu-client-springmvc/src/main/java/org/apache/shenyu/client/springmvc/init/SpringMvcClientEventListener.java
+++ 
b/shenyu-client/shenyu-client-http/shenyu-client-springmvc/src/main/java/org/apache/shenyu/client/springmvc/init/SpringMvcClientEventListener.java
@@ -287,7 +287,7 @@ public class SpringMvcClientEventListener extends 
AbstractContextRefreshedEventL
 
     @Override
     public String getPort() {
-        final int port = 
Integer.parseInt(Optional.ofNullable(super.getPort()).orElseGet(() -> "-1"));
+        final int port = 
Integer.parseInt(Optional.ofNullable(super.getPort()).orElse("-1"));
         final int mergedPort = port <= 0 ? 
PortUtils.findPort(getContext().getAutowireCapableBeanFactory()) : port;
         return String.valueOf(mergedPort);
     }
diff --git 
a/shenyu-client/shenyu-client-websocket/shenyu-client-spring-websocket/src/main/java/org/apache/shenyu/client/spring/websocket/init/ShenyuServerEndpointerExporter.java
 
b/shenyu-client/shenyu-client-websocket/shenyu-client-spring-websocket/src/main/java/org/apache/shenyu/client/spring/websocket/init/ShenyuServerEndpointerExporter.java
index 772667d183..cde8e8d046 100644
--- 
a/shenyu-client/shenyu-client-websocket/shenyu-client-spring-websocket/src/main/java/org/apache/shenyu/client/spring/websocket/init/ShenyuServerEndpointerExporter.java
+++ 
b/shenyu-client/shenyu-client-websocket/shenyu-client-spring-websocket/src/main/java/org/apache/shenyu/client/spring/websocket/init/ShenyuServerEndpointerExporter.java
@@ -59,7 +59,7 @@ public class ShenyuServerEndpointerExporter extends 
WebApplicationObjectSupport
 
     @Override
     protected void initServletContext(final ServletContext servletContext) {
-        if (this.serverContainer == null) {
+        if (Objects.isNull(this.serverContainer)) {
             this.serverContainer = (ServerContainer) 
servletContext.getAttribute("jakarta.websocket.server.ServerContainer");
         }
     }
@@ -75,7 +75,7 @@ public class ShenyuServerEndpointerExporter extends 
WebApplicationObjectSupport
      */
     public void registerEndpoint(final Class<?> pojo) {
         ShenyuServerEndpoint annotation = 
AnnotatedElementUtils.findMergedAnnotation(pojo, ShenyuServerEndpoint.class);
-        if (annotation == null) {
+        if (Objects.isNull(annotation)) {
             throw new ShenyuException("Class missing annotation 
ShenyuServerEndpoint! class name: " + pojo.getName());
         }
 

Reply via email to