diff --git a/buildSrc/src/main/java/org/springframework/boot/build/bom/bomr/version/AbstractDependencyVersion.java b/buildSrc/src/main/java/org/springframework/boot/build/bom/bomr/version/AbstractDependencyVersion.java index d0c74aa2da4..c602347ef97 100644 --- a/buildSrc/src/main/java/org/springframework/boot/build/bom/bomr/version/AbstractDependencyVersion.java +++ b/buildSrc/src/main/java/org/springframework/boot/build/bom/bomr/version/AbstractDependencyVersion.java @@ -40,9 +40,8 @@ abstract class AbstractDependencyVersion implements DependencyVersion { @Override public boolean isUpgrade(DependencyVersion candidate, boolean movingToSnapshots) { - ComparableVersion comparableCandidate = (candidate instanceof AbstractDependencyVersion) - ? ((AbstractDependencyVersion) candidate).comparableVersion - : new ComparableVersion(candidate.toString()); + ComparableVersion comparableCandidate = (candidate instanceof AbstractDependencyVersion abstractDependencyVersion) + ? abstractDependencyVersion.comparableVersion : new ComparableVersion(candidate.toString()); return comparableCandidate.compareTo(this.comparableVersion) > 0; } diff --git a/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/graphql/tester/HttpGraphQlTesterContextCustomizer.java b/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/graphql/tester/HttpGraphQlTesterContextCustomizer.java index 18467c9629f..a97ca72bc05 100644 --- a/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/graphql/tester/HttpGraphQlTesterContextCustomizer.java +++ b/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/graphql/tester/HttpGraphQlTesterContextCustomizer.java @@ -66,8 +66,8 @@ class HttpGraphQlTesterContextCustomizer implements ContextCustomizer { private void registerHttpGraphQlTester(ConfigurableApplicationContext context) { ConfigurableListableBeanFactory beanFactory = context.getBeanFactory(); - if (beanFactory instanceof BeanDefinitionRegistry) { - registerHttpGraphQlTester((BeanDefinitionRegistry) beanFactory); + if (beanFactory instanceof BeanDefinitionRegistry beanDefinitionRegistry) { + registerHttpGraphQlTester(beanDefinitionRegistry); } } diff --git a/spring-boot-project/spring-boot-tools/spring-boot-test-support/src/main/java/org/springframework/boot/testsupport/classpath/ModifiedClassPathClassLoader.java b/spring-boot-project/spring-boot-tools/spring-boot-test-support/src/main/java/org/springframework/boot/testsupport/classpath/ModifiedClassPathClassLoader.java index 5ddbe97ab58..8b014b92853 100644 --- a/spring-boot-project/spring-boot-tools/spring-boot-test-support/src/main/java/org/springframework/boot/testsupport/classpath/ModifiedClassPathClassLoader.java +++ b/spring-boot-project/spring-boot-tools/spring-boot-test-support/src/main/java/org/springframework/boot/testsupport/classpath/ModifiedClassPathClassLoader.java @@ -116,8 +116,8 @@ final class ModifiedClassPathClassLoader extends URLClassLoader { private static Collection getAnnotatedElements(Object[] array) { Set result = new LinkedHashSet<>(); for (Object item : array) { - if (item instanceof AnnotatedElement) { - result.add((AnnotatedElement) item); + if (item instanceof AnnotatedElement annotatedElement) { + result.add(annotatedElement); } else if (ObjectUtils.isArray(item)) { result.addAll(getAnnotatedElements(ObjectUtils.toObjectArray(item))); diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/BeanDefinitionLoader.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/BeanDefinitionLoader.java index 32a59063509..bc7412c00ac 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/BeanDefinitionLoader.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/BeanDefinitionLoader.java @@ -305,8 +305,8 @@ class BeanDefinitionLoader { ClassExcludeFilter(Object... sources) { super(false, false); for (Object source : sources) { - if (source instanceof Class) { - this.classNames.add(((Class) source).getName()); + if (source instanceof Class classSource) { + this.classNames.add(classSource.getName()); } } } diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/ResourceBanner.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/ResourceBanner.java index 68867dec2c4..192b215755c 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/ResourceBanner.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/ResourceBanner.java @@ -86,8 +86,8 @@ public class ResourceBanner implements Banner { */ protected List getPropertyResolvers(Environment environment, Class sourceClass) { MutablePropertySources sources = new MutablePropertySources(); - if (environment instanceof ConfigurableEnvironment) { - ((ConfigurableEnvironment) environment).getPropertySources().forEach(sources::addLast); + if (environment instanceof ConfigurableEnvironment configurableEnvironment) { + configurableEnvironment.getPropertySources().forEach(sources::addLast); } sources.addLast(getTitleSource(sourceClass)); sources.addLast(getAnsiSource()); diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/availability/ApplicationAvailabilityBean.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/availability/ApplicationAvailabilityBean.java index cca3f0e8315..025b8b2b9c9 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/availability/ApplicationAvailabilityBean.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/availability/ApplicationAvailabilityBean.java @@ -98,7 +98,7 @@ public class ApplicationAvailabilityBean @SuppressWarnings("unchecked") private Class getStateType(AvailabilityState state) { - Class type = (state instanceof Enum) ? ((Enum) state).getDeclaringClass() : state.getClass(); + Class type = (state instanceof Enum enumState) ? enumState.getDeclaringClass() : state.getClass(); return (Class) type; } diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/availability/AvailabilityChangeEvent.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/availability/AvailabilityChangeEvent.java index 9c6fa1e8796..fc14246d565 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/availability/AvailabilityChangeEvent.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/availability/AvailabilityChangeEvent.java @@ -60,8 +60,8 @@ public class AvailabilityChangeEvent extends Payloa private Class getStateType() { S state = getState(); - if (state instanceof Enum) { - return ((Enum) state).getDeclaringClass(); + if (state instanceof Enum enumState) { + return enumState.getDeclaringClass(); } return state.getClass(); } diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/cloud/CloudPlatform.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/cloud/CloudPlatform.java index fac2f794d31..52a59a8c2cc 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/cloud/CloudPlatform.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/cloud/CloudPlatform.java @@ -127,8 +127,8 @@ public enum CloudPlatform { && environmentPropertySource.containsProperty(KUBERNETES_SERVICE_PORT)) { return true; } - if (environmentPropertySource instanceof EnumerablePropertySource) { - return isAutoDetected((EnumerablePropertySource) environmentPropertySource); + if (environmentPropertySource instanceof EnumerablePropertySource enumerablePropertySource) { + return isAutoDetected(enumerablePropertySource); } } return false; diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/logging/LoggingApplicationListener.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/logging/LoggingApplicationListener.java index 81e8d9afd0b..1f0d496ddc7 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/logging/LoggingApplicationListener.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/logging/LoggingApplicationListener.java @@ -225,8 +225,8 @@ public class LoggingApplicationListener implements GenericApplicationListener { else if (event instanceof ApplicationPreparedEvent preparedEvent) { onApplicationPreparedEvent(preparedEvent); } - else if (event instanceof ContextClosedEvent) { - onContextClosedEvent((ContextClosedEvent) event); + else if (event instanceof ContextClosedEvent contextClosedEvent) { + onContextClosedEvent(contextClosedEvent); } else if (event instanceof ApplicationFailedEvent) { onApplicationFailedEvent(); diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/source/SpringConfigurationPropertySource.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/source/SpringConfigurationPropertySource.java index df9f76994fc..d7ae9d81e16 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/source/SpringConfigurationPropertySource.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/source/SpringConfigurationPropertySource.java @@ -167,10 +167,10 @@ class SpringConfigurationPropertySource implements ConfigurationPropertySource { private static boolean isFullEnumerable(PropertySource source) { PropertySource rootSource = getRootSource(source); - if (rootSource.getSource() instanceof Map) { + if (rootSource.getSource() instanceof Map map) { // Check we're not security restricted try { - ((Map) rootSource.getSource()).size(); + map.size(); } catch (UnsupportedOperationException ex) { return false; @@ -180,8 +180,8 @@ class SpringConfigurationPropertySource implements ConfigurationPropertySource { } private static PropertySource getRootSource(PropertySource source) { - while (source.getSource() != null && source.getSource() instanceof PropertySource) { - source = (PropertySource) source.getSource(); + while (source.getSource() != null && source.getSource() instanceof PropertySource propertySource) { + source = propertySource; } return source; } diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/source/SpringConfigurationPropertySources.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/source/SpringConfigurationPropertySources.java index 7565143ea15..b4efe82b790 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/source/SpringConfigurationPropertySources.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/source/SpringConfigurationPropertySources.java @@ -67,8 +67,8 @@ class SpringConfigurationPropertySources implements Iterable) source).getPrefix()); + if (source instanceof OriginLookup originLookup) { + result = result.withPrefix(originLookup.getPrefix()); } this.cache.put(source, result); return result; diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/source/SpringIterableConfigurationPropertySource.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/source/SpringIterableConfigurationPropertySource.java index 280b1d81bcd..1f115f84582 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/source/SpringIterableConfigurationPropertySource.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/source/SpringIterableConfigurationPropertySource.java @@ -169,8 +169,8 @@ class SpringIterableConfigurationPropertySource extends SpringConfigurationPrope private boolean isImmutablePropertySource() { EnumerablePropertySource source = getPropertySource(); - if (source instanceof OriginLookup) { - return ((OriginLookup) source).isImmutable(); + if (source instanceof OriginLookup originLookup) { + return originLookup.isImmutable(); } if (StandardEnvironment.SYSTEM_ENVIRONMENT_PROPERTY_SOURCE_NAME.equals(source.getName())) { return source.getSource() == System.getenv(); diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/source/UnboundElementsSourceFilter.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/source/UnboundElementsSourceFilter.java index 754a7c328a5..18e36c81ae0 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/source/UnboundElementsSourceFilter.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/source/UnboundElementsSourceFilter.java @@ -43,8 +43,8 @@ public class UnboundElementsSourceFilter implements Function) underlyingSource).getName(); + if (underlyingSource instanceof PropertySource propertySource) { + String name = propertySource.getName(); return !BENIGN_PROPERTY_SOURCE_NAMES.contains(name); } return true; diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/convert/ApplicationConversionService.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/convert/ApplicationConversionService.java index c643a4ec3b2..eec37b406dd 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/convert/ApplicationConversionService.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/convert/ApplicationConversionService.java @@ -278,20 +278,20 @@ public class ApplicationConversionService extends FormattingConversionService { beans.addAll(beanFactory.getBeansOfType(Printer.class).values()); beans.addAll(beanFactory.getBeansOfType(Parser.class).values()); for (Object bean : beans) { - if (bean instanceof GenericConverter) { - registry.addConverter((GenericConverter) bean); + if (bean instanceof GenericConverter genericConverter) { + registry.addConverter(genericConverter); } - else if (bean instanceof Converter) { - registry.addConverter((Converter) bean); + else if (bean instanceof Converter converter) { + registry.addConverter(converter); } - else if (bean instanceof Formatter) { - registry.addFormatter((Formatter) bean); + else if (bean instanceof Formatter formatter) { + registry.addFormatter(formatter); } - else if (bean instanceof Printer) { - registry.addPrinter((Printer) bean); + else if (bean instanceof Printer printer) { + registry.addPrinter(printer); } - else if (bean instanceof Parser) { - registry.addParser((Parser) bean); + else if (bean instanceof Parser parser) { + registry.addParser(parser); } } } diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/env/SpringApplicationJsonEnvironmentPostProcessor.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/env/SpringApplicationJsonEnvironmentPostProcessor.java index 5dc701e1a21..920f24da580 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/env/SpringApplicationJsonEnvironmentPostProcessor.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/env/SpringApplicationJsonEnvironmentPostProcessor.java @@ -126,20 +126,20 @@ public class SpringApplicationJsonEnvironmentPostProcessor implements Environmen @SuppressWarnings("unchecked") private void extract(String name, Map result, Object value) { - if (value instanceof Map) { - if (CollectionUtils.isEmpty((Map) value)) { + if (value instanceof Map map) { + if (CollectionUtils.isEmpty(map)) { result.put(name, value); return; } flatten(name, result, (Map) value); } - else if (value instanceof Collection) { - if (CollectionUtils.isEmpty((Collection) value)) { + else if (value instanceof Collection collection) { + if (CollectionUtils.isEmpty(collection)) { result.put(name, value); return; } int index = 0; - for (Object object : (Collection) value) { + for (Object object : collection) { extract(name + "[" + index + "]", result, object); index++; } diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/jackson/JsonComponentModule.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/jackson/JsonComponentModule.java index e5e2d20fbc2..8ccc5b2bf8e 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/jackson/JsonComponentModule.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/jackson/JsonComponentModule.java @@ -102,14 +102,14 @@ public class JsonComponentModule extends SimpleModule implements BeanFactoryAwar } private void addJsonBean(Object bean, Class[] types, Scope scope) { - if (bean instanceof JsonSerializer) { - addJsonSerializerBean((JsonSerializer) bean, scope, types); + if (bean instanceof JsonSerializer jsonSerializer) { + addJsonSerializerBean(jsonSerializer, scope, types); } - else if (bean instanceof JsonDeserializer) { - addJsonDeserializerBean((JsonDeserializer) bean, types); + else if (bean instanceof JsonDeserializer jsonDeserializer) { + addJsonDeserializerBean(jsonDeserializer, types); } - else if (bean instanceof KeyDeserializer) { - addKeyDeserializerBean((KeyDeserializer) bean, types); + else if (bean instanceof KeyDeserializer keyDeserializer) { + addKeyDeserializerBean(keyDeserializer, types); } for (Class innerClass : bean.getClass().getDeclaredClasses()) { if (isSuitableInnerClass(innerClass)) { diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/r2dbc/OptionsCapableConnectionFactory.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/r2dbc/OptionsCapableConnectionFactory.java index 0d663b783a7..a45b40273c9 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/r2dbc/OptionsCapableConnectionFactory.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/r2dbc/OptionsCapableConnectionFactory.java @@ -78,13 +78,13 @@ public class OptionsCapableConnectionFactory implements Wrapped) connectionFactory).unwrap(); - if (unwrapped instanceof ConnectionFactory) { - return unwrapFrom((ConnectionFactory) unwrapped); + if (connectionFactory instanceof Wrapped wrappedConnectionFactory) { + Object unwrapped = wrappedConnectionFactory.unwrap(); + if (unwrapped instanceof ConnectionFactory unwrappedConnectionFactory) { + return unwrapFrom(unwrappedConnectionFactory); } } return null; diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/embedded/jetty/ForwardHeadersCustomizer.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/embedded/jetty/ForwardHeadersCustomizer.java index 0eeee2f5376..b7517d3d3ab 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/embedded/jetty/ForwardHeadersCustomizer.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/embedded/jetty/ForwardHeadersCustomizer.java @@ -34,9 +34,8 @@ class ForwardHeadersCustomizer implements JettyServerCustomizer { ForwardedRequestCustomizer customizer = new ForwardedRequestCustomizer(); for (Connector connector : server.getConnectors()) { for (ConnectionFactory connectionFactory : connector.getConnectionFactories()) { - if (connectionFactory instanceof HttpConfiguration.ConnectionFactory) { - ((HttpConfiguration.ConnectionFactory) connectionFactory).getHttpConfiguration() - .addCustomizer(customizer); + if (connectionFactory instanceof HttpConfiguration.ConnectionFactory jettyConnectionFactory) { + jettyConnectionFactory.getHttpConfiguration().addCustomizer(customizer); } } } diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/embedded/tomcat/CompressionConnectorCustomizer.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/embedded/tomcat/CompressionConnectorCustomizer.java index 8c9ebee325f..162a0599b3f 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/embedded/tomcat/CompressionConnectorCustomizer.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/embedded/tomcat/CompressionConnectorCustomizer.java @@ -41,8 +41,8 @@ class CompressionConnectorCustomizer implements TomcatConnectorCustomizer { public void customize(Connector connector) { if (this.compression != null && this.compression.getEnabled()) { ProtocolHandler handler = connector.getProtocolHandler(); - if (handler instanceof AbstractHttp11Protocol) { - customize((AbstractHttp11Protocol) handler); + if (handler instanceof AbstractHttp11Protocol abstractHttp11Protocol) { + customize(abstractHttp11Protocol); } } } diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/embedded/tomcat/TomcatReactiveWebServerFactory.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/embedded/tomcat/TomcatReactiveWebServerFactory.java index 3b017e186b3..3863b3cb777 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/embedded/tomcat/TomcatReactiveWebServerFactory.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/embedded/tomcat/TomcatReactiveWebServerFactory.java @@ -203,8 +203,8 @@ public class TomcatReactiveWebServerFactory extends AbstractReactiveWebServerFac if (StringUtils.hasText(getServerHeader())) { connector.setProperty("server", getServerHeader()); } - if (connector.getProtocolHandler() instanceof AbstractProtocol) { - customizeProtocol((AbstractProtocol) connector.getProtocolHandler()); + if (connector.getProtocolHandler() instanceof AbstractProtocol abstractProtocol) { + customizeProtocol(abstractProtocol); } invokeProtocolHandlerCustomizers(connector.getProtocolHandler()); if (getUriEncoding() != null) { diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/embedded/tomcat/TomcatServletWebServerFactory.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/embedded/tomcat/TomcatServletWebServerFactory.java index a4a57213fe6..99fd36f7487 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/embedded/tomcat/TomcatServletWebServerFactory.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/embedded/tomcat/TomcatServletWebServerFactory.java @@ -345,8 +345,8 @@ public class TomcatServletWebServerFactory extends AbstractServletWebServerFacto if (StringUtils.hasText(getServerHeader())) { connector.setProperty("server", getServerHeader()); } - if (connector.getProtocolHandler() instanceof AbstractProtocol) { - customizeProtocol((AbstractProtocol) connector.getProtocolHandler()); + if (connector.getProtocolHandler() instanceof AbstractProtocol abstractProtocol) { + customizeProtocol(abstractProtocol); } invokeProtocolHandlerCustomizers(connector.getProtocolHandler()); if (getUriEncoding() != null) { diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/servlet/ServletContextInitializerBeans.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/servlet/ServletContextInitializerBeans.java index 07a5933fafc..df092825df7 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/servlet/ServletContextInitializerBeans.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/servlet/ServletContextInitializerBeans.java @@ -103,21 +103,21 @@ public class ServletContextInitializerBeans extends AbstractCollection) initializer).getServlet(); - addServletContextInitializerBean(Servlet.class, beanName, initializer, beanFactory, source); + if (initializer instanceof ServletRegistrationBean servletRegistrationBean) { + Servlet source = servletRegistrationBean.getServlet(); + addServletContextInitializerBean(Servlet.class, beanName, servletRegistrationBean, beanFactory, source); } - else if (initializer instanceof FilterRegistrationBean) { - Filter source = ((FilterRegistrationBean) initializer).getFilter(); - addServletContextInitializerBean(Filter.class, beanName, initializer, beanFactory, source); + else if (initializer instanceof FilterRegistrationBean filterRegistrationBean) { + Filter source = filterRegistrationBean.getFilter(); + addServletContextInitializerBean(Filter.class, beanName, filterRegistrationBean, beanFactory, source); } - else if (initializer instanceof DelegatingFilterProxyRegistrationBean) { - String source = ((DelegatingFilterProxyRegistrationBean) initializer).getTargetBeanName(); - addServletContextInitializerBean(Filter.class, beanName, initializer, beanFactory, source); + else if (initializer instanceof DelegatingFilterProxyRegistrationBean registrationBean) { + String source = registrationBean.getTargetBeanName(); + addServletContextInitializerBean(Filter.class, beanName, registrationBean, beanFactory, source); } - else if (initializer instanceof ServletListenerRegistrationBean) { - EventListener source = ((ServletListenerRegistrationBean) initializer).getListener(); - addServletContextInitializerBean(EventListener.class, beanName, initializer, beanFactory, source); + else if (initializer instanceof ServletListenerRegistrationBean registrationBean) { + EventListener source = registrationBean.getListener(); + addServletContextInitializerBean(EventListener.class, beanName, registrationBean, beanFactory, source); } else { addServletContextInitializerBean(ServletContextInitializer.class, beanName, initializer, beanFactory, diff --git a/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/SpringApplicationTests.java b/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/SpringApplicationTests.java index 0039c9ce395..4ef2b63df13 100644 --- a/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/SpringApplicationTests.java +++ b/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/SpringApplicationTests.java @@ -1462,8 +1462,8 @@ class SpringApplicationTests { private ArgumentMatcher isAvailabilityChangeEventWithState( S state) { - return (argument) -> (argument instanceof AvailabilityChangeEvent) - && ((AvailabilityChangeEvent) argument).getState().equals(state); + return (argument) -> (argument instanceof AvailabilityChangeEvent availabilityChangeEvent) + && availabilityChangeEvent.getState().equals(state); } private AtomicReference addListener(SpringApplication application,