From 646c56c4918660090e371ae3bc1cb2e8261e1e7e Mon Sep 17 00:00:00 2001 From: Mercy Ma Date: Mon, 6 Jan 2025 19:27:37 +0800 Subject: [PATCH 1/3] Polish #53 : Remove useless code --- .../microsphere/spring/webmvc/util/WebMvcUtils.java | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/util/WebMvcUtils.java b/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/util/WebMvcUtils.java index 890950da..dec8937f 100644 --- a/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/util/WebMvcUtils.java +++ b/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/util/WebMvcUtils.java @@ -67,17 +67,6 @@ public abstract class WebMvcUtils { public static final Set>> supportedConverterTypes; - /** - * The name of AbstractJsonpResponseBodyAdvice class which was present in Spring Framework since 4.1 - */ - public static final String ABSTRACT_JSONP_RESPONSE_BODY_ADVICE_CLASS_NAME = - "org.springframework.web.servlet.mvc.findWebApplicationContextMethod.annotation.AbstractJsonpResponseBodyAdvice"; - - /** - * Indicates current version of Spring Framework is 4.1 or above - */ - private final static boolean ABSTRACT_JSONP_RESPONSE_BODY_ADVICE_PRESENT = isPresent(ABSTRACT_JSONP_RESPONSE_BODY_ADVICE_CLASS_NAME, WebMvcUtils.class.getClassLoader()); - /** * {@link RequestMappingHandlerMapping} Context name */ From 71500892c1bde1ed18148ca0ba13a5ab0db91a39 Mon Sep 17 00:00:00 2001 From: Mercy Ma Date: Mon, 6 Jan 2025 19:30:51 +0800 Subject: [PATCH 2/3] Polish #53 : EventPublishingBeanAfterProcessor --- .../context/event/EventPublishingBeanAfterProcessor.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/EventPublishingBeanAfterProcessor.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/EventPublishingBeanAfterProcessor.java index 0030a884..b6d6ae62 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/EventPublishingBeanAfterProcessor.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/EventPublishingBeanAfterProcessor.java @@ -28,7 +28,6 @@ import org.springframework.context.event.ContextClosedEvent; import org.springframework.context.event.ContextRefreshedEvent; import org.springframework.core.ResolvableType; -import org.springframework.util.ClassUtils; import org.springframework.util.ReflectionUtils; import java.util.Map; @@ -38,6 +37,7 @@ import static io.microsphere.spring.context.event.BeanListeners.getBean; import static io.microsphere.spring.context.event.BeanListeners.getReadyBeanNames; +import static org.springframework.util.ClassUtils.resolveClassName; /** * Bean After-Event Publishing Processor @@ -47,7 +47,7 @@ */ class EventPublishingBeanAfterProcessor extends InstantiationAwareBeanPostProcessorAdapter implements GenericApplicationListenerAdapter { - private static final Class DISPOSABLE_BEAN_ADAPTER_CLASS = ClassUtils.resolveClassName("org.springframework.beans.factory.support.DisposableBeanAdapter", null); + private static final Class DISPOSABLE_BEAN_ADAPTER_CLASS = resolveClassName("org.springframework.beans.factory.support.DisposableBeanAdapter", null); private final ConfigurableApplicationContext context; From 9bdf9b6f4dda620edab79017ce619ab6a10600bc Mon Sep 17 00:00:00 2001 From: Mercy Ma Date: Mon, 6 Jan 2025 19:58:36 +0800 Subject: [PATCH 3/3] Polish #53 : static import --- .../microsphere/spring/beans/BeanUtils.java | 4 +- ...tractInjectionPointDependencyResolver.java | 4 +- .../DefaultBeanDependencyResolver.java | 8 +- .../spring/beans/factory/Dependency.java | 9 +-- .../beans/factory/DependencyTreeWalker.java | 6 +- .../AnnotatedInjectionBeanPostProcessor.java | 78 +++++++++---------- ...onBeanDefinitionRegistryPostProcessor.java | 10 +-- .../AnnotationInjectedBeanPostProcessor.java | 72 ++++++++--------- ...ConfigurationBeanBindingPostProcessor.java | 4 +- .../ConfigurationBeanBindingRegistrar.java | 11 ++- .../factory/config/BeanDefinitionUtils.java | 4 +- .../beans/factory/support/BeanRegistrar.java | 8 +- .../ListenableAutowireCandidateResolver.java | 4 +- ...ingAutowireCandidateResolvingListener.java | 5 +- .../cache/intereptor/TTLCacheResolver.java | 8 +- .../AnnotatedPropertySourceLoader.java | 4 +- .../PropertySourceExtensionLoader.java | 8 +- .../context/ApplicationContextUtils.java | 4 +- .../AnnotatedBeanDefinitionRegistryUtils.java | 11 +-- .../BeanCapableImportCandidate.java | 4 +- .../context/event/BeanFactoryListeners.java | 4 +- .../spring/context/event/BeanListeners.java | 4 +- .../DeferredApplicationEventPublisher.java | 4 +- ...DependencyAnalysisBeanFactoryListener.java | 4 +- .../EventPublishingBeanAfterProcessor.java | 6 +- .../event/LoggingBeanFactoryListener.java | 5 +- .../context/event/LoggingBeanListener.java | 5 +- .../OnceApplicationContextEventListener.java | 8 +- ...ntiationSingletonsBeanFactoryListener.java | 4 +- .../support/ConversionServiceResolver.java | 4 +- .../spring/core/env/EnvironmentUtils.java | 4 +- .../ListenableConfigurableEnvironment.java | 4 +- .../core/env/LoggingEnvironmentListener.java | 5 +- .../spring/core/env/PropertySourcesUtils.java | 4 +- .../support/SpringFactoriesLoaderUtils.java | 4 +- ...tionBeanBindingTestForMultipleBinding.java | 4 +- .../annotation/EnableEventExtensionTest.java | 4 +- .../context/event/BeanTimeStatisticsTest.java | 5 +- .../SpringProtocolURLStreamHandlerTest.java | 4 +- .../config/P6DataSourceBeanPostProcessor.java | 5 +- .../net/SpringP6SpyURLConnectionFactory.java | 5 +- .../AbstractWebEndpointMappingFactory.java | 4 +- .../Jackson2WebEndpointMappingFactory.java | 5 +- .../SmartWebEndpointMappingFactory.java | 4 +- .../DelegatingHandlerMethodAdvice.java | 4 +- .../web/rule/WebRequestPattensRule.java | 4 +- .../web/rule/WebRequestProducesRule.java | 4 +- .../servlet/filter/ContentCachingFilter.java | 5 +- ...ebMvcExtensionBeanDefinitionRegistrar.java | 4 +- ...entNegotiationManagerWebMvcConfigurer.java | 38 ++++----- .../handler/ReversedProxyHandlerMapping.java | 4 +- .../LazyCompositeHandlerInterceptor.java | 4 +- .../metadata/WebEndpointMappingRegistrar.java | 4 +- .../InterceptingHandlerMethodProcessor.java | 4 +- .../spring/webmvc/util/WebMvcUtils.java | 22 +++--- .../webmvc/config/IdempotentConfig.java | 5 +- 56 files changed, 235 insertions(+), 242 deletions(-) diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/BeanUtils.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/BeanUtils.java index 6f463c9d..c5058baa 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/BeanUtils.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/BeanUtils.java @@ -1,7 +1,6 @@ package io.microsphere.spring.beans; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.util.BaseUtils; import org.springframework.beans.BeansException; import org.springframework.beans.factory.Aware; @@ -38,6 +37,7 @@ import java.util.List; import java.util.Map; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.beans.factory.BeanFactoryUtils.asBeanDefinitionRegistry; import static io.microsphere.spring.beans.factory.BeanFactoryUtils.asConfigurableBeanFactory; import static io.microsphere.spring.context.ApplicationContextUtils.asConfigurableApplicationContext; @@ -63,7 +63,7 @@ */ public abstract class BeanUtils extends BaseUtils { - private static final Logger logger = LoggerFactory.getLogger(BeanUtils.class); + private static final Logger logger = getLogger(BeanUtils.class); /** * Is Bean Present or not? diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/AbstractInjectionPointDependencyResolver.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/AbstractInjectionPointDependencyResolver.java index e7d3e901..cb52fd00 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/AbstractInjectionPointDependencyResolver.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/AbstractInjectionPointDependencyResolver.java @@ -17,7 +17,6 @@ package io.microsphere.spring.beans.factory; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.beans.factory.filter.ResolvableDependencyTypeFilter; import org.springframework.beans.BeansException; import org.springframework.beans.factory.BeanFactory; @@ -36,6 +35,7 @@ import java.util.Set; import java.util.function.Supplier; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.reflect.TypeUtils.asClass; import static io.microsphere.reflect.TypeUtils.isParameterizedType; import static io.microsphere.reflect.TypeUtils.resolveActualTypeArguments; @@ -50,7 +50,7 @@ */ public abstract class AbstractInjectionPointDependencyResolver implements InjectionPointDependencyResolver, BeanFactoryAware { - private final Logger logger = LoggerFactory.getLogger(getClass()); + private final Logger logger = getLogger(getClass()); private ResolvableDependencyTypeFilter resolvableDependencyTypeFilter; diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/DefaultBeanDependencyResolver.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/DefaultBeanDependencyResolver.java index 10ff13bf..d254230b 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/DefaultBeanDependencyResolver.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/DefaultBeanDependencyResolver.java @@ -16,11 +16,9 @@ */ package io.microsphere.spring.beans.factory; -import io.microsphere.collection.CollectionUtils; import io.microsphere.collection.SetUtils; import io.microsphere.lang.function.ThrowableAction; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.beans.factory.filter.ResolvableDependencyTypeFilter; import org.springframework.beans.MutablePropertyValues; import org.springframework.beans.PropertyValue; @@ -54,10 +52,12 @@ import java.util.concurrent.TimeUnit; import java.util.function.Supplier; +import static io.microsphere.collection.CollectionUtils.isNotEmpty; import static io.microsphere.collection.ListUtils.newLinkedList; import static io.microsphere.collection.MapUtils.newHashMap; import static io.microsphere.collection.MapUtils.ofEntry; import static io.microsphere.lang.function.ThrowableSupplier.execute; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.reflect.MemberUtils.isStatic; import static io.microsphere.spring.beans.factory.BeanFactoryUtils.asDefaultListableBeanFactory; import static io.microsphere.spring.beans.factory.config.BeanDefinitionUtils.resolveBeanType; @@ -82,7 +82,7 @@ */ public class DefaultBeanDependencyResolver implements BeanDependencyResolver { - private static final Logger logger = LoggerFactory.getLogger(DefaultBeanDependencyResolver.class); + private static final Logger logger = getLogger(DefaultBeanDependencyResolver.class); private static final ThreadLocal> resolvedBeanMembersHolder = withInitial(SetUtils::newLinkedHashSet); @@ -250,7 +250,7 @@ private void flattenDependentBeanNamesMap(Map> dependentBean Set dependentBeanNames = entry.getValue(); for (String dependentBeanName : dependentBeanNames) { Set nestedDependentBeanNames = dependentBeanNamesMap.get(dependentBeanName); - if (CollectionUtils.isNotEmpty(nestedDependentBeanNames) && !dependentBeanNames.containsAll(nestedDependentBeanNames)) { + if (isNotEmpty(nestedDependentBeanNames) && !dependentBeanNames.containsAll(nestedDependentBeanNames)) { nonRootBeanNames.add(beanName); break; } diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/Dependency.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/Dependency.java index 264b1878..32b341df 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/Dependency.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/Dependency.java @@ -16,9 +16,6 @@ */ package io.microsphere.spring.beans.factory; -import io.microsphere.collection.CollectionUtils; -import io.microsphere.util.ArrayUtils; - import javax.annotation.Nullable; import java.util.Arrays; import java.util.Collection; @@ -26,8 +23,10 @@ import java.util.List; import java.util.Objects; +import static io.microsphere.collection.CollectionUtils.size; import static io.microsphere.collection.ListUtils.newArrayList; import static io.microsphere.collection.ListUtils.newLinkedList; +import static io.microsphere.util.ArrayUtils.length; import static java.util.Collections.emptyList; import static org.springframework.util.Assert.hasText; @@ -149,7 +148,7 @@ public static Dependency create(String beanName, Dependency parent, String... de } private static List createList(Iterable beanNames) { - int length = CollectionUtils.size(beanNames); + int length = size(beanNames); if (length < 1) { return emptyList(); } @@ -163,7 +162,7 @@ private static List createList(Iterable beanNames) { } private static List createList(String[] beanNames) { - int length = ArrayUtils.length(beanNames); + int length = length(beanNames); if (length < 1) { return emptyList(); } diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/DependencyTreeWalker.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/DependencyTreeWalker.java index a1f2e1b2..e112e0b7 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/DependencyTreeWalker.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/DependencyTreeWalker.java @@ -16,11 +16,11 @@ */ package io.microsphere.spring.beans.factory; -import io.microsphere.collection.CollectionUtils; - import java.util.Iterator; import java.util.List; +import static io.microsphere.collection.CollectionUtils.isEmpty; + /** * {@link Dependency} Tree Walker * @@ -54,7 +54,7 @@ private void removeIfDuplicated(Dependency dependency) { } private void walk(Dependency child, List siblings) { - if (CollectionUtils.isEmpty(siblings)) { + if (isEmpty(siblings)) { return; } if (siblings.contains(child)) { diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/AnnotatedInjectionBeanPostProcessor.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/AnnotatedInjectionBeanPostProcessor.java index 577fe3d0..1c06798e 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/AnnotatedInjectionBeanPostProcessor.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/AnnotatedInjectionBeanPostProcessor.java @@ -17,7 +17,6 @@ package io.microsphere.spring.beans.factory.annotation; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.beans.factory.config.InstantiationAwareBeanPostProcessorAdapter; import org.springframework.beans.BeanUtils; import org.springframework.beans.BeansException; @@ -46,7 +45,6 @@ import org.springframework.core.annotation.AnnotationAttributes; import org.springframework.core.env.Environment; import org.springframework.core.type.AnnotationMetadata; -import org.springframework.util.ReflectionUtils; import javax.annotation.Nullable; import java.beans.PropertyDescriptor; @@ -69,6 +67,7 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.beans.factory.BeanFactoryUtils.asConfigurableListableBeanFactory; import static io.microsphere.spring.core.annotation.AnnotationUtils.getAnnotationAttributes; import static java.util.Collections.singleton; @@ -79,6 +78,9 @@ import static org.springframework.util.Assert.notEmpty; import static org.springframework.util.ClassUtils.getMostSpecificMethod; import static org.springframework.util.ClassUtils.getUserClass; +import static org.springframework.util.ReflectionUtils.doWithFields; +import static org.springframework.util.ReflectionUtils.doWithMethods; +import static org.springframework.util.ReflectionUtils.makeAccessible; import static org.springframework.util.StringUtils.hasLength; /** @@ -110,7 +112,7 @@ public class AnnotatedInjectionBeanPostProcessor extends InstantiationAwareBeanP private final static int CACHE_SIZE = Integer.getInteger("microsphere.spring.injection.metadata.cache.size", 32); - private final Logger logger = LoggerFactory.getLogger(getClass()); + private final Logger logger = getLogger(getClass()); private final Collection> annotationTypes; @@ -304,27 +306,24 @@ private List findFieldAnnotationMetadata(final Class b final List elements = new LinkedList(); - ReflectionUtils.doWithFields(beanClass, new ReflectionUtils.FieldCallback() { - @Override - public void doWith(Field field) throws IllegalArgumentException, IllegalAccessException { + doWithFields(beanClass, field -> { - for (Class annotationType : getAnnotationTypes()) { + for (Class annotationType : getAnnotationTypes()) { - AnnotationAttributes attributes = doGetAnnotationAttributes(field, annotationType); + AnnotationAttributes attributes = doGetAnnotationAttributes(field, annotationType); - if (attributes != null) { + if (attributes != null) { - if (Modifier.isStatic(field.getModifiers())) { - if (logger.isWarnEnabled()) { - logger.warn("@" + annotationType.getName() + " is not supported on static fields: " + field); - } - return; + if (Modifier.isStatic(field.getModifiers())) { + if (logger.isWarnEnabled()) { + logger.warn("@" + annotationType.getName() + " is not supported on static fields: " + field); } + return; + } - boolean required = determineRequiredStatus(attributes); + boolean required = determineRequiredStatus(attributes); - elements.add(new AnnotatedFieldElement(field, attributes, required)); - } + elements.add(new AnnotatedFieldElement(field, attributes, required)); } } }); @@ -353,36 +352,33 @@ private List findAnnotatedMethodMetadata(final Class final List elements = new LinkedList(); - ReflectionUtils.doWithMethods(beanClass, new ReflectionUtils.MethodCallback() { - @Override - public void doWith(Method method) throws IllegalArgumentException, IllegalAccessException { + doWithMethods(beanClass, method -> { - Method bridgedMethod = findBridgedMethod(method); + Method bridgedMethod = findBridgedMethod(method); - if (!isVisibilityBridgeMethodPair(method, bridgedMethod)) { - return; - } + if (!isVisibilityBridgeMethodPair(method, bridgedMethod)) { + return; + } - for (Class annotationType : getAnnotationTypes()) { + for (Class annotationType : getAnnotationTypes()) { - AnnotationAttributes attributes = doGetAnnotationAttributes(bridgedMethod, annotationType); + AnnotationAttributes attributes = doGetAnnotationAttributes(bridgedMethod, annotationType); - if (attributes != null && method.equals(getMostSpecificMethod(method, beanClass))) { - if (Modifier.isStatic(method.getModifiers())) { - if (logger.isWarnEnabled()) { - logger.warn("@" + annotationType.getName() + " annotation is not supported on static methods: " + method); - } - return; + if (attributes != null && method.equals(getMostSpecificMethod(method, beanClass))) { + if (Modifier.isStatic(method.getModifiers())) { + if (logger.isWarnEnabled()) { + logger.warn("@" + annotationType.getName() + " annotation is not supported on static methods: " + method); } - if (method.getParameterTypes().length == 0) { - if (logger.isWarnEnabled()) { - logger.warn("@" + annotationType.getName() + " annotation should only be used on methods with parameters: " + method); - } + return; + } + if (method.getParameterTypes().length == 0) { + if (logger.isWarnEnabled()) { + logger.warn("@" + annotationType.getName() + " annotation should only be used on methods with parameters: " + method); } - PropertyDescriptor pd = BeanUtils.findPropertyForMethod(bridgedMethod, beanClass); - boolean required = determineRequiredStatus(attributes); - elements.add(new AnnotatedMethodElement(method, pd, attributes, required)); } + PropertyDescriptor pd = BeanUtils.findPropertyForMethod(bridgedMethod, beanClass); + boolean required = determineRequiredStatus(attributes); + elements.add(new AnnotatedMethodElement(method, pd, attributes, required)); } } }); @@ -693,7 +689,7 @@ protected void inject(Object bean, @Nullable String beanName, @Nullable Property value = resolveFieldValue(field, bean, beanName, pvs); } if (value != null) { - ReflectionUtils.makeAccessible(field); + makeAccessible(field); field.set(bean, value); } } @@ -767,7 +763,7 @@ protected void inject(Object bean, @Nullable String beanName, @Nullable Property } if (arguments != null) { try { - ReflectionUtils.makeAccessible(method); + makeAccessible(method); method.invoke(bean, arguments); } catch (InvocationTargetException ex) { throw ex.getTargetException(); diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/AnnotationBeanDefinitionRegistryPostProcessor.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/AnnotationBeanDefinitionRegistryPostProcessor.java index a1d56309..f337779d 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/AnnotationBeanDefinitionRegistryPostProcessor.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/AnnotationBeanDefinitionRegistryPostProcessor.java @@ -17,7 +17,6 @@ package io.microsphere.spring.beans.factory.annotation; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.context.annotation.ExposingClassPathBeanDefinitionScanner; import org.springframework.beans.BeansException; import org.springframework.beans.factory.BeanClassLoaderAware; @@ -36,7 +35,6 @@ import org.springframework.core.env.Environment; import org.springframework.core.io.ResourceLoader; import org.springframework.core.type.filter.AnnotationTypeFilter; -import org.springframework.util.ObjectUtils; import java.lang.annotation.Annotation; import java.lang.reflect.AnnotatedElement; @@ -46,10 +44,12 @@ import java.util.Map; import java.util.Set; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.beans.factory.BeanFactoryUtils.asConfigurableListableBeanFactory; import static io.microsphere.spring.context.annotation.AnnotatedBeanDefinitionRegistryUtils.resolveAnnotatedBeanNameGenerator; import static io.microsphere.spring.core.annotation.AnnotationUtils.tryGetMergedAnnotation; import static io.microsphere.spring.core.env.EnvironmentUtils.asConfigurableEnvironment; +import static io.microsphere.util.ArrayUtils.isNotEmpty; import static java.util.Arrays.asList; import static java.util.Collections.unmodifiableSet; import static org.springframework.util.Assert.noNullElements; @@ -81,7 +81,7 @@ public abstract class AnnotationBeanDefinitionRegistryPostProcessor implements BeanDefinitionRegistryPostProcessor, BeanFactoryAware, EnvironmentAware, ResourceLoaderAware, BeanClassLoaderAware { - protected final Logger logger = LoggerFactory.getLogger(getClass()); + protected final Logger logger = getLogger(getClass()); private final Set> supportedAnnotationTypes; @@ -144,7 +144,7 @@ public final void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry regis String[] basePackages = resolveBasePackages(getPackagesToScan()); - if (!ObjectUtils.isEmpty(basePackages)) { + if (isNotEmpty(basePackages)) { registerBeanDefinitions(registry, basePackages); } else { if (logger.isWarnEnabled()) { @@ -217,7 +217,7 @@ private void putPrimaryBeanDefinitions(Map prim private void putPrimaryBeanDefinition(Map primaryBeanDefinitions, AnnotatedBeanDefinition annotatedBeanDefinition, String... keys) { - if (!ObjectUtils.isEmpty(keys)) { + if (isNotEmpty(keys)) { for (String key : keys) { primaryBeanDefinitions.put(key, annotatedBeanDefinition); } diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/AnnotationInjectedBeanPostProcessor.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/AnnotationInjectedBeanPostProcessor.java index 8c03897a..9b828863 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/AnnotationInjectedBeanPostProcessor.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/AnnotationInjectedBeanPostProcessor.java @@ -17,7 +17,6 @@ package io.microsphere.spring.beans.factory.annotation; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.beans.factory.config.InstantiationAwareBeanPostProcessorAdapter; import org.springframework.beans.BeanUtils; import org.springframework.beans.BeansException; @@ -36,7 +35,6 @@ import org.springframework.core.Ordered; import org.springframework.core.PriorityOrdered; import org.springframework.core.env.Environment; -import org.springframework.util.ReflectionUtils; import java.beans.PropertyDescriptor; import java.lang.annotation.Annotation; @@ -53,6 +51,7 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.reflect.TypeUtils.resolveActualTypeArgumentClass; import static io.microsphere.spring.beans.factory.BeanFactoryUtils.asConfigurableListableBeanFactory; import static org.springframework.core.BridgeMethodResolver.findBridgedMethod; @@ -60,6 +59,9 @@ import static org.springframework.core.annotation.AnnotationUtils.findAnnotation; import static org.springframework.core.annotation.AnnotationUtils.getAnnotation; import static org.springframework.util.ClassUtils.getMostSpecificMethod; +import static org.springframework.util.ReflectionUtils.doWithFields; +import static org.springframework.util.ReflectionUtils.doWithMethods; +import static org.springframework.util.ReflectionUtils.makeAccessible; import static org.springframework.util.StringUtils.hasLength; /** @@ -80,7 +82,7 @@ public abstract class AnnotationInjectedBeanPostProcessor private final static PropertyDescriptor[] EMPTY_PROPERTY_DESCRIPTOR_ARRAY = new PropertyDescriptor[0]; - private final Logger logger = LoggerFactory.getLogger(getClass()); + private final Logger logger = getLogger(getClass()); private final Class annotationType; @@ -153,25 +155,22 @@ private List findFieldAnnotationMetadata(final Class b final List elements = new LinkedList(); - ReflectionUtils.doWithFields(beanClass, new ReflectionUtils.FieldCallback() { - @Override - public void doWith(Field field) throws IllegalArgumentException, IllegalAccessException { + doWithFields(beanClass, field -> { - A annotation = getAnnotation(field, getAnnotationType()); + A annotation = getAnnotation(field, getAnnotationType()); - if (annotation != null) { + if (annotation != null) { - if (Modifier.isStatic(field.getModifiers())) { - if (logger.isWarnEnabled()) { - logger.warn("@" + getAnnotationType().getName() + " is not supported on static fields: " + field); - } - return; + if (Modifier.isStatic(field.getModifiers())) { + if (logger.isWarnEnabled()) { + logger.warn("@" + getAnnotationType().getName() + " is not supported on static fields: " + field); } - - elements.add(new AnnotatedFieldElement(field, annotation)); + return; } + elements.add(new AnnotatedFieldElement(field, annotation)); } + }); return elements; @@ -188,34 +187,31 @@ private List findAnnotatedMethodMetadata(final Class final List elements = new LinkedList(); - ReflectionUtils.doWithMethods(beanClass, new ReflectionUtils.MethodCallback() { - @Override - public void doWith(Method method) throws IllegalArgumentException, IllegalAccessException { + doWithMethods(beanClass, method -> { - Method bridgedMethod = findBridgedMethod(method); + Method bridgedMethod = findBridgedMethod(method); - if (!isVisibilityBridgeMethodPair(method, bridgedMethod)) { - return; - } + if (!isVisibilityBridgeMethodPair(method, bridgedMethod)) { + return; + } - A annotation = findAnnotation(bridgedMethod, getAnnotationType()); + A annotation = findAnnotation(bridgedMethod, getAnnotationType()); - if (annotation != null && method.equals(getMostSpecificMethod(method, beanClass))) { - if (Modifier.isStatic(method.getModifiers())) { - if (logger.isWarnEnabled()) { - logger.warn("@" + getAnnotationType().getSimpleName() + " annotation is not supported on static methods: " + method); - } - return; + if (annotation != null && method.equals(getMostSpecificMethod(method, beanClass))) { + if (Modifier.isStatic(method.getModifiers())) { + if (logger.isWarnEnabled()) { + logger.warn("@" + getAnnotationType().getSimpleName() + " annotation is not supported on static methods: " + method); } - if (method.getParameterTypes().length == 0) { - if (logger.isWarnEnabled()) { - logger.warn("@" + getAnnotationType().getSimpleName() + " annotation should only be used on methods with parameters: " + - method); - } + return; + } + if (method.getParameterTypes().length == 0) { + if (logger.isWarnEnabled()) { + logger.warn("@" + getAnnotationType().getSimpleName() + " annotation should only be used on methods with parameters: " + + method); } - PropertyDescriptor pd = BeanUtils.findPropertyForMethod(bridgedMethod, beanClass); - elements.add(new AnnotatedMethodElement(method, pd, annotation)); } + PropertyDescriptor pd = BeanUtils.findPropertyForMethod(bridgedMethod, beanClass); + elements.add(new AnnotatedMethodElement(method, pd, annotation)); } }); @@ -494,7 +490,7 @@ protected void inject(Object bean, String beanName, PropertyValues pvs) throws T Object injectedObject = getInjectedObject(annotation, bean, beanName, injectedType, this); - ReflectionUtils.makeAccessible(method); + makeAccessible(method); method.invoke(bean, injectedObject); @@ -526,7 +522,7 @@ protected void inject(Object bean, String beanName, PropertyValues pvs) throws T Object injectedObject = getInjectedObject(annotation, bean, beanName, injectedType, this); - ReflectionUtils.makeAccessible(field); + makeAccessible(field); field.set(bean, injectedObject); diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/ConfigurationBeanBindingPostProcessor.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/ConfigurationBeanBindingPostProcessor.java index 9fbc15eb..c9409f46 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/ConfigurationBeanBindingPostProcessor.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/ConfigurationBeanBindingPostProcessor.java @@ -17,7 +17,6 @@ package io.microsphere.spring.beans.factory.annotation; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.context.config.ConfigurationBeanBinder; import io.microsphere.spring.context.config.ConfigurationBeanCustomizer; import io.microsphere.spring.context.config.DefaultConfigurationBeanBinder; @@ -38,6 +37,7 @@ import java.util.List; import java.util.Map; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.beans.factory.BeanFactoryUtils.asConfigurableListableBeanFactory; import static io.microsphere.spring.beans.factory.annotation.ConfigurationBeanBindingRegistrar.ENABLE_CONFIGURATION_BINDING_CLASS; import static org.springframework.beans.factory.BeanFactoryUtils.beansOfTypeIncludingAncestors; @@ -65,7 +65,7 @@ public class ConfigurationBeanBindingPostProcessor implements BeanPostProcessor, static final String IGNORE_INVALID_FIELDS_ATTRIBUTE_NAME = "ignoreInvalidFields"; - private final Logger logger = LoggerFactory.getLogger(getClass()); + private final Logger logger = getLogger(getClass()); private ConfigurableListableBeanFactory beanFactory = null; diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/ConfigurationBeanBindingRegistrar.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/ConfigurationBeanBindingRegistrar.java index eda03157..a83c95ce 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/ConfigurationBeanBindingRegistrar.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/annotation/ConfigurationBeanBindingRegistrar.java @@ -17,15 +17,12 @@ package io.microsphere.spring.beans.factory.annotation; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.beans.factory.support.ConfigurationBeanAliasGenerator; -import io.microsphere.spring.core.env.PropertySourcesUtils; import org.springframework.beans.BeansException; import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.BeanFactoryAware; import org.springframework.beans.factory.support.AbstractBeanDefinition; import org.springframework.beans.factory.support.BeanDefinitionBuilder; -import org.springframework.beans.factory.support.BeanDefinitionReaderUtils; import org.springframework.beans.factory.support.BeanDefinitionRegistry; import org.springframework.context.EnvironmentAware; import org.springframework.context.annotation.ImportBeanDefinitionRegistrar; @@ -40,6 +37,7 @@ import java.util.Map; import java.util.Set; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.beans.factory.annotation.ConfigurationBeanBindingPostProcessor.initBeanMetadataAttributes; import static io.microsphere.spring.beans.factory.annotation.EnableConfigurationBeanBinding.DEFAULT_IGNORE_INVALID_FIELDS; import static io.microsphere.spring.beans.factory.annotation.EnableConfigurationBeanBinding.DEFAULT_IGNORE_UNKNOWN_FIELDS; @@ -54,6 +52,7 @@ import static java.lang.Boolean.valueOf; import static java.util.Collections.singleton; import static org.springframework.beans.factory.support.BeanDefinitionBuilder.rootBeanDefinition; +import static org.springframework.beans.factory.support.BeanDefinitionReaderUtils.generateBeanName; import static org.springframework.util.StringUtils.hasText; /** @@ -69,7 +68,7 @@ public class ConfigurationBeanBindingRegistrar implements ImportBeanDefinitionRe private final static String ENABLE_CONFIGURATION_BINDING_CLASS_NAME = ENABLE_CONFIGURATION_BINDING_CLASS.getName(); - private final Logger logger = LoggerFactory.getLogger(getClass()); + private final Logger logger = getLogger(getClass()); private ConfigurableEnvironment environment; @@ -105,7 +104,7 @@ private void registerConfigurationBeans(String prefix, Class configClass, boo boolean ignoreUnknownFields, boolean ignoreInvalidFields, BeanDefinitionRegistry registry) { - Map configurationProperties = PropertySourcesUtils.getSubProperties(environment.getPropertySources(), environment, prefix); + Map configurationProperties = getSubProperties(environment.getPropertySources(), environment, prefix); Set beanNames = multiple ? resolveMultipleBeanNames(configurationProperties) : singleton(resolveSingleBeanName(configurationProperties, configClass, registry)); @@ -207,7 +206,7 @@ private String resolveSingleBeanName(Map properties, Class co if (!hasText(beanName)) { BeanDefinitionBuilder builder = rootBeanDefinition(configClass); - beanName = BeanDefinitionReaderUtils.generateBeanName(builder.getRawBeanDefinition(), registry); + beanName = generateBeanName(builder.getRawBeanDefinition(), registry); } return beanName; diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/config/BeanDefinitionUtils.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/config/BeanDefinitionUtils.java index 375d48a4..40bd9a7b 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/config/BeanDefinitionUtils.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/config/BeanDefinitionUtils.java @@ -23,7 +23,6 @@ import org.springframework.beans.factory.support.AbstractBeanDefinition; import org.springframework.beans.factory.support.BeanDefinitionBuilder; import org.springframework.beans.factory.support.RootBeanDefinition; -import org.springframework.util.StringUtils; import javax.annotation.Nullable; import java.lang.reflect.Method; @@ -40,6 +39,7 @@ import static java.util.Collections.unmodifiableSet; import static org.springframework.beans.factory.config.BeanDefinition.ROLE_APPLICATION; import static org.springframework.beans.factory.config.BeanDefinition.ROLE_INFRASTRUCTURE; +import static org.springframework.util.StringUtils.hasText; /** * {@link BeanDefinition} Utilities class @@ -120,7 +120,7 @@ public static Class resolveBeanType(RootBeanDefinition beanDefinition, @Nulla beanClass = beanDefinition.getBeanClass(); } else { String beanClassName = beanDefinition.getBeanClassName(); - if (StringUtils.hasText(beanClassName)) { + if (hasText(beanClassName)) { ClassLoader targetClassLoader = classLoader == null ? getDefaultClassLoader() : classLoader; beanClass = resolveClass(beanClassName, targetClassLoader, true); } diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/support/BeanRegistrar.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/support/BeanRegistrar.java index 5dfea65e..44480849 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/support/BeanRegistrar.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/support/BeanRegistrar.java @@ -17,9 +17,7 @@ package io.microsphere.spring.beans.factory.support; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.beans.factory.DelegatingFactoryBean; -import org.springframework.aop.support.AopUtils; import org.springframework.beans.factory.BeanDefinitionStoreException; import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.beans.factory.config.SingletonBeanRegistry; @@ -30,9 +28,11 @@ import java.util.List; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.beans.factory.config.BeanDefinitionUtils.genericBeanDefinition; import static java.beans.Introspector.decapitalize; import static java.lang.String.format; +import static org.springframework.aop.support.AopUtils.getTargetClass; import static org.springframework.beans.factory.config.BeanDefinition.ROLE_INFRASTRUCTURE; import static org.springframework.beans.factory.support.BeanDefinitionReaderUtils.generateBeanName; import static org.springframework.core.io.support.SpringFactoriesLoader.loadFactoryNames; @@ -48,7 +48,7 @@ */ public abstract class BeanRegistrar { - private static final Logger logger = LoggerFactory.getLogger(BeanRegistrar.class); + private static final Logger logger = getLogger(BeanRegistrar.class); /** * Register Infrastructure Bean @@ -244,7 +244,7 @@ public static void registerBean(BeanDefinitionRegistry registry, String beanName } public static void registerBean(BeanDefinitionRegistry registry, String beanName, Object bean, boolean primary) { - Class beanClass = AopUtils.getTargetClass(bean); + Class beanClass = getTargetClass(bean); AbstractBeanDefinition beanDefinition = genericBeanDefinition(beanClass); beanDefinition.setInstanceSupplier(() -> bean); registerBeanDefinition(registry, beanName, beanDefinition); diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/support/ListenableAutowireCandidateResolver.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/support/ListenableAutowireCandidateResolver.java index 2ef2cc2e..a92b1d42 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/support/ListenableAutowireCandidateResolver.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/support/ListenableAutowireCandidateResolver.java @@ -18,7 +18,6 @@ import io.microsphere.constants.PropertyConstants; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import org.springframework.beans.BeansException; import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.BeanNameAware; @@ -37,6 +36,7 @@ import java.util.Arrays; import java.util.List; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.beans.factory.BeanFactoryUtils.asBeanDefinitionRegistry; import static io.microsphere.spring.beans.factory.BeanFactoryUtils.asDefaultListableBeanFactory; import static io.microsphere.spring.beans.factory.support.AutowireCandidateResolvingListener.loadListeners; @@ -59,7 +59,7 @@ public class ListenableAutowireCandidateResolver implements AutowireCandidateResolver, BeanFactoryPostProcessor, EnvironmentAware, BeanNameAware { - private static final Logger logger = LoggerFactory.getLogger(ListenableAutowireCandidateResolver.class); + private static final Logger logger = getLogger(ListenableAutowireCandidateResolver.class); /** * The prefix of the property name of {@link ListenableAutowireCandidateResolver} diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/support/LoggingAutowireCandidateResolvingListener.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/support/LoggingAutowireCandidateResolvingListener.java index 9e43f679..9a5c3f56 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/support/LoggingAutowireCandidateResolvingListener.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/beans/factory/support/LoggingAutowireCandidateResolvingListener.java @@ -17,9 +17,10 @@ package io.microsphere.spring.beans.factory.support; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import org.springframework.beans.factory.config.DependencyDescriptor; +import static io.microsphere.logging.LoggerFactory.getLogger; + /** * {@link Logger logging} {@link AutowireCandidateResolvingListener} * @@ -30,7 +31,7 @@ */ public class LoggingAutowireCandidateResolvingListener implements AutowireCandidateResolvingListener { - private static final Logger logger = LoggerFactory.getLogger(LoggingAutowireCandidateResolvingListener.class); + private static final Logger logger = getLogger(LoggingAutowireCandidateResolvingListener.class); @Override public void suggestedValueResolved(DependencyDescriptor descriptor, Object suggestedValue) { diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/cache/intereptor/TTLCacheResolver.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/cache/intereptor/TTLCacheResolver.java index a0f2fb10..892c44b3 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/cache/intereptor/TTLCacheResolver.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/cache/intereptor/TTLCacheResolver.java @@ -18,12 +18,10 @@ import io.microsphere.collection.MapUtils; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.cache.TTLContext; import io.microsphere.spring.cache.annotation.TTLCachePut; import io.microsphere.spring.cache.annotation.TTLCacheable; import io.microsphere.spring.context.event.OnceApplicationContextEventListener; -import io.microsphere.util.ArrayUtils; import org.springframework.cache.Cache; import org.springframework.cache.CacheManager; import org.springframework.cache.interceptor.CacheOperation; @@ -47,7 +45,9 @@ import java.util.Set; import java.util.concurrent.TimeUnit; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.core.annotation.AnnotationUtils.getAnnotationAttributes; +import static io.microsphere.util.ArrayUtils.isEmpty; import static java.time.Duration.ofMillis; import static java.util.Collections.emptyList; @@ -61,7 +61,7 @@ public class TTLCacheResolver extends OnceApplicationContextEventListener, Class> ttlAnnotationTypes = MapUtils.of( CacheableOperation.class, TTLCacheable.class, @@ -100,7 +100,7 @@ public Collection resolveCaches(CacheOperationInvocationContext Collection targetCacheManagers; String[] cacheManagerBeanNames = ttlAnnotationAttributes.getStringArray("cacheManagers"); - if (ArrayUtils.isEmpty(cacheManagerBeanNames)) { + if (isEmpty(cacheManagerBeanNames)) { targetCacheManagers = namedCacheManagersMap.values(); } else { targetCacheManagers = new LinkedList<>(); diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/config/context/annotation/AnnotatedPropertySourceLoader.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/config/context/annotation/AnnotatedPropertySourceLoader.java index d3c4e583..47fd07a1 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/config/context/annotation/AnnotatedPropertySourceLoader.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/config/context/annotation/AnnotatedPropertySourceLoader.java @@ -17,7 +17,6 @@ package io.microsphere.spring.config.context.annotation; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.context.annotation.BeanCapableImportCandidate; import io.microsphere.spring.core.annotation.ResolvablePlaceholderAnnotationAttributes; import org.springframework.beans.factory.BeanCreationException; @@ -34,6 +33,7 @@ import java.lang.annotation.Annotation; import java.util.Map; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.util.StringUtils.EMPTY_STRING_ARRAY; import static org.springframework.util.StringUtils.hasText; @@ -55,7 +55,7 @@ public abstract class AnnotatedPropertySourceLoader extend protected static final String NAME_ATTRIBUTE_NAME = "name"; - protected final Logger logger = LoggerFactory.getLogger(this.getClass()); + protected final Logger logger = getLogger(this.getClass()); private final Class annotationType; diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/config/context/annotation/PropertySourceExtensionLoader.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/config/context/annotation/PropertySourceExtensionLoader.java index f92df21c..87bd6b83 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/config/context/annotation/PropertySourceExtensionLoader.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/config/context/annotation/PropertySourceExtensionLoader.java @@ -18,7 +18,6 @@ import io.microsphere.spring.config.env.event.PropertySourceChangedEvent; import io.microsphere.spring.config.env.event.PropertySourcesChangedEvent; -import org.springframework.beans.BeanUtils; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; import org.springframework.context.annotation.Configuration; @@ -37,7 +36,6 @@ import org.springframework.core.io.support.PropertySourceFactory; import org.springframework.core.type.AnnotationMetadata; import org.springframework.util.AntPathMatcher; -import org.springframework.util.ObjectUtils; import org.springframework.util.PathMatcher; import javax.annotation.Nonnull; @@ -56,10 +54,12 @@ import static io.microsphere.spring.config.env.event.PropertySourceChangedEvent.added; import static io.microsphere.spring.config.env.event.PropertySourceChangedEvent.replaced; import static io.microsphere.text.FormatUtils.format; +import static io.microsphere.util.ArrayUtils.isEmpty; import static io.microsphere.util.StringUtils.EMPTY_STRING_ARRAY; import static java.util.Collections.emptyList; import static java.util.Collections.singleton; import static java.util.Collections.sort; +import static org.springframework.beans.BeanUtils.instantiateClass; import static org.springframework.util.Assert.notNull; import static org.springframework.util.StringUtils.hasText; @@ -378,7 +378,7 @@ private List resolvePropertySourceResources(EA extension boolean ignoreResourceNotFound = extensionAttributes.isIgnoreResourceNotFound(); - if (ObjectUtils.isEmpty(resourceValues)) { + if (isEmpty(resourceValues)) { if (ignoreResourceNotFound) { return emptyList(); } @@ -523,7 +523,7 @@ protected void configureResourcePropertySourcesRefresher(EA extensionAttributes, protected T createInstance(EA extensionAttributes, Function> classFunction) { Class type = classFunction.apply(extensionAttributes); - return BeanUtils.instantiateClass(type); + return instantiateClass(type); } @Override diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/ApplicationContextUtils.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/ApplicationContextUtils.java index 737473c7..fdd03397 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/ApplicationContextUtils.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/ApplicationContextUtils.java @@ -17,7 +17,6 @@ package io.microsphere.spring.context; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.util.BaseUtils; import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.config.BeanPostProcessor; @@ -30,6 +29,7 @@ import javax.annotation.Nullable; import java.util.List; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.beans.factory.BeanFactoryUtils.getBeanPostProcessors; import static io.microsphere.util.ClassLoaderUtils.resolveClass; import static io.microsphere.util.ClassUtils.cast; @@ -42,7 +42,7 @@ */ public abstract class ApplicationContextUtils extends BaseUtils { - private static final Logger logger = LoggerFactory.getLogger(ApplicationContextUtils.class); + private static final Logger logger = getLogger(ApplicationContextUtils.class); /** * The {@link org.springframework.context.support.ApplicationContextAwareProcessor} Class Name (Internal). diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/annotation/AnnotatedBeanDefinitionRegistryUtils.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/annotation/AnnotatedBeanDefinitionRegistryUtils.java index b9141776..e1811743 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/annotation/AnnotatedBeanDefinitionRegistryUtils.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/annotation/AnnotatedBeanDefinitionRegistryUtils.java @@ -1,7 +1,6 @@ package io.microsphere.spring.context.annotation; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.util.BaseUtils; import org.springframework.beans.factory.annotation.AnnotatedBeanDefinition; import org.springframework.beans.factory.config.BeanDefinition; @@ -16,7 +15,6 @@ import org.springframework.context.annotation.ConfigurationClassPostProcessor; import org.springframework.core.type.AnnotationMetadata; import org.springframework.stereotype.Component; -import org.springframework.util.ObjectUtils; import java.lang.annotation.Annotation; import java.util.ArrayList; @@ -26,7 +24,10 @@ import java.util.List; import java.util.Set; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.util.ArrayUtils.EMPTY_CLASS_ARRAY; +import static io.microsphere.util.ArrayUtils.isEmpty; +import static io.microsphere.util.ArrayUtils.isNotEmpty; import static java.lang.String.format; import static java.util.Arrays.asList; import static org.springframework.context.annotation.AnnotationConfigUtils.CONFIGURATION_BEAN_NAME_GENERATOR; @@ -42,7 +43,7 @@ */ public abstract class AnnotatedBeanDefinitionRegistryUtils extends BaseUtils { - private static final Logger logger = LoggerFactory.getLogger(AnnotatedBeanDefinitionRegistryUtils.class); + private static final Logger logger = getLogger(AnnotatedBeanDefinitionRegistryUtils.class); /** * Is present bean that was registered by the specified {@link Annotation annotated} {@link Class class} @@ -88,7 +89,7 @@ public static boolean isPresentBean(BeanDefinitionRegistry registry, Class an */ public static void registerBeans(BeanDefinitionRegistry registry, Class... annotatedClasses) { - if (ObjectUtils.isEmpty(annotatedClasses)) { + if (isEmpty(annotatedClasses)) { return; } @@ -125,7 +126,7 @@ public static int scanBasePackages(BeanDefinitionRegistry registry, String... ba int count = 0; - if (!ObjectUtils.isEmpty(basePackages)) { + if (isNotEmpty(basePackages)) { boolean traceEnabled = logger.isTraceEnabled(); diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/annotation/BeanCapableImportCandidate.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/annotation/BeanCapableImportCandidate.java index e6b3f5ff..991254b8 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/annotation/BeanCapableImportCandidate.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/annotation/BeanCapableImportCandidate.java @@ -17,7 +17,6 @@ package io.microsphere.spring.context.annotation; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import org.springframework.beans.BeanWrapper; import org.springframework.beans.BeansException; import org.springframework.beans.factory.BeanClassLoaderAware; @@ -37,6 +36,7 @@ import javax.annotation.Nonnull; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.beans.factory.BeanFactoryUtils.asConfigurableListableBeanFactory; import static io.microsphere.spring.core.env.EnvironmentUtils.asConfigurableEnvironment; import static io.microsphere.text.FormatUtils.format; @@ -67,7 +67,7 @@ public abstract class BeanCapableImportCandidate implements BeanClassLoaderAware, BeanFactoryAware, EnvironmentAware, ResourceLoaderAware { - protected final Logger logger = LoggerFactory.getLogger(this.getClass()); + protected final Logger logger = getLogger(this.getClass()); protected ClassLoader classLoader; diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/BeanFactoryListeners.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/BeanFactoryListeners.java index a128c310..2ac35c38 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/BeanFactoryListeners.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/BeanFactoryListeners.java @@ -17,7 +17,6 @@ package io.microsphere.spring.context.event; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.beans.factory.config.NamedBeanHolderComparator; import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; @@ -29,6 +28,7 @@ import java.util.Map; import java.util.function.Consumer; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.beans.factory.support.BeanRegistrar.registerFactoryBean; import static io.microsphere.spring.core.io.support.SpringFactoriesLoaderUtils.registerFactories; @@ -41,7 +41,7 @@ */ class BeanFactoryListeners implements BeanFactoryListener { - private static final Logger logger = LoggerFactory.getLogger(BeanListeners.class); + private static final Logger logger = getLogger(BeanListeners.class); private static final String BEAN_NAME = "beanFactoryListeners"; diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/BeanListeners.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/BeanListeners.java index 07ae93e7..125411aa 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/BeanListeners.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/BeanListeners.java @@ -17,7 +17,6 @@ package io.microsphere.spring.context.event; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.beans.factory.config.NamedBeanHolderComparator; import org.springframework.beans.PropertyValues; import org.springframework.beans.factory.BeanFactory; @@ -36,6 +35,7 @@ import java.util.Set; import java.util.function.Consumer; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.beans.factory.support.BeanRegistrar.registerFactoryBean; import static io.microsphere.spring.core.io.support.SpringFactoriesLoaderUtils.registerFactories; @@ -47,7 +47,7 @@ */ class BeanListeners implements BeanListener { - private static final Logger logger = LoggerFactory.getLogger(BeanListeners.class); + private static final Logger logger = getLogger(BeanListeners.class); private static final String BEAN_NAME = "beanEventListeners"; diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/DeferredApplicationEventPublisher.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/DeferredApplicationEventPublisher.java index 48274acb..44174ef7 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/DeferredApplicationEventPublisher.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/DeferredApplicationEventPublisher.java @@ -24,7 +24,6 @@ import org.springframework.context.event.ApplicationEventMulticaster; import org.springframework.context.event.ContextRefreshedEvent; import org.springframework.context.support.AbstractApplicationContext; -import org.springframework.util.ReflectionUtils; import java.lang.reflect.Method; import java.util.Iterator; @@ -33,6 +32,7 @@ import static org.springframework.util.Assert.notNull; import static org.springframework.util.ReflectionUtils.findField; import static org.springframework.util.ReflectionUtils.findMethod; +import static org.springframework.util.ReflectionUtils.invokeMethod; /** * Before Spring Framework 4.2, {@link AbstractApplicationContext} is an implementation of {@link ApplicationEventPublisher} @@ -132,7 +132,7 @@ private void deferEvent(ApplicationEvent event) { public void publishEvent(Object event) { if (supportsEarlyApplicationEvents() && supportsPublishEventMethod()) { // invoke by reflection to resolve the compilation issue - ReflectionUtils.invokeMethod(PUBLISH_EVENT_METHOD, delegate, event); + invokeMethod(PUBLISH_EVENT_METHOD, delegate, event); } else { // before Spring 4.2 // DO NOTHING, just resolve the compilation issue in Spring 4.2 and above } diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/DependencyAnalysisBeanFactoryListener.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/DependencyAnalysisBeanFactoryListener.java index 4b1451fb..618389eb 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/DependencyAnalysisBeanFactoryListener.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/DependencyAnalysisBeanFactoryListener.java @@ -18,7 +18,6 @@ import io.microsphere.filter.Filter; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.beans.factory.filter.ResolvableDependencyTypeFilter; import org.springframework.beans.MutablePropertyValues; import org.springframework.beans.PropertyValue; @@ -51,6 +50,7 @@ import static io.microsphere.collection.ListUtils.newArrayList; import static io.microsphere.collection.ListUtils.newLinkedList; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.reflect.TypeUtils.isParameterizedType; import static io.microsphere.reflect.TypeUtils.resolveActualTypeArgumentClasses; import static io.microsphere.spring.beans.factory.BeanFactoryUtils.asDefaultListableBeanFactory; @@ -71,7 +71,7 @@ */ public class DependencyAnalysisBeanFactoryListener implements BeanFactoryListenerAdapter { - private static final Logger logger = LoggerFactory.getLogger(DependencyAnalysisBeanFactoryListener.class); + private static final Logger logger = getLogger(DependencyAnalysisBeanFactoryListener.class); @Override public void onBeanFactoryConfigurationFrozen(ConfigurableListableBeanFactory bf) { diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/EventPublishingBeanAfterProcessor.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/EventPublishingBeanAfterProcessor.java index b6d6ae62..9f67cf25 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/EventPublishingBeanAfterProcessor.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/EventPublishingBeanAfterProcessor.java @@ -28,7 +28,6 @@ import org.springframework.context.event.ContextClosedEvent; import org.springframework.context.event.ContextRefreshedEvent; import org.springframework.core.ResolvableType; -import org.springframework.util.ReflectionUtils; import java.util.Map; import java.util.Objects; @@ -38,6 +37,7 @@ import static io.microsphere.spring.context.event.BeanListeners.getBean; import static io.microsphere.spring.context.event.BeanListeners.getReadyBeanNames; import static org.springframework.util.ClassUtils.resolveClassName; +import static org.springframework.util.ReflectionUtils.doWithFields; /** * Bean After-Event Publishing Processor @@ -111,7 +111,7 @@ private void onContextClosedEvent(ContextClosedEvent event) { private void decorateDisposableBeans() { ConfigurableListableBeanFactory beanFactory = this.context.getBeanFactory(); if (beanFactory instanceof DefaultSingletonBeanRegistry) { - ReflectionUtils.doWithFields(DefaultSingletonBeanRegistry.class, field -> { + doWithFields(DefaultSingletonBeanRegistry.class, field -> { field.setAccessible(true); Map disposableBeans = (Map) field.get(beanFactory); for (Map.Entry entry : disposableBeans.entrySet()) { @@ -185,7 +185,7 @@ private static class DecoratingDisposableBean implements DisposableBean { @Override public void destroy() throws Exception { this.delegate.destroy(); - ReflectionUtils.doWithFields(DISPOSABLE_BEAN_ADAPTER_CLASS, field -> { + doWithFields(DISPOSABLE_BEAN_ADAPTER_CLASS, field -> { field.setAccessible(true); Object bean = field.get(this.delegate); this.destroyedCallback.accept(this.beanName, bean); diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/LoggingBeanFactoryListener.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/LoggingBeanFactoryListener.java index d947bab6..8d9e0786 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/LoggingBeanFactoryListener.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/LoggingBeanFactoryListener.java @@ -17,10 +17,11 @@ package io.microsphere.spring.context.event; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; import org.springframework.beans.factory.support.BeanDefinitionRegistry; +import static io.microsphere.logging.LoggerFactory.getLogger; + /** * Logging {@link BeanFactoryListener} * @@ -30,7 +31,7 @@ */ public class LoggingBeanFactoryListener implements BeanFactoryListener { - private static final Logger logger = LoggerFactory.getLogger(LoggingBeanFactoryListener.class); + private static final Logger logger = getLogger(LoggingBeanFactoryListener.class); @Override public void onBeanDefinitionRegistryReady(BeanDefinitionRegistry registry) { diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/LoggingBeanListener.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/LoggingBeanListener.java index 48e05a68..11b18ae3 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/LoggingBeanListener.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/LoggingBeanListener.java @@ -17,7 +17,6 @@ package io.microsphere.spring.context.event; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import org.springframework.beans.PropertyValues; import org.springframework.beans.factory.support.RootBeanDefinition; @@ -25,6 +24,8 @@ import java.lang.reflect.Method; import java.util.Arrays; +import static io.microsphere.logging.LoggerFactory.getLogger; + /** * Logging {@link BeanListener} implementation * @@ -33,7 +34,7 @@ */ public class LoggingBeanListener implements BeanListener { - private static final Logger logger = LoggerFactory.getLogger(LoggingBeanListener.class); + private static final Logger logger = getLogger(LoggingBeanListener.class); @Override public boolean supports(String beanName) { diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/OnceApplicationContextEventListener.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/OnceApplicationContextEventListener.java index 234a2a34..5a1148c5 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/OnceApplicationContextEventListener.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/OnceApplicationContextEventListener.java @@ -17,15 +17,15 @@ package io.microsphere.spring.context.event; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import org.springframework.beans.BeansException; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; import org.springframework.context.ApplicationEvent; import org.springframework.context.ApplicationListener; import org.springframework.context.event.ApplicationContextEvent; -import org.springframework.util.ClassUtils; +import static io.microsphere.logging.LoggerFactory.getLogger; +import static org.springframework.util.ClassUtils.getShortName; import static org.springframework.util.ObjectUtils.nullSafeEquals; /** @@ -37,7 +37,7 @@ public abstract class OnceApplicationContextEventListener implements ApplicationListener, ApplicationContextAware { - protected final Logger logger = LoggerFactory.getLogger(getClass()); + protected final Logger logger = getLogger(getClass()); private ApplicationContext applicationContext; @@ -89,7 +89,7 @@ public ApplicationContext getApplicationContext() { if (applicationContext == null) { throw new NullPointerException("applicationContext must be not null, it has to invoke " + "setApplicationContext(ApplicationContext) method first if " - + ClassUtils.getShortName(getClass()) + " instance is not a Spring Bean"); + + getShortName(getClass()) + " instance is not a Spring Bean"); } return applicationContext; } diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/ParallelPreInstantiationSingletonsBeanFactoryListener.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/ParallelPreInstantiationSingletonsBeanFactoryListener.java index 7a71f0a5..24efd416 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/ParallelPreInstantiationSingletonsBeanFactoryListener.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/context/event/ParallelPreInstantiationSingletonsBeanFactoryListener.java @@ -17,7 +17,6 @@ package io.microsphere.spring.context.event; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.beans.factory.BeanDependencyResolver; import io.microsphere.spring.beans.factory.DefaultBeanDependencyResolver; import org.springframework.beans.BeansException; @@ -40,6 +39,7 @@ import static io.microsphere.collection.ListUtils.newArrayList; import static io.microsphere.collection.ListUtils.newLinkedList; import static io.microsphere.lang.function.ThrowableSupplier.execute; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.beans.factory.BeanFactoryUtils.asDefaultListableBeanFactory; import static java.util.Collections.emptySet; import static java.util.concurrent.Executors.newFixedThreadPool; @@ -59,7 +59,7 @@ public class ParallelPreInstantiationSingletonsBeanFactoryListener implements Be public static final String THREAD_NAME_PREFIX_PROPERTY_NAME = "microsphere.spring.pre-instantiation.singletons.thread.name-prefix"; public static final String DEFAULT_THREAD_NAME_PREFIX = "Parallel-Pre-Instantiation-Singletons-Thread-"; - private static final Logger logger = LoggerFactory.getLogger(ParallelPreInstantiationSingletonsBeanFactoryListener.class); + private static final Logger logger = getLogger(ParallelPreInstantiationSingletonsBeanFactoryListener.class); private Environment environment; diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/core/convert/support/ConversionServiceResolver.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/core/convert/support/ConversionServiceResolver.java index c12c5658..42d6665c 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/core/convert/support/ConversionServiceResolver.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/core/convert/support/ConversionServiceResolver.java @@ -16,7 +16,6 @@ package io.microsphere.spring.core.convert.support; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import org.springframework.beans.factory.config.ConfigurableBeanFactory; import org.springframework.beans.factory.config.SingletonBeanRegistry; import org.springframework.context.ConfigurableApplicationContext; @@ -24,6 +23,7 @@ import org.springframework.core.env.ConfigurableEnvironment; import org.springframework.format.support.DefaultFormattingConversionService; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.beans.BeanUtils.getBeanIfAvailable; import static io.microsphere.spring.beans.BeanUtils.isBeanPresent; import static java.lang.String.format; @@ -46,7 +46,7 @@ public class ConversionServiceResolver { */ public static final String RESOLVED_CONVERSION_SERVICE_BEAN_NAME = "resolved-" + CONVERSION_SERVICE_BEAN_NAME; - private final Logger logger = LoggerFactory.getLogger(getClass()); + private final Logger logger = getLogger(getClass()); private final ConfigurableBeanFactory beanFactory; diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/core/env/EnvironmentUtils.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/core/env/EnvironmentUtils.java index 0bf7c027..38df9365 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/core/env/EnvironmentUtils.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/core/env/EnvironmentUtils.java @@ -17,7 +17,6 @@ package io.microsphere.spring.core.env; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.util.BaseUtils; import org.springframework.core.convert.ConversionService; import org.springframework.core.convert.support.DefaultConversionService; @@ -35,6 +34,7 @@ import java.util.Map; import java.util.Set; +import static io.microsphere.logging.LoggerFactory.getLogger; import static java.util.Arrays.asList; import static java.util.Collections.emptyList; import static java.util.Collections.emptyMap; @@ -54,7 +54,7 @@ */ public abstract class EnvironmentUtils extends BaseUtils { - private static final Logger logger = LoggerFactory.getLogger(EnvironmentUtils.class); + private static final Logger logger = getLogger(EnvironmentUtils.class); /** * Cast {@link Environment} to {@link ConfigurableEnvironment} diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/core/env/ListenableConfigurableEnvironment.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/core/env/ListenableConfigurableEnvironment.java index e5be0dbf..10785ef8 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/core/env/ListenableConfigurableEnvironment.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/core/env/ListenableConfigurableEnvironment.java @@ -18,7 +18,6 @@ import io.microsphere.constants.PropertyConstants; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import org.springframework.context.ConfigurableApplicationContext; import org.springframework.core.convert.support.ConfigurableConversionService; import org.springframework.core.env.ConfigurableEnvironment; @@ -37,6 +36,7 @@ import java.util.function.Consumer; import static io.microsphere.invoke.MethodHandleUtils.findVirtual; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.constants.PropertyConstants.MICROSPHERE_SPRING_PROPERTY_NAME_PREFIX; import static io.microsphere.spring.core.io.support.SpringFactoriesLoaderUtils.loadFactories; import static org.springframework.core.annotation.AnnotationAwareOrderComparator.sort; @@ -51,7 +51,7 @@ */ public class ListenableConfigurableEnvironment implements ConfigurableEnvironment { - private final static Logger logger = LoggerFactory.getLogger(ListenableConfigurableEnvironment.class); + private final static Logger logger = getLogger(ListenableConfigurableEnvironment.class); /** * The prefix of the property name of {@link ListenableConfigurableEnvironment} diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/core/env/LoggingEnvironmentListener.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/core/env/LoggingEnvironmentListener.java index 457dd329..8fa34d36 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/core/env/LoggingEnvironmentListener.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/core/env/LoggingEnvironmentListener.java @@ -17,7 +17,6 @@ package io.microsphere.spring.core.env; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import org.springframework.core.convert.support.ConfigurableConversionService; import org.springframework.core.env.ConfigurableEnvironment; import org.springframework.core.env.ConfigurablePropertyResolver; @@ -27,6 +26,8 @@ import java.util.Arrays; import java.util.Map; +import static io.microsphere.logging.LoggerFactory.getLogger; + /** * {@link PropertyResolverListener} class for logging * @@ -35,7 +36,7 @@ */ public class LoggingEnvironmentListener implements EnvironmentListener { - private static final Logger logger = LoggerFactory.getLogger(LoggingEnvironmentListener.class); + private static final Logger logger = getLogger(LoggingEnvironmentListener.class); @Override public void beforeGetPropertySources(ConfigurableEnvironment environment) { diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/core/env/PropertySourcesUtils.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/core/env/PropertySourcesUtils.java index 347607cc..d79554ba 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/core/env/PropertySourcesUtils.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/core/env/PropertySourcesUtils.java @@ -1,7 +1,6 @@ package io.microsphere.spring.core.env; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.util.BaseUtils; import org.springframework.core.env.ConfigurableEnvironment; import org.springframework.core.env.EnumerablePropertySource; @@ -26,6 +25,7 @@ import static io.microsphere.collection.MapUtils.MIN_LOAD_FACTOR; import static io.microsphere.collection.MapUtils.newLinkedHashMap; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.util.StringUtils.EMPTY_STRING_ARRAY; import static java.util.Collections.emptyMap; import static java.util.Collections.unmodifiableMap; @@ -40,7 +40,7 @@ */ public abstract class PropertySourcesUtils extends BaseUtils { - private static final Logger logger = LoggerFactory.getLogger(PropertySourcesUtils.class); + private static final Logger logger = getLogger(PropertySourcesUtils.class); /** * The {@link PropertySource#getName() PropertySource name} of {@link org.springframework.boot.SpringApplication#setDefaultProperties Spring Boot default poperties} diff --git a/microsphere-spring-context/src/main/java/io/microsphere/spring/core/io/support/SpringFactoriesLoaderUtils.java b/microsphere-spring-context/src/main/java/io/microsphere/spring/core/io/support/SpringFactoriesLoaderUtils.java index cc815d64..9f1e07f5 100644 --- a/microsphere-spring-context/src/main/java/io/microsphere/spring/core/io/support/SpringFactoriesLoaderUtils.java +++ b/microsphere-spring-context/src/main/java/io/microsphere/spring/core/io/support/SpringFactoriesLoaderUtils.java @@ -17,7 +17,6 @@ package io.microsphere.spring.core.io.support; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.util.BaseUtils; import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.config.ConfigurableBeanFactory; @@ -32,6 +31,7 @@ import java.util.ArrayList; import java.util.List; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.beans.BeanUtils.invokeAwareInterfaces; import static io.microsphere.spring.beans.BeanUtils.invokeBeanInterfaces; import static io.microsphere.spring.beans.factory.BeanFactoryUtils.asBeanDefinitionRegistry; @@ -58,7 +58,7 @@ */ public abstract class SpringFactoriesLoaderUtils extends BaseUtils { - private static final Logger logger = LoggerFactory.getLogger(SpringFactoriesLoaderUtils.class); + private static final Logger logger = getLogger(SpringFactoriesLoaderUtils.class); public static void registerFactories(@Nullable BeanFactory bf, Class factoryType) { BeanDefinitionRegistry registry = asBeanDefinitionRegistry(bf); diff --git a/microsphere-spring-context/src/test/java/io/microsphere/spring/beans/factory/annotation/EnableConfigurationBeanBindingTestForMultipleBinding.java b/microsphere-spring-context/src/test/java/io/microsphere/spring/beans/factory/annotation/EnableConfigurationBeanBindingTestForMultipleBinding.java index 5699799c..a2c347ad 100644 --- a/microsphere-spring-context/src/test/java/io/microsphere/spring/beans/factory/annotation/EnableConfigurationBeanBindingTestForMultipleBinding.java +++ b/microsphere-spring-context/src/test/java/io/microsphere/spring/beans/factory/annotation/EnableConfigurationBeanBindingTestForMultipleBinding.java @@ -23,7 +23,6 @@ * @since 1.0.0 */ -import io.microsphere.spring.beans.BeanUtils; import io.microsphere.spring.context.config.DefaultConfigurationBeanBinder; import io.microsphere.spring.util.User; import org.junit.jupiter.api.BeforeEach; @@ -32,6 +31,7 @@ import java.util.Collection; +import static io.microsphere.spring.beans.BeanUtils.getSortedBeans; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.junit.jupiter.api.Assertions.assertTrue; @@ -61,7 +61,7 @@ public ConfigurationBeanBindingPostProcessor configurationBeanBindingPostProcess public void init() { aUser = context.getBean("a", User.class); bUser = context.getBean("b", User.class); - users = BeanUtils.getSortedBeans(context, User.class); + users = getSortedBeans(context, User.class); configurationBeanBindingPostProcessor = context.getBean("configurationBeanBindingPostProcessor", ConfigurationBeanBindingPostProcessor.class); } diff --git a/microsphere-spring-context/src/test/java/io/microsphere/spring/context/annotation/EnableEventExtensionTest.java b/microsphere-spring-context/src/test/java/io/microsphere/spring/context/annotation/EnableEventExtensionTest.java index 806d33c5..fface30e 100644 --- a/microsphere-spring-context/src/test/java/io/microsphere/spring/context/annotation/EnableEventExtensionTest.java +++ b/microsphere-spring-context/src/test/java/io/microsphere/spring/context/annotation/EnableEventExtensionTest.java @@ -17,7 +17,6 @@ package io.microsphere.spring.context.annotation; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.context.event.ApplicationEventInterceptor; import io.microsphere.spring.context.event.ApplicationListenerInterceptor; import org.junit.jupiter.api.AfterEach; @@ -39,6 +38,7 @@ import java.util.concurrent.atomic.AtomicInteger; +import static io.microsphere.logging.LoggerFactory.getLogger; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.springframework.context.support.AbstractApplicationContext.APPLICATION_EVENT_MULTICASTER_BEAN_NAME; @@ -58,7 +58,7 @@ ) public class EnableEventExtensionTest { - private static final Logger logger = LoggerFactory.getLogger(EnableEventExtensionTest.class); + private static final Logger logger = getLogger(EnableEventExtensionTest.class); private static AtomicInteger eventValueRef = new AtomicInteger(); diff --git a/microsphere-spring-context/src/test/java/io/microsphere/spring/context/event/BeanTimeStatisticsTest.java b/microsphere-spring-context/src/test/java/io/microsphere/spring/context/event/BeanTimeStatisticsTest.java index fcffe175..0a4903a3 100644 --- a/microsphere-spring-context/src/test/java/io/microsphere/spring/context/event/BeanTimeStatisticsTest.java +++ b/microsphere-spring-context/src/test/java/io/microsphere/spring/context/event/BeanTimeStatisticsTest.java @@ -17,7 +17,6 @@ package io.microsphere.spring.context.event; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.util.StopWatch; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; @@ -26,6 +25,8 @@ import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit.jupiter.SpringExtension; +import static io.microsphere.logging.LoggerFactory.getLogger; + /** * @author Mercy * @since @@ -35,7 +36,7 @@ initializers = {EventPublishingBeanInitializer.class}) public class BeanTimeStatisticsTest { - private static final Logger logger = LoggerFactory.getLogger(BeanTimeStatisticsTest.class); + private static final Logger logger = getLogger(BeanTimeStatisticsTest.class); @Autowired private BeanFactory beanFactory; diff --git a/microsphere-spring-context/src/test/java/io/microsphere/spring/net/SpringProtocolURLStreamHandlerTest.java b/microsphere-spring-context/src/test/java/io/microsphere/spring/net/SpringProtocolURLStreamHandlerTest.java index 2427d603..d9f86119 100644 --- a/microsphere-spring-context/src/test/java/io/microsphere/spring/net/SpringProtocolURLStreamHandlerTest.java +++ b/microsphere-spring-context/src/test/java/io/microsphere/spring/net/SpringProtocolURLStreamHandlerTest.java @@ -21,7 +21,6 @@ import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.TestPropertySource; import org.springframework.test.context.junit.jupiter.SpringExtension; -import org.springframework.util.StreamUtils; import java.io.IOException; import java.io.InputStream; @@ -32,6 +31,7 @@ import java.util.List; import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.springframework.util.StreamUtils.copyToString; /** * {@link SpringProtocolURLStreamHandler} Test @@ -64,7 +64,7 @@ public void testSpringDelegatingBeanURLConnectionFactory() throws Throwable { private void assertContent(URL url) throws Throwable { String content = null; try (InputStream inputStream = url.openStream()) { - content = StreamUtils.copyToString(inputStream, Charset.defaultCharset()); + content = copyToString(inputStream, Charset.defaultCharset()); } assertNotNull(content); } diff --git a/microsphere-spring-jdbc/src/main/java/io/microsphere/spring/jdbc/p6spy/beans/factory/config/P6DataSourceBeanPostProcessor.java b/microsphere-spring-jdbc/src/main/java/io/microsphere/spring/jdbc/p6spy/beans/factory/config/P6DataSourceBeanPostProcessor.java index 240f6422..c2b95c53 100644 --- a/microsphere-spring-jdbc/src/main/java/io/microsphere/spring/jdbc/p6spy/beans/factory/config/P6DataSourceBeanPostProcessor.java +++ b/microsphere-spring-jdbc/src/main/java/io/microsphere/spring/jdbc/p6spy/beans/factory/config/P6DataSourceBeanPostProcessor.java @@ -18,7 +18,6 @@ import com.p6spy.engine.spy.P6DataSource; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.beans.factory.config.GenericBeanPostProcessorAdapter; import org.springframework.beans.BeansException; import org.springframework.beans.factory.config.BeanPostProcessor; @@ -30,6 +29,8 @@ import java.util.Collections; import java.util.Set; +import static io.microsphere.logging.LoggerFactory.getLogger; + /** * {@link P6DataSource} {@link BeanPostProcessor} * @@ -39,7 +40,7 @@ */ public class P6DataSourceBeanPostProcessor extends GenericBeanPostProcessorAdapter implements EnvironmentAware { - private static final Logger logger = LoggerFactory.getLogger(P6DataSourceBeanPostProcessor.class); + private static final Logger logger = getLogger(P6DataSourceBeanPostProcessor.class); public static final String EXCLUDED_DATASOURCE_BEAN_NAMES_PROPERTY_NAME = "microsphere.jdbc.p6spy.excluded-datasource-beans"; diff --git a/microsphere-spring-jdbc/src/main/java/io/microsphere/spring/jdbc/p6spy/net/SpringP6SpyURLConnectionFactory.java b/microsphere-spring-jdbc/src/main/java/io/microsphere/spring/jdbc/p6spy/net/SpringP6SpyURLConnectionFactory.java index 28a579f4..6030715c 100644 --- a/microsphere-spring-jdbc/src/main/java/io/microsphere/spring/jdbc/p6spy/net/SpringP6SpyURLConnectionFactory.java +++ b/microsphere-spring-jdbc/src/main/java/io/microsphere/spring/jdbc/p6spy/net/SpringP6SpyURLConnectionFactory.java @@ -19,7 +19,6 @@ import io.microsphere.net.SubProtocolURLConnectionFactory; import io.microsphere.spring.net.SpringEnvironmentURLConnectionFactory; import io.microsphere.spring.net.SpringSubProtocolURLConnectionFactory; -import org.springframework.util.StringUtils; import java.io.IOException; import java.net.Proxy; @@ -27,6 +26,8 @@ import java.net.URLConnection; import java.util.List; +import static org.springframework.util.StringUtils.hasText; + /** * Spring P6Spy {@link SubProtocolURLConnectionFactory} class delegates {@link SpringEnvironmentURLConnectionFactory} * @@ -50,6 +51,6 @@ public URLConnection create(URL url, List subProtocols, Proxy proxy) thr private String getPrefix(URL url) { String authority = url.getAuthority(); - return StringUtils.hasText(authority) ? authority : "microsphere.jdbc.p6spy"; + return hasText(authority) ? authority : "microsphere.jdbc.p6spy"; } } diff --git a/microsphere-spring-web/src/main/java/io/microsphere/spring/web/metadata/AbstractWebEndpointMappingFactory.java b/microsphere-spring-web/src/main/java/io/microsphere/spring/web/metadata/AbstractWebEndpointMappingFactory.java index e56624d3..800b3b35 100644 --- a/microsphere-spring-web/src/main/java/io/microsphere/spring/web/metadata/AbstractWebEndpointMappingFactory.java +++ b/microsphere-spring-web/src/main/java/io/microsphere/spring/web/metadata/AbstractWebEndpointMappingFactory.java @@ -17,11 +17,11 @@ package io.microsphere.spring.web.metadata; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import javax.annotation.Nullable; import java.util.Optional; +import static io.microsphere.logging.LoggerFactory.getLogger; import static java.util.Optional.ofNullable; /** @@ -33,7 +33,7 @@ */ public abstract class AbstractWebEndpointMappingFactory implements WebEndpointMappingFactory { - protected final Logger logger = LoggerFactory.getLogger(getClass()); + protected final Logger logger = getLogger(getClass()); @Override public final Optional> create(E endpoint) { diff --git a/microsphere-spring-web/src/main/java/io/microsphere/spring/web/metadata/Jackson2WebEndpointMappingFactory.java b/microsphere-spring-web/src/main/java/io/microsphere/spring/web/metadata/Jackson2WebEndpointMappingFactory.java index 7eb6c770..f0180ed0 100644 --- a/microsphere-spring-web/src/main/java/io/microsphere/spring/web/metadata/Jackson2WebEndpointMappingFactory.java +++ b/microsphere-spring-web/src/main/java/io/microsphere/spring/web/metadata/Jackson2WebEndpointMappingFactory.java @@ -17,7 +17,8 @@ package io.microsphere.spring.web.metadata; import com.fasterxml.jackson.databind.ObjectMapper; -import org.springframework.util.ClassUtils; + +import static org.springframework.util.ClassUtils.isPresent; /** * The {@link WebEndpointMappingFactory} class based on Jackson2 for JSON @@ -31,7 +32,7 @@ public class Jackson2WebEndpointMappingFactory extends AbstractWebEndpointMappin private static final ClassLoader classLoader = Jackson2WebEndpointMappingFactory.class.getClassLoader(); - private static final boolean objectMapperPresent = ClassUtils.isPresent(OBJECT_MAPPER_CLASS_NAME, classLoader); + private static final boolean objectMapperPresent = isPresent(OBJECT_MAPPER_CLASS_NAME, classLoader); @Override public boolean supports(String endpoint) { diff --git a/microsphere-spring-web/src/main/java/io/microsphere/spring/web/metadata/SmartWebEndpointMappingFactory.java b/microsphere-spring-web/src/main/java/io/microsphere/spring/web/metadata/SmartWebEndpointMappingFactory.java index 39cb2610..d0f3b67c 100644 --- a/microsphere-spring-web/src/main/java/io/microsphere/spring/web/metadata/SmartWebEndpointMappingFactory.java +++ b/microsphere-spring-web/src/main/java/io/microsphere/spring/web/metadata/SmartWebEndpointMappingFactory.java @@ -17,7 +17,6 @@ package io.microsphere.spring.web.metadata; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; import org.springframework.core.annotation.AnnotationAwareOrderComparator; @@ -29,6 +28,7 @@ import java.util.Map; import java.util.Optional; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.core.io.support.SpringFactoriesLoaderUtils.loadFactories; import static java.util.Collections.emptyList; @@ -42,7 +42,7 @@ public class SmartWebEndpointMappingFactory implements WebEndpointMappingFactory private static final Class FACTORY_CLASS = WebEndpointMappingFactory.class; - private final static Logger logger = LoggerFactory.getLogger(FACTORY_CLASS); + private final static Logger logger = getLogger(FACTORY_CLASS); private final Map, List> delegates; diff --git a/microsphere-spring-web/src/main/java/io/microsphere/spring/web/method/support/DelegatingHandlerMethodAdvice.java b/microsphere-spring-web/src/main/java/io/microsphere/spring/web/method/support/DelegatingHandlerMethodAdvice.java index 7ae1d343..b4044d6a 100644 --- a/microsphere-spring-web/src/main/java/io/microsphere/spring/web/method/support/DelegatingHandlerMethodAdvice.java +++ b/microsphere-spring-web/src/main/java/io/microsphere/spring/web/method/support/DelegatingHandlerMethodAdvice.java @@ -17,7 +17,6 @@ package io.microsphere.spring.web.method.support; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.context.event.OnceApplicationContextEventListener; import org.springframework.context.ApplicationContext; import org.springframework.context.event.ContextRefreshedEvent; @@ -27,6 +26,7 @@ import java.util.List; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.beans.BeanUtils.getSortedBeans; import static java.util.Collections.emptyList; @@ -44,7 +44,7 @@ public class DelegatingHandlerMethodAdvice extends OnceApplicationContextEventLi public static final String BEAN_NAME = "delegatingHandlerMethodAdvice"; - private static final Logger logger = LoggerFactory.getLogger(DelegatingHandlerMethodAdvice.class); + private static final Logger logger = getLogger(DelegatingHandlerMethodAdvice.class); private List argumentInterceptors = emptyList(); diff --git a/microsphere-spring-web/src/main/java/io/microsphere/spring/web/rule/WebRequestPattensRule.java b/microsphere-spring-web/src/main/java/io/microsphere/spring/web/rule/WebRequestPattensRule.java index 35b6f60c..dd18830a 100644 --- a/microsphere-spring-web/src/main/java/io/microsphere/spring/web/rule/WebRequestPattensRule.java +++ b/microsphere-spring-web/src/main/java/io/microsphere/spring/web/rule/WebRequestPattensRule.java @@ -17,7 +17,6 @@ package io.microsphere.spring.web.rule; import org.springframework.util.AntPathMatcher; -import org.springframework.util.ObjectUtils; import org.springframework.util.PathMatcher; import org.springframework.web.context.request.NativeWebRequest; import org.springframework.web.util.UrlPathHelper; @@ -33,6 +32,7 @@ import static io.microsphere.spring.web.util.WebRequestUtils.getResolvedLookupPath; import static io.microsphere.spring.web.util.WebRequestUtils.isPreFlightRequest; +import static io.microsphere.util.ArrayUtils.isNotEmpty; import static org.springframework.util.StringUtils.hasLength; import static org.springframework.util.StringUtils.hasText; @@ -232,7 +232,7 @@ private static Set initPatterns(String[] patterns) { } private static boolean hasPattern(String[] patterns) { - if (!ObjectUtils.isEmpty(patterns)) { + if (isNotEmpty(patterns)) { for (String pattern : patterns) { if (hasText(pattern)) { return true; diff --git a/microsphere-spring-web/src/main/java/io/microsphere/spring/web/rule/WebRequestProducesRule.java b/microsphere-spring-web/src/main/java/io/microsphere/spring/web/rule/WebRequestProducesRule.java index 3266b0d3..cc0ee0bd 100644 --- a/microsphere-spring-web/src/main/java/io/microsphere/spring/web/rule/WebRequestProducesRule.java +++ b/microsphere-spring-web/src/main/java/io/microsphere/spring/web/rule/WebRequestProducesRule.java @@ -17,7 +17,6 @@ package io.microsphere.spring.web.rule; import org.springframework.http.MediaType; -import org.springframework.util.CollectionUtils; import org.springframework.web.HttpMediaTypeException; import org.springframework.web.HttpMediaTypeNotAcceptableException; import org.springframework.web.accept.ContentNegotiationManager; @@ -30,6 +29,7 @@ import java.util.Collections; import java.util.List; +import static io.microsphere.collection.CollectionUtils.isNotEmpty; import static io.microsphere.spring.web.rule.ProduceMediaTypeExpression.parseExpressions; import static io.microsphere.spring.web.util.WebRequestUtils.isPreFlightRequest; import static org.springframework.util.MimeTypeUtils.ALL; @@ -110,7 +110,7 @@ public boolean matches(NativeWebRequest request) { return false; } List result = getMatchingExpressions(acceptedMediaTypes); - if (!CollectionUtils.isEmpty(result)) { + if (isNotEmpty(result)) { return false; } else if (ALL.isPresentIn(acceptedMediaTypes)) { return false; diff --git a/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/web/servlet/filter/ContentCachingFilter.java b/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/web/servlet/filter/ContentCachingFilter.java index 79090d03..0db8f814 100644 --- a/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/web/servlet/filter/ContentCachingFilter.java +++ b/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/web/servlet/filter/ContentCachingFilter.java @@ -1,7 +1,6 @@ package io.microsphere.spring.web.servlet.filter; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import jakarta.servlet.Filter; import jakarta.servlet.FilterChain; import jakarta.servlet.ServletException; @@ -14,6 +13,8 @@ import java.io.IOException; +import static io.microsphere.logging.LoggerFactory.getLogger; + /** * Content Caching {@link Filter} * @@ -23,7 +24,7 @@ */ public class ContentCachingFilter extends OncePerRequestFilter { - private static final Logger logger = LoggerFactory.getLogger(ContentCachingFilter.class); + private static final Logger logger = getLogger(ContentCachingFilter.class); public static final String RESPONSE_CONTENT_REQUEST_ATTRIBUTE_NAME = "_ContentCachingFilter_"; diff --git a/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/annotation/WebMvcExtensionBeanDefinitionRegistrar.java b/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/annotation/WebMvcExtensionBeanDefinitionRegistrar.java index 27e7b539..24c9d58f 100644 --- a/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/annotation/WebMvcExtensionBeanDefinitionRegistrar.java +++ b/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/annotation/WebMvcExtensionBeanDefinitionRegistrar.java @@ -28,12 +28,12 @@ import org.springframework.context.annotation.ImportBeanDefinitionRegistrar; import org.springframework.core.annotation.AnnotationAttributes; import org.springframework.core.type.AnnotationMetadata; -import org.springframework.util.ObjectUtils; import org.springframework.web.servlet.HandlerInterceptor; import static io.microsphere.spring.beans.factory.support.BeanRegistrar.registerBeanDefinition; import static io.microsphere.spring.core.annotation.AnnotationUtils.getAnnotationAttributes; import static io.microsphere.spring.webmvc.interceptor.LazyCompositeHandlerInterceptor.BEAN_NAME; +import static io.microsphere.util.ArrayUtils.isNotEmpty; import static org.springframework.beans.factory.support.BeanDefinitionBuilder.rootBeanDefinition; /** @@ -89,7 +89,7 @@ private AnnotationAttributes getAttributes(AnnotationMetadata metadata) { private void registerHandlerInterceptors(AnnotationAttributes attributes, BeanDefinitionRegistry registry) { Class[] interceptorClasses = (Class[]) attributes.getClassArray("registerHandlerInterceptors"); - if (!ObjectUtils.isEmpty(interceptorClasses)) { + if (isNotEmpty(interceptorClasses)) { registerLazyCompositeHandlerInterceptor(registry, interceptorClasses); registerInterceptors(registry, interceptorClasses); } diff --git a/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/config/ConfigurableContentNegotiationManagerWebMvcConfigurer.java b/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/config/ConfigurableContentNegotiationManagerWebMvcConfigurer.java index 6174c8cf..db2e3d98 100644 --- a/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/config/ConfigurableContentNegotiationManagerWebMvcConfigurer.java +++ b/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/config/ConfigurableContentNegotiationManagerWebMvcConfigurer.java @@ -2,7 +2,6 @@ import org.springframework.beans.MutablePropertyValues; import org.springframework.http.MediaType; -import org.springframework.util.ReflectionUtils; import org.springframework.validation.DataBinder; import org.springframework.web.accept.ContentNegotiationManager; import org.springframework.web.accept.ContentNegotiationManagerFactoryBean; @@ -10,7 +9,6 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import java.beans.PropertyEditorSupport; -import java.lang.reflect.Field; import java.util.LinkedHashMap; import java.util.Map; @@ -43,37 +41,31 @@ public ConfigurableContentNegotiationManagerWebMvcConfigurer(Map public void configureContentNegotiation(final ContentNegotiationConfigurer configurer) { - doWithFields(configurer.getClass(), new ReflectionUtils.FieldCallback() { - @Override - public void doWith(Field field) throws IllegalArgumentException, IllegalAccessException { + doWithFields(configurer.getClass(), field -> { - boolean accessible = field.isAccessible(); + boolean accessible = field.isAccessible(); - try { + try { - if (!accessible) { - field.setAccessible(true); - } - - ContentNegotiationManagerFactoryBean factoryBean = (ContentNegotiationManagerFactoryBean) field.get(configurer); + if (!accessible) { + field.setAccessible(true); + } - configureContentNegotiationManagerFactoryBean(factoryBean); + ContentNegotiationManagerFactoryBean factoryBean = (ContentNegotiationManagerFactoryBean) field.get(configurer); - } finally { + configureContentNegotiationManagerFactoryBean(factoryBean); - if (!accessible) { - field.setAccessible(accessible); - } + } finally { + if (!accessible) { + field.setAccessible(accessible); } } - }, new ReflectionUtils.FieldFilter() { - @Override - public boolean matches(Field field) { - Class fieldType = field.getType(); - return FACTORY_BEAN_FIELD_CLASS.isAssignableFrom(fieldType); - } + + }, field -> { + Class fieldType = field.getType(); + return FACTORY_BEAN_FIELD_CLASS.isAssignableFrom(fieldType); }); } diff --git a/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/handler/ReversedProxyHandlerMapping.java b/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/handler/ReversedProxyHandlerMapping.java index 529ef617..229a2a31 100644 --- a/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/handler/ReversedProxyHandlerMapping.java +++ b/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/handler/ReversedProxyHandlerMapping.java @@ -17,7 +17,6 @@ package io.microsphere.spring.webmvc.handler; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.web.event.WebEndpointMappingsReadyEvent; import io.microsphere.spring.web.metadata.WebEndpointMapping; import io.microsphere.spring.webmvc.metadata.HandlerMetadataWebEndpointMappingFactory; @@ -41,6 +40,7 @@ import java.util.Map; import static io.microsphere.invoke.MethodHandleUtils.findVirtual; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.web.metadata.WebEndpointMapping.ID_HEADER_NAME; import static io.microsphere.spring.web.metadata.WebEndpointMapping.Kind.WEB_MVC; import static io.microsphere.util.ArrayUtils.of; @@ -74,7 +74,7 @@ */ public class ReversedProxyHandlerMapping extends AbstractHandlerMapping implements ApplicationListener { - private static final Logger logger = LoggerFactory.getLogger(ReversedProxyHandlerMapping.class); + private static final Logger logger = getLogger(ReversedProxyHandlerMapping.class); public static final int DEFAULT_ORDER = HIGHEST_PRECEDENCE + 1; diff --git a/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/interceptor/LazyCompositeHandlerInterceptor.java b/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/interceptor/LazyCompositeHandlerInterceptor.java index f2fde902..bff248e7 100644 --- a/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/interceptor/LazyCompositeHandlerInterceptor.java +++ b/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/interceptor/LazyCompositeHandlerInterceptor.java @@ -16,7 +16,6 @@ */ package io.microsphere.spring.webmvc.interceptor; -import io.microsphere.collection.SetUtils; import io.microsphere.lang.function.ThrowableConsumer; import io.microsphere.lang.function.ThrowableFunction; import io.microsphere.spring.context.event.OnceApplicationContextEventListener; @@ -33,6 +32,7 @@ import java.util.Set; import static io.microsphere.collection.CollectionUtils.size; +import static io.microsphere.collection.SetUtils.of; import static org.springframework.core.annotation.AnnotationAwareOrderComparator.sort; /** @@ -54,7 +54,7 @@ public class LazyCompositeHandlerInterceptor extends OnceApplicationContextEvent private List interceptors; public LazyCompositeHandlerInterceptor(Class... interceptorClasses) { - this.interceptorClasses = SetUtils.of(interceptorClasses); + this.interceptorClasses = of(interceptorClasses); } @Override diff --git a/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/metadata/WebEndpointMappingRegistrar.java b/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/metadata/WebEndpointMappingRegistrar.java index 11b7a144..ed10dc22 100644 --- a/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/metadata/WebEndpointMappingRegistrar.java +++ b/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/metadata/WebEndpointMappingRegistrar.java @@ -17,7 +17,6 @@ package io.microsphere.spring.webmvc.metadata; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.context.lifecycle.AbstractSmartLifecycle; import io.microsphere.spring.web.event.WebEndpointMappingsReadyEvent; import io.microsphere.spring.web.event.WebEventPublisher; @@ -43,6 +42,7 @@ import java.util.Map; import java.util.Optional; +import static io.microsphere.logging.LoggerFactory.getLogger; import static org.springframework.beans.factory.BeanFactoryUtils.beansOfTypeIncludingAncestors; /** @@ -58,7 +58,7 @@ */ public class WebEndpointMappingRegistrar extends AbstractSmartLifecycle { - private static final Logger logger = LoggerFactory.getLogger(WebEndpointMappingRegistrar.class); + private static final Logger logger = getLogger(WebEndpointMappingRegistrar.class); private final WebApplicationContext context; diff --git a/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/method/support/InterceptingHandlerMethodProcessor.java b/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/method/support/InterceptingHandlerMethodProcessor.java index 9709f434..4a2c95e4 100644 --- a/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/method/support/InterceptingHandlerMethodProcessor.java +++ b/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/method/support/InterceptingHandlerMethodProcessor.java @@ -17,7 +17,6 @@ package io.microsphere.spring.webmvc.method.support; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.context.event.OnceApplicationContextEventListener; import io.microsphere.spring.web.event.WebEndpointMappingsReadyEvent; import io.microsphere.spring.web.metadata.WebEndpointMapping; @@ -49,6 +48,7 @@ import java.util.List; import java.util.Map; +import static io.microsphere.logging.LoggerFactory.getLogger; import static io.microsphere.spring.beans.BeanUtils.getOptionalBean; import static io.microsphere.spring.beans.BeanUtils.getSortedBeans; import static io.microsphere.spring.webmvc.util.WebMvcUtils.getHandlerMethodArguments; @@ -73,7 +73,7 @@ public class InterceptingHandlerMethodProcessor extends OnceApplicationContextEv public static final String BEAN_NAME = "interceptingHandlerMethodProcessor"; - private static final Logger logger = LoggerFactory.getLogger(InterceptingHandlerMethodProcessor.class); + private static final Logger logger = getLogger(InterceptingHandlerMethodProcessor.class); private final Map parameterContextsCache = new HashMap<>(256); diff --git a/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/util/WebMvcUtils.java b/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/util/WebMvcUtils.java index dec8937f..9394f583 100644 --- a/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/util/WebMvcUtils.java +++ b/microsphere-spring-webmvc/src/main/java/io/microsphere/spring/webmvc/util/WebMvcUtils.java @@ -1,6 +1,5 @@ package io.microsphere.spring.webmvc.util; -import io.microsphere.spring.web.servlet.util.WebUtils; import jakarta.servlet.ServletContext; import jakarta.servlet.ServletRegistration; import jakarta.servlet.ServletRequest; @@ -8,12 +7,9 @@ import org.springframework.context.ApplicationContextInitializer; import org.springframework.context.ConfigurableApplicationContext; import org.springframework.core.MethodParameter; -import org.springframework.core.annotation.AnnotationUtils; import org.springframework.http.converter.HttpMessageConverter; import org.springframework.http.converter.StringHttpMessageConverter; import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; -import org.springframework.util.ObjectUtils; -import org.springframework.util.StringUtils; import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.context.ContextLoader; @@ -40,15 +36,19 @@ import java.util.List; import java.util.Set; -import static io.microsphere.util.ClassLoaderUtils.isPresent; +import static io.microsphere.spring.web.servlet.util.WebUtils.findServletRegistrations; +import static io.microsphere.util.ArrayUtils.isNotEmpty; +import static org.springframework.core.annotation.AnnotationUtils.findAnnotation; import static org.springframework.util.Assert.notNull; import static org.springframework.util.ReflectionUtils.findMethod; import static org.springframework.util.ReflectionUtils.invokeMethod; +import static org.springframework.util.StringUtils.arrayToDelimitedString; import static org.springframework.util.StringUtils.hasLength; import static org.springframework.util.StringUtils.hasText; import static org.springframework.web.context.ContextLoader.CONTEXT_INITIALIZER_CLASSES_PARAM; import static org.springframework.web.context.ContextLoader.GLOBAL_INITIALIZER_CLASSES_PARAM; import static org.springframework.web.context.support.WebApplicationContextUtils.getRequiredWebApplicationContext; +import static org.springframework.web.servlet.support.RequestContextUtils.findWebApplicationContext; /** * Spring Web MVC Utilities Class @@ -208,7 +208,7 @@ public static Object[] getHandlerMethodArguments(WebRequest webRequest, Method m HttpServletRequest request = getHttpServletRequest(webRequest); final Object[] arguments; if (request != null) { - arguments = WebMvcUtils.getHandlerMethodArguments(request, method); + arguments = getHandlerMethodArguments(request, method); } else { arguments = new Object[method.getParameterCount()]; } @@ -298,7 +298,7 @@ public static T getHandlerMethodReturnValue(Method method) { * @return If {@link ControllerAdvice} bean type is present , return true , or false. */ public static boolean isControllerAdviceBeanType(Class beanType) { - return AnnotationUtils.findAnnotation(beanType, ControllerAdvice.class) != null; + return findAnnotation(beanType, ControllerAdvice.class) != null; } /** @@ -330,7 +330,7 @@ public static WebApplicationContext getWebApplicationContext(HttpServletRequest if (webApplicationContext == null) { - webApplicationContext = RequestContextUtils.findWebApplicationContext(request, servletContext); + webApplicationContext = findWebApplicationContext(request, servletContext); } @@ -346,13 +346,13 @@ protected static String appendInitParameter(String existedParameterValue, String List parameterValuesList = new ArrayList(); - if (!ObjectUtils.isEmpty(existedParameterValues)) { + if (isNotEmpty(existedParameterValues)) { parameterValuesList.addAll(Arrays.asList(existedParameterValues)); } parameterValuesList.addAll(Arrays.asList(parameterValues)); - String newParameterValue = StringUtils.arrayToDelimitedString(parameterValuesList.toArray(), ","); + String newParameterValue = arrayToDelimitedString(parameterValuesList.toArray(), ","); return newParameterValue; } @@ -425,7 +425,7 @@ public static void appendFrameworkServletContextInitializerClassInitParameter( Class contextInitializerClass) { Collection servletRegistrations = - WebUtils.findServletRegistrations(servletContext, FrameworkServlet.class).values(); + findServletRegistrations(servletContext, FrameworkServlet.class).values(); for (ServletRegistration servletRegistration : servletRegistrations) { String contextInitializerClassName = servletRegistration.getInitParameter(CONTEXT_INITIALIZER_CLASSES_PARAM); diff --git a/microsphere-spring-webmvc/src/test/java/io/microsphere/spring/webmvc/config/IdempotentConfig.java b/microsphere-spring-webmvc/src/test/java/io/microsphere/spring/webmvc/config/IdempotentConfig.java index e9c0fcc8..a6fa8295 100644 --- a/microsphere-spring-webmvc/src/test/java/io/microsphere/spring/webmvc/config/IdempotentConfig.java +++ b/microsphere-spring-webmvc/src/test/java/io/microsphere/spring/webmvc/config/IdempotentConfig.java @@ -17,12 +17,13 @@ package io.microsphere.spring.webmvc.config; import io.microsphere.logging.Logger; -import io.microsphere.logging.LoggerFactory; import io.microsphere.spring.web.event.HandlerMethodArgumentsResolvedEvent; import io.microsphere.spring.web.event.WebEndpointMappingsReadyEvent; import io.microsphere.spring.webmvc.annotation.Idempotent; import org.springframework.context.event.EventListener; +import static io.microsphere.logging.LoggerFactory.getLogger; + /** * {@link Idempotent} Configuration * @@ -32,7 +33,7 @@ */ public class IdempotentConfig { - private static final Logger logger = LoggerFactory.getLogger(IdempotentConfig.class); + private static final Logger logger = getLogger(IdempotentConfig.class); @EventListener(WebEndpointMappingsReadyEvent.class) public void onEvent(WebEndpointMappingsReadyEvent event) {