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 <[email protected]>
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());
}