From f0b9df7af26c367f9295f3888c4e07917ab1d3e7 Mon Sep 17 00:00:00 2001 From: Mercy Ma Date: Wed, 15 Jan 2025 12:16:07 +0800 Subject: [PATCH 1/2] Polish #27 --- .../autoconfigure/EnableFeignAutoRefresh.java | 9 ++++++++- ...=> FeignClientAutoRefreshAutoConfiguration.java} | 13 ++++++++++--- .../src/main/resources/META-INF/spring.factories | 2 ++ 3 files changed, 20 insertions(+), 4 deletions(-) rename microsphere-spring-cloud-openfeign/src/main/java/io/microsphere/spring/cloud/openfeign/autoconfigure/{FeignClientAutoRefreshConfiguration.java => FeignClientAutoRefreshAutoConfiguration.java} (77%) create mode 100644 microsphere-spring-cloud-openfeign/src/main/resources/META-INF/spring.factories diff --git a/microsphere-spring-cloud-openfeign/src/main/java/io/microsphere/spring/cloud/openfeign/autoconfigure/EnableFeignAutoRefresh.java b/microsphere-spring-cloud-openfeign/src/main/java/io/microsphere/spring/cloud/openfeign/autoconfigure/EnableFeignAutoRefresh.java index 6418883..1587b12 100644 --- a/microsphere-spring-cloud-openfeign/src/main/java/io/microsphere/spring/cloud/openfeign/autoconfigure/EnableFeignAutoRefresh.java +++ b/microsphere-spring-cloud-openfeign/src/main/java/io/microsphere/spring/cloud/openfeign/autoconfigure/EnableFeignAutoRefresh.java @@ -9,12 +9,19 @@ import java.lang.annotation.Target; /** + * Enable Feign Auto Refresh + * * @author 韩超 + * @author Mercy + * @see FeignClientAutoRefreshAutoConfiguration * @since 0.0.1 */ @Retention(RetentionPolicy.RUNTIME) @Target({ElementType.TYPE}) @Documented -@Import(FeignClientAutoRefreshConfiguration.class) +@Import(FeignClientAutoRefreshAutoConfiguration.class) public @interface EnableFeignAutoRefresh { + + class Marker { + } } diff --git a/microsphere-spring-cloud-openfeign/src/main/java/io/microsphere/spring/cloud/openfeign/autoconfigure/FeignClientAutoRefreshConfiguration.java b/microsphere-spring-cloud-openfeign/src/main/java/io/microsphere/spring/cloud/openfeign/autoconfigure/FeignClientAutoRefreshAutoConfiguration.java similarity index 77% rename from microsphere-spring-cloud-openfeign/src/main/java/io/microsphere/spring/cloud/openfeign/autoconfigure/FeignClientAutoRefreshConfiguration.java rename to microsphere-spring-cloud-openfeign/src/main/java/io/microsphere/spring/cloud/openfeign/autoconfigure/FeignClientAutoRefreshAutoConfiguration.java index 2da3e20..93c5e36 100644 --- a/microsphere-spring-cloud-openfeign/src/main/java/io/microsphere/spring/cloud/openfeign/autoconfigure/FeignClientAutoRefreshConfiguration.java +++ b/microsphere-spring-cloud-openfeign/src/main/java/io/microsphere/spring/cloud/openfeign/autoconfigure/FeignClientAutoRefreshAutoConfiguration.java @@ -5,22 +5,29 @@ import io.microsphere.spring.cloud.openfeign.components.NoOpRequestInterceptor; import org.springframework.beans.factory.BeanFactory; import org.springframework.boot.autoconfigure.AutoConfigureAfter; +import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAutoConfiguration; import org.springframework.cloud.openfeign.FeignBuilderCustomizer; import org.springframework.cloud.openfeign.FeignClientProperties; import org.springframework.context.annotation.Bean; /** + * The Auto-Configuration class for {@link EnableFeignAutoRefresh} + * * @author 韩超 + * @author Mercy + * @see EnableFeignAutoRefresh * @since 0.0.1 */ +@ConditionalOnBean(EnableFeignAutoRefresh.Marker.class) @AutoConfigureAfter(ConfigurationPropertiesRebinderAutoConfiguration.class) -public class FeignClientAutoRefreshConfiguration { - +public class FeignClientAutoRefreshAutoConfiguration { @Bean public FeignBuilderCustomizer addDefaultRequestInterceptorCustomizer() { - return builder -> {builder.requestInterceptor(NoOpRequestInterceptor.INSTANCE);}; + return builder -> { + builder.requestInterceptor(NoOpRequestInterceptor.INSTANCE); + }; } @Bean diff --git a/microsphere-spring-cloud-openfeign/src/main/resources/META-INF/spring.factories b/microsphere-spring-cloud-openfeign/src/main/resources/META-INF/spring.factories new file mode 100644 index 0000000..896056c --- /dev/null +++ b/microsphere-spring-cloud-openfeign/src/main/resources/META-INF/spring.factories @@ -0,0 +1,2 @@ +org.springframework.boot.autoconfigure.EnableAutoConfiguration=\ +io.microsphere.spring.cloud.openfeign.autoconfigure.FeignClientAutoRefreshAutoConfiguration \ No newline at end of file From 0a1ee049fbc33921ab57aa085d97dc83983f9d06 Mon Sep 17 00:00:00 2001 From: Mercy Ma Date: Wed, 15 Jan 2025 12:17:38 +0800 Subject: [PATCH 2/2] Update maven-build.yml --- .github/workflows/maven-build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/maven-build.yml b/.github/workflows/maven-build.yml index f4e3661..df4fe00 100644 --- a/.github/workflows/maven-build.yml +++ b/.github/workflows/maven-build.yml @@ -12,7 +12,7 @@ on: push: branches: [ 'dev-1.x' ] pull_request: - branches: [ 'release-1.x' ] + branches: [ 'dev-1.x' , 'release-1.x' ] jobs: build: