diff --git a/integration-tests/src/test/java/org/springframework/context/annotation/jsr330/ClassPathBeanDefinitionScannerJsr330ScopeIntegrationTests.java b/integration-tests/src/test/java/org/springframework/context/annotation/jsr330/ClassPathBeanDefinitionScannerJsr330ScopeIntegrationTests.java index f2bcce460c4..aa32d4708c6 100644 --- a/integration-tests/src/test/java/org/springframework/context/annotation/jsr330/ClassPathBeanDefinitionScannerJsr330ScopeIntegrationTests.java +++ b/integration-tests/src/test/java/org/springframework/context/annotation/jsr330/ClassPathBeanDefinitionScannerJsr330ScopeIntegrationTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2019 the original author or authors. + * Copyright 2002-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -33,7 +33,6 @@ import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.ClassPathBeanDefinitionScanner; import org.springframework.context.annotation.ScopeMetadata; -import org.springframework.context.annotation.ScopeMetadataResolver; import org.springframework.context.annotation.ScopedProxyMode; import org.springframework.mock.web.MockHttpServletRequest; import org.springframework.mock.web.MockHttpSession; @@ -306,29 +305,25 @@ class ClassPathBeanDefinitionScannerJsr330ScopeIntegrationTests { GenericWebApplicationContext context = new GenericWebApplicationContext(); ClassPathBeanDefinitionScanner scanner = new ClassPathBeanDefinitionScanner(context); scanner.setIncludeAnnotationConfig(false); - scanner.setScopeMetadataResolver(new ScopeMetadataResolver() { - @Override - public ScopeMetadata resolveScopeMetadata(BeanDefinition definition) { - ScopeMetadata metadata = new ScopeMetadata(); - if (definition instanceof AnnotatedBeanDefinition) { - AnnotatedBeanDefinition annDef = (AnnotatedBeanDefinition) definition; - for (String type : annDef.getMetadata().getAnnotationTypes()) { - if (type.equals(jakarta.inject.Singleton.class.getName())) { - metadata.setScopeName(BeanDefinition.SCOPE_SINGLETON); - break; - } - else if (annDef.getMetadata().getMetaAnnotationTypes(type).contains(jakarta.inject.Scope.class.getName())) { - metadata.setScopeName(type.substring(type.length() - 13, type.length() - 6).toLowerCase()); - metadata.setScopedProxyMode(scopedProxyMode); - break; - } - else if (type.startsWith("jakarta.inject")) { - metadata.setScopeName(BeanDefinition.SCOPE_PROTOTYPE); - } + scanner.setScopeMetadataResolver(definition -> { + ScopeMetadata metadata = new ScopeMetadata(); + if (definition instanceof AnnotatedBeanDefinition annDef) { + for (String type : annDef.getMetadata().getAnnotationTypes()) { + if (type.equals(jakarta.inject.Singleton.class.getName())) { + metadata.setScopeName(BeanDefinition.SCOPE_SINGLETON); + break; + } + else if (annDef.getMetadata().getMetaAnnotationTypes(type).contains(jakarta.inject.Scope.class.getName())) { + metadata.setScopeName(type.substring(type.length() - 13, type.length() - 6).toLowerCase()); + metadata.setScopedProxyMode(scopedProxyMode); + break; + } + else if (type.startsWith("javax.inject")) { + metadata.setScopeName(BeanDefinition.SCOPE_PROTOTYPE); } } - return metadata; } + return metadata; }); // Scan twice in order to find errors in the bean definition compatibility check. diff --git a/spring-aop/src/test/java/org/springframework/aop/interceptor/ConcurrencyThrottleInterceptorTests.java b/spring-aop/src/test/java/org/springframework/aop/interceptor/ConcurrencyThrottleInterceptorTests.java index 9936573300d..d135689decc 100644 --- a/spring-aop/src/test/java/org/springframework/aop/interceptor/ConcurrencyThrottleInterceptorTests.java +++ b/spring-aop/src/test/java/org/springframework/aop/interceptor/ConcurrencyThrottleInterceptorTests.java @@ -125,16 +125,7 @@ public class ConcurrencyThrottleInterceptorTests { try { this.proxy.exceptional(this.ex); } - catch (RuntimeException ex) { - if (ex == this.ex) { - logger.debug("Expected exception thrown", ex); - } - else { - // should never happen - ex.printStackTrace(); - } - } - catch (Error err) { + catch (RuntimeException | Error err) { if (err == this.ex) { logger.debug("Expected exception thrown", err); } diff --git a/spring-beans/src/test/java/org/springframework/beans/AbstractPropertyValuesTests.java b/spring-beans/src/test/java/org/springframework/beans/AbstractPropertyValuesTests.java index 9f3bd08ec9f..7569be3d881 100644 --- a/spring-beans/src/test/java/org/springframework/beans/AbstractPropertyValuesTests.java +++ b/spring-beans/src/test/java/org/springframework/beans/AbstractPropertyValuesTests.java @@ -43,13 +43,13 @@ public abstract class AbstractPropertyValuesTests { m.put("forname", "Tony"); m.put("surname", "Blair"); m.put("age", "50"); - for (int i = 0; i < ps.length; i++) { - Object val = m.get(ps[i].getName()); + for (PropertyValue element : ps) { + Object val = m.get(element.getName()); assertThat(val != null).as("Can't have unexpected value").isTrue(); boolean condition = val instanceof String; assertThat(condition).as("Val i string").isTrue(); - assertThat(val.equals(ps[i].getValue())).as("val matches expected").isTrue(); - m.remove(ps[i].getName()); + assertThat(val.equals(element.getValue())).as("val matches expected").isTrue(); + m.remove(element.getName()); } assertThat(m.size() == 0).as("Map size is 0").isTrue(); } diff --git a/spring-beans/src/test/java/org/springframework/beans/factory/BeanFactoryUtilsTests.java b/spring-beans/src/test/java/org/springframework/beans/factory/BeanFactoryUtilsTests.java index e869c9c6c90..b3230e53e0e 100644 --- a/spring-beans/src/test/java/org/springframework/beans/factory/BeanFactoryUtilsTests.java +++ b/spring-beans/src/test/java/org/springframework/beans/factory/BeanFactoryUtilsTests.java @@ -483,6 +483,7 @@ public class BeanFactoryUtilsTests { return TestBean.class; } + @Override public TestBean getObject() { // We don't really care if the actual instance is a singleton or prototype // for the tests that use this factory. diff --git a/spring-beans/src/test/java/org/springframework/beans/factory/DefaultListableBeanFactoryTests.java b/spring-beans/src/test/java/org/springframework/beans/factory/DefaultListableBeanFactoryTests.java index 265ba2fa5e3..8439900f3e0 100644 --- a/spring-beans/src/test/java/org/springframework/beans/factory/DefaultListableBeanFactoryTests.java +++ b/spring-beans/src/test/java/org/springframework/beans/factory/DefaultListableBeanFactoryTests.java @@ -42,8 +42,6 @@ import org.junit.jupiter.api.Test; import org.springframework.beans.BeansException; import org.springframework.beans.MutablePropertyValues; import org.springframework.beans.NotWritablePropertyException; -import org.springframework.beans.PropertyEditorRegistrar; -import org.springframework.beans.PropertyEditorRegistry; import org.springframework.beans.PropertyValue; import org.springframework.beans.TypeConverter; import org.springframework.beans.TypeMismatchException; @@ -78,7 +76,6 @@ import org.springframework.beans.testfixture.beans.factory.DummyFactory; import org.springframework.core.MethodParameter; import org.springframework.core.ResolvableType; import org.springframework.core.annotation.AnnotationAwareOrderComparator; -import org.springframework.core.convert.converter.Converter; import org.springframework.core.convert.support.DefaultConversionService; import org.springframework.core.convert.support.GenericConversionService; import org.springframework.core.io.Resource; @@ -983,16 +980,13 @@ class DefaultListableBeanFactoryTests { @Test void customConverter() { GenericConversionService conversionService = new DefaultConversionService(); - conversionService.addConverter(new Converter() { - @Override - public Float convert(String source) { - try { - NumberFormat nf = NumberFormat.getInstance(Locale.GERMAN); - return nf.parse(source).floatValue(); - } - catch (ParseException ex) { - throw new IllegalArgumentException(ex); - } + conversionService.addConverter(String.class, Float.class, source -> { + try { + NumberFormat nf = NumberFormat.getInstance(Locale.GERMAN); + return nf.parse(source).floatValue(); + } + catch (ParseException ex) { + throw new IllegalArgumentException(ex); } }); lbf.setConversionService(conversionService); @@ -1007,12 +1001,9 @@ class DefaultListableBeanFactoryTests { @Test void customEditorWithBeanReference() { - lbf.addPropertyEditorRegistrar(new PropertyEditorRegistrar() { - @Override - public void registerCustomEditors(PropertyEditorRegistry registry) { - NumberFormat nf = NumberFormat.getInstance(Locale.GERMAN); - registry.registerCustomEditor(Float.class, new CustomNumberEditor(Float.class, nf, true)); - } + lbf.addPropertyEditorRegistrar(registry -> { + NumberFormat nf = NumberFormat.getInstance(Locale.GERMAN); + registry.registerCustomEditor(Float.class, new CustomNumberEditor(Float.class, nf, true)); }); MutablePropertyValues pvs = new MutablePropertyValues(); pvs.add("myFloat", new RuntimeBeanReference("myFloat")); @@ -2695,8 +2686,12 @@ class DefaultListableBeanFactoryTests { @Override public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } ConstructorDependency that = (ConstructorDependency) o; return spouseAge == that.spouseAge && Objects.equals(spouse, that.spouse) && diff --git a/spring-beans/src/test/java/org/springframework/beans/factory/annotation/AutowiredAnnotationBeanPostProcessorTests.java b/spring-beans/src/test/java/org/springframework/beans/factory/annotation/AutowiredAnnotationBeanPostProcessorTests.java index 2d957181721..31e72d51107 100644 --- a/spring-beans/src/test/java/org/springframework/beans/factory/annotation/AutowiredAnnotationBeanPostProcessorTests.java +++ b/spring-beans/src/test/java/org/springframework/beans/factory/annotation/AutowiredAnnotationBeanPostProcessorTests.java @@ -22,7 +22,6 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; import java.lang.reflect.InvocationHandler; -import java.lang.reflect.Method; import java.lang.reflect.Proxy; import java.util.ArrayList; import java.util.Arrays; @@ -3638,11 +3637,8 @@ public class AutowiredAnnotationBeanPostProcessorTests { @SuppressWarnings("unchecked") public T createMock(Class toMock) { return (T) Proxy.newProxyInstance(AutowiredAnnotationBeanPostProcessorTests.class.getClassLoader(), new Class[] {toMock}, - new InvocationHandler() { - @Override - public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { - throw new UnsupportedOperationException("mocked!"); - } + (InvocationHandler) (proxy, method, args) -> { + throw new UnsupportedOperationException("mocked!"); }); } } diff --git a/spring-beans/src/test/java/org/springframework/beans/factory/config/CustomEditorConfigurerTests.java b/spring-beans/src/test/java/org/springframework/beans/factory/config/CustomEditorConfigurerTests.java index a94425ccf1a..48a87a9a773 100644 --- a/spring-beans/src/test/java/org/springframework/beans/factory/config/CustomEditorConfigurerTests.java +++ b/spring-beans/src/test/java/org/springframework/beans/factory/config/CustomEditorConfigurerTests.java @@ -29,7 +29,6 @@ import org.junit.jupiter.api.Test; import org.springframework.beans.MutablePropertyValues; import org.springframework.beans.PropertyEditorRegistrar; -import org.springframework.beans.PropertyEditorRegistry; import org.springframework.beans.factory.support.DefaultListableBeanFactory; import org.springframework.beans.factory.support.RootBeanDefinition; import org.springframework.beans.propertyeditors.CustomDateEditor; @@ -50,12 +49,7 @@ public class CustomEditorConfigurerTests { CustomEditorConfigurer cec = new CustomEditorConfigurer(); final DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT, Locale.GERMAN); cec.setPropertyEditorRegistrars(new PropertyEditorRegistrar[] { - new PropertyEditorRegistrar() { - @Override - public void registerCustomEditors(PropertyEditorRegistry registry) { - registry.registerCustomEditor(Date.class, new CustomDateEditor(df, true)); - } - }}); + registry -> registry.registerCustomEditor(Date.class, new CustomDateEditor(df, true))}); cec.postProcessBeanFactory(bf); MutablePropertyValues pvs = new MutablePropertyValues(); diff --git a/spring-beans/src/test/java/org/springframework/beans/factory/config/MethodInvokingFactoryBeanTests.java b/spring-beans/src/test/java/org/springframework/beans/factory/config/MethodInvokingFactoryBeanTests.java index fae712817bd..810b2477833 100644 --- a/spring-beans/src/test/java/org/springframework/beans/factory/config/MethodInvokingFactoryBeanTests.java +++ b/spring-beans/src/test/java/org/springframework/beans/factory/config/MethodInvokingFactoryBeanTests.java @@ -113,7 +113,7 @@ public class MethodInvokingFactoryBeanTests { mcfb = new MethodInvokingFactoryBean(); mcfb.setTargetClass(TestClass1.class); mcfb.setTargetMethod("supertypes"); - mcfb.setArguments(new ArrayList<>(), new ArrayList(), "hello"); + mcfb.setArguments(new ArrayList<>(), new ArrayList<>(), "hello"); mcfb.afterPropertiesSet(); mcfb.getObjectType(); @@ -184,7 +184,7 @@ public class MethodInvokingFactoryBeanTests { mcfb = new MethodInvokingFactoryBean(); mcfb.setTargetClass(TestClass1.class); mcfb.setTargetMethod("supertypes"); - mcfb.setArguments(new ArrayList<>(), new ArrayList(), "hello"); + mcfb.setArguments(new ArrayList<>(), new ArrayList<>(), "hello"); // should pass mcfb.afterPropertiesSet(); } @@ -194,7 +194,7 @@ public class MethodInvokingFactoryBeanTests { MethodInvokingFactoryBean mcfb = new MethodInvokingFactoryBean(); mcfb.setTargetClass(TestClass1.class); mcfb.setTargetMethod("supertypes"); - mcfb.setArguments(new ArrayList<>(), new ArrayList(), "hello", "bogus"); + mcfb.setArguments(new ArrayList<>(), new ArrayList<>(), "hello", "bogus"); assertThatExceptionOfType(NoSuchMethodException.class).as( "Matched method with wrong number of args").isThrownBy( mcfb::afterPropertiesSet); @@ -210,14 +210,14 @@ public class MethodInvokingFactoryBeanTests { mcfb = new MethodInvokingFactoryBean(); mcfb.setTargetClass(TestClass1.class); mcfb.setTargetMethod("supertypes2"); - mcfb.setArguments(new ArrayList<>(), new ArrayList(), "hello", "bogus"); + mcfb.setArguments(new ArrayList<>(), new ArrayList<>(), "hello", "bogus"); mcfb.afterPropertiesSet(); assertThat(mcfb.getObject()).isEqualTo("hello"); mcfb = new MethodInvokingFactoryBean(); mcfb.setTargetClass(TestClass1.class); mcfb.setTargetMethod("supertypes2"); - mcfb.setArguments(new ArrayList<>(), new ArrayList(), new Object()); + mcfb.setArguments(new ArrayList<>(), new ArrayList<>(), new Object()); assertThatExceptionOfType(NoSuchMethodException.class).as( "Matched method when shouldn't have matched").isThrownBy( mcfb::afterPropertiesSet); diff --git a/spring-beans/src/test/java/org/springframework/beans/factory/support/BeanFactoryGenericsTests.java b/spring-beans/src/test/java/org/springframework/beans/factory/support/BeanFactoryGenericsTests.java index 5a981f91e54..ef53180c6a6 100644 --- a/spring-beans/src/test/java/org/springframework/beans/factory/support/BeanFactoryGenericsTests.java +++ b/spring-beans/src/test/java/org/springframework/beans/factory/support/BeanFactoryGenericsTests.java @@ -17,7 +17,6 @@ package org.springframework.beans.factory.support; import java.lang.reflect.InvocationHandler; -import java.lang.reflect.Method; import java.lang.reflect.Proxy; import java.net.MalformedURLException; import java.net.URI; @@ -34,8 +33,6 @@ import java.util.stream.Collectors; import org.junit.jupiter.api.Test; import org.mockito.Mockito; -import org.springframework.beans.PropertyEditorRegistrar; -import org.springframework.beans.PropertyEditorRegistry; import org.springframework.beans.factory.BeanCreationException; import org.springframework.beans.factory.NoUniqueBeanDefinitionException; import org.springframework.beans.factory.ObjectProvider; @@ -409,12 +406,7 @@ class BeanFactoryGenericsTests { @Test void testGenericMapWithCollectionValueConstructor() { DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); - bf.addPropertyEditorRegistrar(new PropertyEditorRegistrar() { - @Override - public void registerCustomEditors(PropertyEditorRegistry registry) { - registry.registerCustomEditor(Number.class, new CustomNumberEditor(Integer.class, false)); - } - }); + bf.addPropertyEditorRegistrar(registry -> registry.registerCustomEditor(Number.class, new CustomNumberEditor(Integer.class, false))); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); Map> input = new HashMap<>(); @@ -568,12 +560,7 @@ class BeanFactoryGenericsTests { @Test void testGenericMapWithCollectionValueFactoryMethod() { DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); - bf.addPropertyEditorRegistrar(new PropertyEditorRegistrar() { - @Override - public void registerCustomEditors(PropertyEditorRegistry registry) { - registry.registerCustomEditor(Number.class, new CustomNumberEditor(Integer.class, false)); - } - }); + bf.addPropertyEditorRegistrar(registry -> registry.registerCustomEditor(Number.class, new CustomNumberEditor(Integer.class, false))); RootBeanDefinition rbd = new RootBeanDefinition(GenericBean.class); rbd.setFactoryMethodName("createInstance"); @@ -1010,11 +997,8 @@ class BeanFactoryGenericsTests { @SuppressWarnings("unchecked") public T createMock(Class toMock) { return (T) Proxy.newProxyInstance(BeanFactoryGenericsTests.class.getClassLoader(), new Class[] {toMock}, - new InvocationHandler() { - @Override - public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { - throw new UnsupportedOperationException("mocked!"); - } + (InvocationHandler) (proxy, method, args) -> { + throw new UnsupportedOperationException("mocked!"); }); } } diff --git a/spring-beans/src/test/java/org/springframework/beans/factory/support/DefaultSingletonBeanRegistryTests.java b/spring-beans/src/test/java/org/springframework/beans/factory/support/DefaultSingletonBeanRegistryTests.java index 6e3f8465e9e..b7bc696c68d 100644 --- a/spring-beans/src/test/java/org/springframework/beans/factory/support/DefaultSingletonBeanRegistryTests.java +++ b/spring-beans/src/test/java/org/springframework/beans/factory/support/DefaultSingletonBeanRegistryTests.java @@ -18,8 +18,6 @@ package org.springframework.beans.factory.support; import org.junit.jupiter.api.Test; -import org.springframework.beans.BeansException; -import org.springframework.beans.factory.ObjectFactory; import org.springframework.beans.testfixture.beans.DerivedTestBean; import org.springframework.beans.testfixture.beans.TestBean; @@ -40,12 +38,7 @@ public class DefaultSingletonBeanRegistryTests { beanRegistry.registerSingleton("tb", tb); assertThat(beanRegistry.getSingleton("tb")).isSameAs(tb); - TestBean tb2 = (TestBean) beanRegistry.getSingleton("tb2", new ObjectFactory() { - @Override - public Object getObject() throws BeansException { - return new TestBean(); - } - }); + TestBean tb2 = (TestBean) beanRegistry.getSingleton("tb2", () -> new TestBean()); assertThat(beanRegistry.getSingleton("tb2")).isSameAs(tb2); assertThat(beanRegistry.getSingleton("tb")).isSameAs(tb); diff --git a/spring-beans/src/testFixtures/java/org/springframework/beans/testfixture/beans/MustBeInitialized.java b/spring-beans/src/testFixtures/java/org/springframework/beans/testfixture/beans/MustBeInitialized.java index 2e53ce2f885..3ca9a82d72f 100644 --- a/spring-beans/src/testFixtures/java/org/springframework/beans/testfixture/beans/MustBeInitialized.java +++ b/spring-beans/src/testFixtures/java/org/springframework/beans/testfixture/beans/MustBeInitialized.java @@ -40,8 +40,9 @@ public class MustBeInitialized implements InitializingBean { * managed the bean's lifecycle correctly */ public void businessMethod() { - if (!this.inited) + if (!this.inited) { throw new RuntimeException("Factory didn't call afterPropertiesSet() on MustBeInitialized object"); + } } } diff --git a/spring-beans/src/testFixtures/java/org/springframework/beans/testfixture/beans/Pet.java b/spring-beans/src/testFixtures/java/org/springframework/beans/testfixture/beans/Pet.java index 661eff92feb..7b725d39c9b 100644 --- a/spring-beans/src/testFixtures/java/org/springframework/beans/testfixture/beans/Pet.java +++ b/spring-beans/src/testFixtures/java/org/springframework/beans/testfixture/beans/Pet.java @@ -39,12 +39,18 @@ public class Pet { @Override public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } final Pet pet = (Pet) o; - if (name != null ? !name.equals(pet.name) : pet.name != null) return false; + if (name != null ? !name.equals(pet.name) : pet.name != null) { + return false; + } return true; } diff --git a/spring-context-support/src/test/java/org/springframework/cache/caffeine/CaffeineCacheManagerTests.java b/spring-context-support/src/test/java/org/springframework/cache/caffeine/CaffeineCacheManagerTests.java index e90a3ece936..f8c0de21f2d 100644 --- a/spring-context-support/src/test/java/org/springframework/cache/caffeine/CaffeineCacheManagerTests.java +++ b/spring-context-support/src/test/java/org/springframework/cache/caffeine/CaffeineCacheManagerTests.java @@ -178,14 +178,11 @@ public class CaffeineCacheManagerTests { @Test public void cacheLoaderUseLoadingCache() { CaffeineCacheManager cm = new CaffeineCacheManager("c1"); - cm.setCacheLoader(new CacheLoader() { - @Override - public Object load(Object key) throws Exception { - if ("ping".equals(key)) { - return "pong"; - } - throw new IllegalArgumentException("I only know ping"); + cm.setCacheLoader(key -> { + if ("ping".equals(key)) { + return "pong"; } + throw new IllegalArgumentException("I only know ping"); }); Cache cache1 = cm.getCache("c1"); Cache.ValueWrapper value = cache1.get("ping"); diff --git a/spring-context-support/src/test/java/org/springframework/mail/javamail/JavaMailSenderTests.java b/spring-context-support/src/test/java/org/springframework/mail/javamail/JavaMailSenderTests.java index d400341aae4..503044c9783 100644 --- a/spring-context-support/src/test/java/org/springframework/mail/javamail/JavaMailSenderTests.java +++ b/spring-context-support/src/test/java/org/springframework/mail/javamail/JavaMailSenderTests.java @@ -181,12 +181,9 @@ public class JavaMailSenderTests { final List messages = new ArrayList<>(); - MimeMessagePreparator preparator = new MimeMessagePreparator() { - @Override - public void prepare(MimeMessage mimeMessage) throws MessagingException { - mimeMessage.setRecipient(Message.RecipientType.TO, new InternetAddress("you@mail.org")); - messages.add(mimeMessage); - } + MimeMessagePreparator preparator = mimeMessage -> { + mimeMessage.setRecipient(Message.RecipientType.TO, new InternetAddress("you@mail.org")); + messages.add(mimeMessage); }; sender.send(preparator); @@ -207,19 +204,13 @@ public class JavaMailSenderTests { final List messages = new ArrayList<>(); - MimeMessagePreparator preparator1 = new MimeMessagePreparator() { - @Override - public void prepare(MimeMessage mimeMessage) throws MessagingException { - mimeMessage.setRecipient(Message.RecipientType.TO, new InternetAddress("he@mail.org")); - messages.add(mimeMessage); - } + MimeMessagePreparator preparator1 = mimeMessage -> { + mimeMessage.setRecipient(Message.RecipientType.TO, new InternetAddress("he@mail.org")); + messages.add(mimeMessage); }; - MimeMessagePreparator preparator2 = new MimeMessagePreparator() { - @Override - public void prepare(MimeMessage mimeMessage) throws MessagingException { - mimeMessage.setRecipient(Message.RecipientType.TO, new InternetAddress("she@mail.org")); - messages.add(mimeMessage); - } + MimeMessagePreparator preparator2 = mimeMessage -> { + mimeMessage.setRecipient(Message.RecipientType.TO, new InternetAddress("she@mail.org")); + messages.add(mimeMessage); }; sender.send(preparator1, preparator2); @@ -322,12 +313,7 @@ public class JavaMailSenderTests { @Test public void javaMailSenderWithParseExceptionOnMimeMessagePreparator() { MockJavaMailSender sender = new MockJavaMailSender(); - MimeMessagePreparator preparator = new MimeMessagePreparator() { - @Override - public void prepare(MimeMessage mimeMessage) throws MessagingException { - mimeMessage.setFrom(new InternetAddress("")); - } - }; + MimeMessagePreparator preparator = mimeMessage -> mimeMessage.setFrom(new InternetAddress("")); try { sender.send(preparator); } diff --git a/spring-context/src/test/java/org/springframework/aop/aspectj/autoproxy/AspectJAutoProxyCreatorTests.java b/spring-context/src/test/java/org/springframework/aop/aspectj/autoproxy/AspectJAutoProxyCreatorTests.java index d841044f265..91e58722fea 100644 --- a/spring-context/src/test/java/org/springframework/aop/aspectj/autoproxy/AspectJAutoProxyCreatorTests.java +++ b/spring-context/src/test/java/org/springframework/aop/aspectj/autoproxy/AspectJAutoProxyCreatorTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2021 the original author or authors. + * Copyright 2002-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -557,12 +557,7 @@ class TestBeanAdvisor extends StaticMethodMatcherPointcutAdvisor { public int count; public TestBeanAdvisor() { - setAdvice(new MethodBeforeAdvice() { - @Override - public void before(Method method, Object[] args, @Nullable Object target) throws Throwable { - ++count; - } - }); + setAdvice((MethodBeforeAdvice) (method, args, target) -> ++count); } @Override diff --git a/spring-context/src/test/java/org/springframework/aop/framework/AbstractAopProxyTests.java b/spring-context/src/test/java/org/springframework/aop/framework/AbstractAopProxyTests.java index db27a571fc4..76b7d336af5 100644 --- a/spring-context/src/test/java/org/springframework/aop/framework/AbstractAopProxyTests.java +++ b/spring-context/src/test/java/org/springframework/aop/framework/AbstractAopProxyTests.java @@ -372,17 +372,14 @@ public abstract class AbstractAopProxyTests { private void testContext(final boolean context) throws Throwable { final String s = "foo"; // Test return value - MethodInterceptor mi = new MethodInterceptor() { - @Override - public Object invoke(MethodInvocation invocation) throws Throwable { - if (!context) { - assertNoInvocationContext(); - } - else { - assertThat(ExposeInvocationInterceptor.currentInvocation()).as("have context").isNotNull(); - } - return s; + MethodInterceptor mi = invocation -> { + if (!context) { + assertNoInvocationContext(); } + else { + assertThat(ExposeInvocationInterceptor.currentInvocation()).as("have context").isNotNull(); + } + return s; }; AdvisedSupport pc = new AdvisedSupport(ITestBean.class); if (context) { @@ -422,11 +419,8 @@ public abstract class AbstractAopProxyTests { public void testDeclaredException() throws Throwable { final Exception expectedException = new Exception(); // Test return value - MethodInterceptor mi = new MethodInterceptor() { - @Override - public Object invoke(MethodInvocation invocation) throws Throwable { - throw expectedException; - } + MethodInterceptor mi = invocation -> { + throw expectedException; }; AdvisedSupport pc = new AdvisedSupport(ITestBean.class); pc.addAdvice(ExposeInvocationInterceptor.INSTANCE); @@ -453,11 +447,8 @@ public abstract class AbstractAopProxyTests { public void testUndeclaredCheckedException() throws Throwable { final Exception unexpectedException = new Exception(); // Test return value - MethodInterceptor mi = new MethodInterceptor() { - @Override - public Object invoke(MethodInvocation invocation) throws Throwable { - throw unexpectedException; - } + MethodInterceptor mi = invocation -> { + throw unexpectedException; }; AdvisedSupport pc = new AdvisedSupport(ITestBean.class); pc.addAdvice(ExposeInvocationInterceptor.INSTANCE); @@ -477,11 +468,8 @@ public abstract class AbstractAopProxyTests { public void testUndeclaredUncheckedException() throws Throwable { final RuntimeException unexpectedException = new RuntimeException(); // Test return value - MethodInterceptor mi = new MethodInterceptor() { - @Override - public Object invoke(MethodInvocation invocation) throws Throwable { - throw unexpectedException; - } + MethodInterceptor mi = invocation -> { + throw unexpectedException; }; AdvisedSupport pc = new AdvisedSupport(ITestBean.class); pc.addAdvice(ExposeInvocationInterceptor.INSTANCE); @@ -660,12 +648,7 @@ public abstract class AbstractAopProxyTests { NopInterceptor di = new NopInterceptor(); pc.addAdvice(di); final long ts = 37; - pc.addAdvice(new DelegatingIntroductionInterceptor(new TimeStamped() { - @Override - public long getTimeStamp() { - return ts; - } - })); + pc.addAdvice(new DelegatingIntroductionInterceptor((TimeStamped) () -> ts)); ITestBean proxied = (ITestBean) createProxy(pc); assertThat(proxied.getName()).isEqualTo(name); @@ -1039,17 +1022,14 @@ public abstract class AbstractAopProxyTests { ProxyFactory pc = new ProxyFactory(tb); pc.addInterface(ITestBean.class); - MethodInterceptor twoBirthdayInterceptor = new MethodInterceptor() { - @Override - public Object invoke(MethodInvocation mi) throws Throwable { - // Clone the invocation to proceed three times - // "The Moor's Last Sigh": this technology can cause premature aging - MethodInvocation clone1 = ((ReflectiveMethodInvocation) mi).invocableClone(); - MethodInvocation clone2 = ((ReflectiveMethodInvocation) mi).invocableClone(); - clone1.proceed(); - clone2.proceed(); - return mi.proceed(); - } + MethodInterceptor twoBirthdayInterceptor = mi -> { + // Clone the invocation to proceed three times + // "The Moor's Last Sigh": this technology can cause premature aging + MethodInvocation clone1 = ((ReflectiveMethodInvocation) mi).invocableClone(); + MethodInvocation clone2 = ((ReflectiveMethodInvocation) mi).invocableClone(); + clone1.proceed(); + clone2.proceed(); + return mi.proceed(); }; @SuppressWarnings("serial") StaticMethodMatcherPointcutAdvisor advisor = new StaticMethodMatcherPointcutAdvisor(twoBirthdayInterceptor) { @@ -1082,16 +1062,13 @@ public abstract class AbstractAopProxyTests { /** * Changes the name, then changes it back. */ - MethodInterceptor nameReverter = new MethodInterceptor() { - @Override - public Object invoke(MethodInvocation mi) throws Throwable { - MethodInvocation clone = ((ReflectiveMethodInvocation) mi).invocableClone(); - String oldName = ((ITestBean) mi.getThis()).getName(); - clone.getArguments()[0] = oldName; - // Original method invocation should be unaffected by changes to argument list of clone - mi.proceed(); - return clone.proceed(); - } + MethodInterceptor nameReverter = mi -> { + MethodInvocation clone = ((ReflectiveMethodInvocation) mi).invocableClone(); + String oldName = ((ITestBean) mi.getThis()).getName(); + clone.getArguments()[0] = oldName; + // Original method invocation should be unaffected by changes to argument list of clone + mi.proceed(); + return clone.proceed(); }; class NameSaver implements MethodInterceptor { @@ -1347,8 +1324,9 @@ public abstract class AbstractAopProxyTests { @Override public void before(Method m, Object[] args, Object target) throws Throwable { super.before(m, args, target); - if (m.getName().startsWith("set")) + if (m.getName().startsWith("set")) { throw rex; + } } }; @@ -1563,13 +1541,10 @@ public abstract class AbstractAopProxyTests { @SuppressWarnings("serial") protected static class StringSetterNullReplacementAdvice extends DefaultPointcutAdvisor { - private static MethodInterceptor cleaner = new MethodInterceptor() { - @Override - public Object invoke(MethodInvocation mi) throws Throwable { - // We know it can only be invoked if there's a single parameter of type string - mi.getArguments()[0] = ""; - return mi.proceed(); - } + private static MethodInterceptor cleaner = mi -> { + // We know it can only be invoked if there's a single parameter of type string + mi.getArguments()[0] = ""; + return mi.proceed(); }; public StringSetterNullReplacementAdvice() { @@ -1601,7 +1576,9 @@ public abstract class AbstractAopProxyTests { @Override public boolean matches(Method m, @Nullable Class targetClass, Object... args) { boolean run = m.getName().contains(pattern); - if (run) ++count; + if (run) { + ++count; + } return run; } }); @@ -1620,7 +1597,9 @@ public abstract class AbstractAopProxyTests { @Override public boolean matches(Method m, @Nullable Class targetClass, Object... args) { boolean run = m.getName().contains(pattern); - if (run) ++count; + if (run) { + ++count; + } return run; } @Override @@ -1924,8 +1903,9 @@ public abstract class AbstractAopProxyTests { */ @Override public void releaseTarget(Object pTarget) throws Exception { - if (pTarget != this.target) + if (pTarget != this.target) { throw new RuntimeException("Released wrong target"); + } ++releases; } @@ -1934,8 +1914,9 @@ public abstract class AbstractAopProxyTests { * */ public void verify() { - if (gets != releases) + if (gets != releases) { throw new RuntimeException("Expectation failed: " + gets + " gets and " + releases + " releases"); + } } /** diff --git a/spring-context/src/test/java/org/springframework/aop/framework/JdkDynamicProxyTests.java b/spring-context/src/test/java/org/springframework/aop/framework/JdkDynamicProxyTests.java index 306c3d49909..50b26ed19f9 100644 --- a/spring-context/src/test/java/org/springframework/aop/framework/JdkDynamicProxyTests.java +++ b/spring-context/src/test/java/org/springframework/aop/framework/JdkDynamicProxyTests.java @@ -198,10 +198,16 @@ public class JdkDynamicProxyTests extends AbstractAopProxyTests implements Seria @Override public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } Person person = (Person) o; - if (!name.equals(person.name)) return false; + if (!name.equals(person.name)) { + return false; + } return true; } diff --git a/spring-context/src/test/java/org/springframework/aop/framework/ProxyFactoryBeanTests.java b/spring-context/src/test/java/org/springframework/aop/framework/ProxyFactoryBeanTests.java index 91d85d35dad..3495ae05f92 100644 --- a/spring-context/src/test/java/org/springframework/aop/framework/ProxyFactoryBeanTests.java +++ b/spring-context/src/test/java/org/springframework/aop/framework/ProxyFactoryBeanTests.java @@ -304,11 +304,8 @@ public class ProxyFactoryBeanTests { final Exception ex = new UnsupportedOperationException("invoke"); // Add evil interceptor to head of list - config.addAdvice(0, new MethodInterceptor() { - @Override - public Object invoke(MethodInvocation invocation) throws Throwable { - throw ex; - } + config.addAdvice(0, (MethodInterceptor) invocation -> { + throw ex; }); assertThat(config.getAdvisors().length).as("Have correct advisor count").isEqualTo(2); @@ -691,12 +688,9 @@ public class ProxyFactoryBeanTests { } public PointcutForVoid() { - setAdvice(new MethodInterceptor() { - @Override - public Object invoke(MethodInvocation invocation) throws Throwable { - methodNames.add(invocation.getMethod().getName()); - return invocation.proceed(); - } + setAdvice((MethodInterceptor) invocation -> { + methodNames.add(invocation.getMethod().getName()); + return invocation.proceed(); }); setPointcut(new DynamicMethodMatcherPointcut() { @Override diff --git a/spring-context/src/test/java/org/springframework/aop/framework/autoproxy/AutoProxyCreatorTests.java b/spring-context/src/test/java/org/springframework/aop/framework/autoproxy/AutoProxyCreatorTests.java index eb39f93218c..901c88665d5 100644 --- a/spring-context/src/test/java/org/springframework/aop/framework/autoproxy/AutoProxyCreatorTests.java +++ b/spring-context/src/test/java/org/springframework/aop/framework/autoproxy/AutoProxyCreatorTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2021 the original author or authors. + * Copyright 2002-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,8 +17,6 @@ package org.springframework.aop.framework.autoproxy; import java.io.Serializable; -import java.lang.reflect.InvocationHandler; -import java.lang.reflect.Method; import java.lang.reflect.Proxy; import org.aopalliance.intercept.MethodInterceptor; @@ -434,6 +432,7 @@ public class AutoProxyCreatorTests { @SuppressWarnings("serial") public static class IntroductionTestAutoProxyCreator extends TestAutoProxyCreator { + @Override protected Object[] getAdvicesAndAdvisors() { DefaultIntroductionAdvisor advisor = new DefaultIntroductionAdvisor(this.testInterceptor); advisor.addInterface(Serializable.class); @@ -491,12 +490,8 @@ public class AutoProxyCreatorTests { @Override public ITestBean getObject() { - return (ITestBean) Proxy.newProxyInstance(CustomProxyFactoryBean.class.getClassLoader(), new Class[]{ITestBean.class}, new InvocationHandler() { - @Override - public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { - return ReflectionUtils.invokeMethod(method, tb, args); - } - }); + return (ITestBean) Proxy.newProxyInstance(CustomProxyFactoryBean.class.getClassLoader(), new Class[]{ITestBean.class}, + (proxy, method, args) -> ReflectionUtils.invokeMethod(method, tb, args)); } @Override diff --git a/spring-context/src/test/java/org/springframework/aop/target/CommonsPool2TargetSourceTests.java b/spring-context/src/test/java/org/springframework/aop/target/CommonsPool2TargetSourceTests.java index 6708435685c..d366fb6c605 100644 --- a/spring-context/src/test/java/org/springframework/aop/target/CommonsPool2TargetSourceTests.java +++ b/spring-context/src/test/java/org/springframework/aop/target/CommonsPool2TargetSourceTests.java @@ -158,8 +158,8 @@ class CommonsPool2TargetSourceTests { pooledInstances[9] = targetSource.getTarget(); // release all objects - for (int i = 0; i < pooledInstances.length; i++) { - targetSource.releaseTarget(pooledInstances[i]); + for (Object element : pooledInstances) { + targetSource.releaseTarget(element); } } diff --git a/spring-context/src/test/java/org/springframework/context/LifecycleContextBean.java b/spring-context/src/test/java/org/springframework/context/LifecycleContextBean.java index 1f04eb182cc..b05fcb658b7 100644 --- a/spring-context/src/test/java/org/springframework/context/LifecycleContextBean.java +++ b/spring-context/src/test/java/org/springframework/context/LifecycleContextBean.java @@ -33,21 +33,24 @@ public class LifecycleContextBean extends LifecycleBean implements ApplicationCo @Override public void setBeanFactory(BeanFactory beanFactory) { super.setBeanFactory(beanFactory); - if (this.owningContext != null) + if (this.owningContext != null) { throw new RuntimeException("Factory called setBeanFactory after setApplicationContext"); + } } @Override public void afterPropertiesSet() { super.afterPropertiesSet(); - if (this.owningContext == null) + if (this.owningContext == null) { throw new RuntimeException("Factory didn't call setApplicationContext before afterPropertiesSet on lifecycle bean"); + } } @Override public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { - if (this.owningFactory == null) + if (this.owningFactory == null) { throw new RuntimeException("Factory called setApplicationContext before setBeanFactory"); + } this.owningContext = applicationContext; } diff --git a/spring-context/src/test/java/org/springframework/context/annotation/AnnotationConfigApplicationContextTests.java b/spring-context/src/test/java/org/springframework/context/annotation/AnnotationConfigApplicationContextTests.java index 336432ff0c7..566a445288c 100644 --- a/spring-context/src/test/java/org/springframework/context/annotation/AnnotationConfigApplicationContextTests.java +++ b/spring-context/src/test/java/org/springframework/context/annotation/AnnotationConfigApplicationContextTests.java @@ -544,19 +544,24 @@ class TestBean { @Override public boolean equals(Object obj) { - if (this == obj) + if (this == obj) { return true; - if (obj == null) + } + if (obj == null) { return false; - if (getClass() != obj.getClass()) + } + if (getClass() != obj.getClass()) { return false; + } TestBean other = (TestBean) obj; if (name == null) { - if (other.name != null) + if (other.name != null) { return false; + } } - else if (!name.equals(other.name)) + else if (!name.equals(other.name)) { return false; + } return true; } diff --git a/spring-context/src/test/java/org/springframework/context/annotation/CommonAnnotationBeanPostProcessorTests.java b/spring-context/src/test/java/org/springframework/context/annotation/CommonAnnotationBeanPostProcessorTests.java index 14ae10d2b31..a21ed46862f 100644 --- a/spring-context/src/test/java/org/springframework/context/annotation/CommonAnnotationBeanPostProcessorTests.java +++ b/spring-context/src/test/java/org/springframework/context/annotation/CommonAnnotationBeanPostProcessorTests.java @@ -214,12 +214,7 @@ public class CommonAnnotationBeanPostProcessorTests { bf.registerBeanDefinition("testBean4", tbd); bf.registerResolvableDependency(BeanFactory.class, bf); - bf.registerResolvableDependency(INestedTestBean.class, new ObjectFactory() { - @Override - public Object getObject() throws BeansException { - return new NestedTestBean(); - } - }); + bf.registerResolvableDependency(INestedTestBean.class, (ObjectFactory) () -> new NestedTestBean()); @SuppressWarnings("deprecation") org.springframework.beans.factory.config.PropertyPlaceholderConfigurer ppc = new org.springframework.beans.factory.config.PropertyPlaceholderConfigurer(); diff --git a/spring-context/src/test/java/org/springframework/context/annotation/ConfigurationClassAndBFPPTests.java b/spring-context/src/test/java/org/springframework/context/annotation/ConfigurationClassAndBFPPTests.java index 21324a769ed..641b4d7ceaa 100644 --- a/spring-context/src/test/java/org/springframework/context/annotation/ConfigurationClassAndBFPPTests.java +++ b/spring-context/src/test/java/org/springframework/context/annotation/ConfigurationClassAndBFPPTests.java @@ -18,10 +18,8 @@ package org.springframework.context.annotation; import org.junit.jupiter.api.Test; -import org.springframework.beans.BeansException; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.config.BeanFactoryPostProcessor; -import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; import org.springframework.beans.testfixture.beans.TestBean; import static org.assertj.core.api.Assertions.assertThat; @@ -72,11 +70,8 @@ public class ConfigurationClassAndBFPPTests { @Bean public BeanFactoryPostProcessor bfpp() { - return new BeanFactoryPostProcessor() { - @Override - public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException { - // no-op - } + return beanFactory -> { + // no-op }; } } @@ -88,11 +83,8 @@ public class ConfigurationClassAndBFPPTests { @Bean public static final BeanFactoryPostProcessor bfpp() { - return new BeanFactoryPostProcessor() { - @Override - public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException { - // no-op - } + return beanFactory -> { + // no-op }; } } diff --git a/spring-context/src/test/java/org/springframework/context/annotation/ConfigurationClassWithConditionTests.java b/spring-context/src/test/java/org/springframework/context/annotation/ConfigurationClassWithConditionTests.java index 5a434faa207..e5593c5d873 100644 --- a/spring-context/src/test/java/org/springframework/context/annotation/ConfigurationClassWithConditionTests.java +++ b/spring-context/src/test/java/org/springframework/context/annotation/ConfigurationClassWithConditionTests.java @@ -291,7 +291,9 @@ public class ConfigurationClassWithConditionTests { static class ImportsNotCreated { static { - if (true) throw new RuntimeException(); + if (true) { + throw new RuntimeException(); + } } } @@ -299,14 +301,18 @@ public class ConfigurationClassWithConditionTests { static class ConfigurationNotCreated { static { - if (true) throw new RuntimeException(); + if (true) { + throw new RuntimeException(); + } } } static class RegistrarNotCreated implements ImportBeanDefinitionRegistrar { static { - if (true) throw new RuntimeException(); + if (true) { + throw new RuntimeException(); + } } @Override @@ -318,7 +324,9 @@ public class ConfigurationClassWithConditionTests { static class ImportSelectorNotCreated implements ImportSelector { static { - if (true) throw new RuntimeException(); + if (true) { + throw new RuntimeException(); + } } @Override diff --git a/spring-context/src/test/java/org/springframework/context/annotation/configuration/ConfigurationClassAspectIntegrationTests.java b/spring-context/src/test/java/org/springframework/context/annotation/configuration/ConfigurationClassAspectIntegrationTests.java index d46c3a44f54..28f8ce8e23d 100644 --- a/spring-context/src/test/java/org/springframework/context/annotation/configuration/ConfigurationClassAspectIntegrationTests.java +++ b/spring-context/src/test/java/org/springframework/context/annotation/configuration/ConfigurationClassAspectIntegrationTests.java @@ -136,10 +136,7 @@ public class ConfigurationClassAspectIntegrationTests { @Bean Runnable fromInnerClass() { - return new Runnable() { - @Override - public void run() { - } + return () -> { }; } diff --git a/spring-context/src/test/java/org/springframework/context/annotation/configuration/ConfigurationClassProcessingTests.java b/spring-context/src/test/java/org/springframework/context/annotation/configuration/ConfigurationClassProcessingTests.java index c2ea421fc7b..491617d0bfe 100644 --- a/spring-context/src/test/java/org/springframework/context/annotation/configuration/ConfigurationClassProcessingTests.java +++ b/spring-context/src/test/java/org/springframework/context/annotation/configuration/ConfigurationClassProcessingTests.java @@ -38,7 +38,6 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.beans.factory.config.BeanFactoryPostProcessor; import org.springframework.beans.factory.config.BeanPostProcessor; -import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; import org.springframework.beans.factory.config.DependencyDescriptor; import org.springframework.beans.factory.config.ListFactoryBean; import org.springframework.beans.factory.parsing.BeanDefinitionParsingException; @@ -558,12 +557,9 @@ public class ConfigurationClassProcessingTests { // @Bean public BeanFactoryPostProcessor beanFactoryPostProcessor() { - return new BeanFactoryPostProcessor() { - @Override - public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) { - BeanDefinition bd = beanFactory.getBeanDefinition("beanPostProcessor"); - bd.getPropertyValues().addPropertyValue("nameSuffix", "-processed-" + myProp); - } + return beanFactory -> { + BeanDefinition bd = beanFactory.getBeanDefinition("beanPostProcessor"); + bd.getPropertyValues().addPropertyValue("nameSuffix", "-processed-" + myProp); }; } diff --git a/spring-context/src/test/java/org/springframework/context/event/ApplicationContextEventTests.java b/spring-context/src/test/java/org/springframework/context/event/ApplicationContextEventTests.java index 331336a848a..ff72d9780e7 100644 --- a/spring-context/src/test/java/org/springframework/context/event/ApplicationContextEventTests.java +++ b/spring-context/src/test/java/org/springframework/context/event/ApplicationContextEventTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2020 the original author or authors. + * Copyright 2002-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,7 +20,6 @@ import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; -import java.util.concurrent.Executor; import org.aopalliance.intercept.MethodInvocation; import org.junit.jupiter.api.Test; @@ -141,12 +140,9 @@ public class ApplicationContextEventTests extends AbstractApplicationEventListen ApplicationEvent evt = new ContextClosedEvent(new StaticApplicationContext()); SimpleApplicationEventMulticaster smc = new SimpleApplicationEventMulticaster(); - smc.setTaskExecutor(new Executor() { - @Override - public void execute(Runnable command) { - command.run(); - command.run(); - } + smc.setTaskExecutor(command -> { + command.run(); + command.run(); }); smc.addApplicationListener(listener); @@ -429,12 +425,7 @@ public class ApplicationContextEventTests extends AbstractApplicationEventListen public void anonymousClassAsListener() { final Set seenEvents = new HashSet<>(); StaticApplicationContext context = new StaticApplicationContext(); - context.addApplicationListener(new ApplicationListener() { - @Override - public void onApplicationEvent(MyEvent event) { - seenEvents.add(event); - } - }); + context.addApplicationListener((MyEvent event) -> seenEvents.add(event)); context.refresh(); MyEvent event1 = new MyEvent(context); diff --git a/spring-context/src/test/java/org/springframework/context/event/PayloadApplicationEventTests.java b/spring-context/src/test/java/org/springframework/context/event/PayloadApplicationEventTests.java index 42fb935e7f5..3606100b46a 100644 --- a/spring-context/src/test/java/org/springframework/context/event/PayloadApplicationEventTests.java +++ b/spring-context/src/test/java/org/springframework/context/event/PayloadApplicationEventTests.java @@ -101,7 +101,7 @@ class PayloadApplicationEventTests { void testProgrammaticPayloadListener() { List events = new ArrayList<>(); ApplicationListener> listener = ApplicationListener.forPayload(events::add); - ApplicationListener> mismatch = ApplicationListener.forPayload(payload -> payload.intValue()); + ApplicationListener> mismatch = ApplicationListener.forPayload(Integer::intValue); ConfigurableApplicationContext ac = new GenericApplicationContext(); ac.addApplicationListener(listener); diff --git a/spring-context/src/test/java/org/springframework/context/event/test/AbstractIdentifiable.java b/spring-context/src/test/java/org/springframework/context/event/test/AbstractIdentifiable.java index 7dd8f260ce5..3a19e4a6922 100644 --- a/spring-context/src/test/java/org/springframework/context/event/test/AbstractIdentifiable.java +++ b/spring-context/src/test/java/org/springframework/context/event/test/AbstractIdentifiable.java @@ -36,8 +36,12 @@ public abstract class AbstractIdentifiable implements Identifiable { @Override public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } AbstractIdentifiable that = (AbstractIdentifiable) o; diff --git a/spring-context/src/test/java/org/springframework/context/event/test/GenericEventPojo.java b/spring-context/src/test/java/org/springframework/context/event/test/GenericEventPojo.java index b2d1bc6b6f9..79554e0f646 100644 --- a/spring-context/src/test/java/org/springframework/context/event/test/GenericEventPojo.java +++ b/spring-context/src/test/java/org/springframework/context/event/test/GenericEventPojo.java @@ -38,8 +38,12 @@ public class GenericEventPojo implements ResolvableTypeProvider { @Override public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } GenericEventPojo that = (GenericEventPojo) o; diff --git a/spring-context/src/test/java/org/springframework/context/event/test/IdentifiableApplicationEvent.java b/spring-context/src/test/java/org/springframework/context/event/test/IdentifiableApplicationEvent.java index b2251790557..20b84cf4998 100644 --- a/spring-context/src/test/java/org/springframework/context/event/test/IdentifiableApplicationEvent.java +++ b/spring-context/src/test/java/org/springframework/context/event/test/IdentifiableApplicationEvent.java @@ -50,8 +50,12 @@ public abstract class IdentifiableApplicationEvent extends ApplicationEvent impl @Override public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } IdentifiableApplicationEvent that = (IdentifiableApplicationEvent) o; diff --git a/spring-context/src/test/java/org/springframework/context/support/ConversionServiceFactoryBeanTests.java b/spring-context/src/test/java/org/springframework/context/support/ConversionServiceFactoryBeanTests.java index ec96b605143..d46d9fb61fa 100644 --- a/spring-context/src/test/java/org/springframework/context/support/ConversionServiceFactoryBeanTests.java +++ b/spring-context/src/test/java/org/springframework/context/support/ConversionServiceFactoryBeanTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2019 the original author or authors. + * Copyright 2002-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -99,8 +99,7 @@ public class ConversionServiceFactoryBeanTests { Set converters = new HashSet<>(); converters.add("bogus"); factory.setConverters(converters); - assertThatIllegalArgumentException().isThrownBy( - factory::afterPropertiesSet); + assertThatIllegalArgumentException().isThrownBy(factory::afterPropertiesSet); } @Test diff --git a/spring-context/src/test/java/org/springframework/format/number/NumberFormattingTests.java b/spring-context/src/test/java/org/springframework/format/number/NumberFormattingTests.java index 406d6549f9e..609927bdf05 100644 --- a/spring-context/src/test/java/org/springframework/format/number/NumberFormattingTests.java +++ b/spring-context/src/test/java/org/springframework/format/number/NumberFormattingTests.java @@ -30,7 +30,6 @@ import org.springframework.core.convert.support.DefaultConversionService; import org.springframework.format.annotation.NumberFormat; import org.springframework.format.annotation.NumberFormat.Style; import org.springframework.format.support.FormattingConversionService; -import org.springframework.util.StringValueResolver; import org.springframework.validation.DataBinder; import static org.assertj.core.api.Assertions.assertThat; @@ -49,15 +48,12 @@ public class NumberFormattingTests { @BeforeEach public void setUp() { DefaultConversionService.addDefaultConverters(conversionService); - conversionService.setEmbeddedValueResolver(new StringValueResolver() { - @Override - public String resolveStringValue(String strVal) { - if ("${pattern}".equals(strVal)) { - return "#,##.00"; - } - else { - return strVal; - } + conversionService.setEmbeddedValueResolver(strVal -> { + if ("${pattern}".equals(strVal)) { + return "#,##.00"; + } + else { + return strVal; } }); conversionService.addFormatterForFieldType(Number.class, new NumberStyleFormatter()); diff --git a/spring-context/src/test/java/org/springframework/format/support/FormattingConversionServiceFactoryBeanTests.java b/spring-context/src/test/java/org/springframework/format/support/FormattingConversionServiceFactoryBeanTests.java index a7e4fe01dcc..160c0fc4f02 100644 --- a/spring-context/src/test/java/org/springframework/format/support/FormattingConversionServiceFactoryBeanTests.java +++ b/spring-context/src/test/java/org/springframework/format/support/FormattingConversionServiceFactoryBeanTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2021 the original author or authors. + * Copyright 2002-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -189,24 +189,14 @@ public class FormattingConversionServiceFactoryBeanTests { public Printer getPrinter(SpecialInt annotation, Class fieldType) { assertThat(annotation.value()).isEqualTo("aliased"); assertThat(annotation.alias()).isEqualTo("aliased"); - return new Printer() { - @Override - public String print(Integer object, Locale locale) { - return ":" + object.toString(); - } - }; + return (object, locale) -> ":" + object.toString(); } @Override public Parser getParser(SpecialInt annotation, Class fieldType) { assertThat(annotation.value()).isEqualTo("aliased"); assertThat(annotation.alias()).isEqualTo("aliased"); - return new Parser() { - @Override - public Integer parse(String text, Locale locale) throws ParseException { - return Integer.parseInt(text, 1, text.length(), 10); - } - }; + return (text, locale) -> Integer.parseInt(text, 1, text.length(), 10); } } diff --git a/spring-context/src/test/java/org/springframework/jmx/export/MBeanExporterOperationsTests.java b/spring-context/src/test/java/org/springframework/jmx/export/MBeanExporterOperationsTests.java index b850799ebdb..c6f1a444dac 100644 --- a/spring-context/src/test/java/org/springframework/jmx/export/MBeanExporterOperationsTests.java +++ b/spring-context/src/test/java/org/springframework/jmx/export/MBeanExporterOperationsTests.java @@ -27,7 +27,6 @@ import org.junit.jupiter.api.Test; import org.springframework.jmx.AbstractMBeanServerTests; import org.springframework.jmx.JmxTestBean; -import org.springframework.jmx.export.naming.ObjectNamingStrategy; import org.springframework.jmx.support.ObjectNameManager; import static org.assertj.core.api.Assertions.assertThat; @@ -74,12 +73,7 @@ class MBeanExporterOperationsTests extends AbstractMBeanServerTests { MBeanExporter exporter = new MBeanExporter(); exporter.setServer(getServer()); - exporter.setNamingStrategy(new ObjectNamingStrategy() { - @Override - public ObjectName getObjectName(Object managedBean, String beanKey) { - return objectNameTemplate; - } - }); + exporter.setNamingStrategy((managedBean, beanKey) -> objectNameTemplate); JmxTestBean bean1 = new JmxTestBean(); JmxTestBean bean2 = new JmxTestBean(); @@ -101,12 +95,7 @@ class MBeanExporterOperationsTests extends AbstractMBeanServerTests { MBeanExporter exporter = new MBeanExporter(); exporter.setServer(getServer()); exporter.setEnsureUniqueRuntimeObjectNames(false); - exporter.setNamingStrategy(new ObjectNamingStrategy() { - @Override - public ObjectName getObjectName(Object managedBean, String beanKey) { - return objectNameTemplate; - } - }); + exporter.setNamingStrategy((managedBean, beanKey) -> objectNameTemplate); JmxTestBean bean1 = new JmxTestBean(); JmxTestBean bean2 = new JmxTestBean(); diff --git a/spring-context/src/test/java/org/springframework/jmx/export/MBeanExporterTests.java b/spring-context/src/test/java/org/springframework/jmx/export/MBeanExporterTests.java index 988e068a0b1..20affb97745 100644 --- a/spring-context/src/test/java/org/springframework/jmx/export/MBeanExporterTests.java +++ b/spring-context/src/test/java/org/springframework/jmx/export/MBeanExporterTests.java @@ -90,11 +90,8 @@ public class MBeanExporterTests extends AbstractMBeanServerTests { @Test void testRegisterNotificationListenerForNonExistentMBean() throws Exception { Map listeners = new HashMap<>(); - NotificationListener dummyListener = new NotificationListener() { - @Override - public void handleNotification(Notification notification, Object handback) { - throw new UnsupportedOperationException(); - } + NotificationListener dummyListener = (notification, handback) -> { + throw new UnsupportedOperationException(); }; // the MBean with the supplied object name does not exist... listeners.put("spring:type=Test", dummyListener); diff --git a/spring-context/src/test/java/org/springframework/jmx/export/NotificationListenerTests.java b/spring-context/src/test/java/org/springframework/jmx/export/NotificationListenerTests.java index d38eb831901..c842a656fd3 100644 --- a/spring-context/src/test/java/org/springframework/jmx/export/NotificationListenerTests.java +++ b/spring-context/src/test/java/org/springframework/jmx/export/NotificationListenerTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2020 the original author or authors. + * Copyright 2002-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -23,7 +23,6 @@ import javax.management.Attribute; import javax.management.AttributeChangeNotification; import javax.management.MalformedObjectNameException; import javax.management.Notification; -import javax.management.NotificationFilter; import javax.management.NotificationListener; import javax.management.ObjectName; @@ -117,7 +116,7 @@ public class NotificationListenerTests extends AbstractMBeanServerTests { MBeanExporter exporter = new MBeanExporter(); exporter.setServer(server); exporter.setBeans(beans); - exporter.setNotificationListeners(new NotificationListenerBean[] { listenerBean }); + exporter.setNotificationListeners(listenerBean); start(exporter); // update the attribute @@ -145,7 +144,7 @@ public class NotificationListenerTests extends AbstractMBeanServerTests { MBeanExporter exporter = new MBeanExporter(); exporter.setServer(server); exporter.setBeans(beans); - exporter.setNotificationListeners(new NotificationListenerBean[] { listenerBean }); + exporter.setNotificationListeners(listenerBean); start(exporter); // update the attribute @@ -168,23 +167,20 @@ public class NotificationListenerTests extends AbstractMBeanServerTests { NotificationListenerBean listenerBean = new NotificationListenerBean(); listenerBean.setNotificationListener(listener); - listenerBean.setNotificationFilter(new NotificationFilter() { - @Override - public boolean isNotificationEnabled(Notification notification) { - if (notification instanceof AttributeChangeNotification) { - AttributeChangeNotification changeNotification = (AttributeChangeNotification) notification; - return "Name".equals(changeNotification.getAttributeName()); - } - else { - return false; - } + listenerBean.setNotificationFilter(notification -> { + if (notification instanceof AttributeChangeNotification) { + AttributeChangeNotification changeNotification = (AttributeChangeNotification) notification; + return "Name".equals(changeNotification.getAttributeName()); + } + else { + return false; } }); MBeanExporter exporter = new MBeanExporter(); exporter.setServer(server); exporter.setBeans(beans); - exporter.setNotificationListeners(new NotificationListenerBean[] { listenerBean }); + exporter.setNotificationListeners(listenerBean); start(exporter); // update the attributes diff --git a/spring-context/src/test/java/org/springframework/jmx/export/assembler/AbstractJmxAssemblerTests.java b/spring-context/src/test/java/org/springframework/jmx/export/assembler/AbstractJmxAssemblerTests.java index c754af69ca1..b685aa9caf7 100644 --- a/spring-context/src/test/java/org/springframework/jmx/export/assembler/AbstractJmxAssemblerTests.java +++ b/spring-context/src/test/java/org/springframework/jmx/export/assembler/AbstractJmxAssemblerTests.java @@ -83,9 +83,9 @@ public abstract class AbstractJmxAssemblerTests extends AbstractJmxTests { MBeanAttributeInfo[] inf = info.getAttributes(); assertThat(inf).as("Invalid number of Attributes returned").hasSize(getExpectedAttributeCount()); - for (int x = 0; x < inf.length; x++) { - assertThat(inf[x]).as("MBeanAttributeInfo should not be null").isNotNull(); - assertThat(inf[x].getDescription()).as("Description for MBeanAttributeInfo should not be null").isNotNull(); + for (MBeanAttributeInfo element : inf) { + assertThat(element).as("MBeanAttributeInfo should not be null").isNotNull(); + assertThat(element.getDescription()).as("Description for MBeanAttributeInfo should not be null").isNotNull(); } } @@ -95,9 +95,9 @@ public abstract class AbstractJmxAssemblerTests extends AbstractJmxTests { MBeanOperationInfo[] inf = info.getOperations(); assertThat(inf).as("Invalid number of Operations returned").hasSize(getExpectedOperationCount()); - for (int x = 0; x < inf.length; x++) { - assertThat(inf[x]).as("MBeanOperationInfo should not be null").isNotNull(); - assertThat(inf[x].getDescription()).as("Description for MBeanOperationInfo should not be null").isNotNull(); + for (MBeanOperationInfo element : inf) { + assertThat(element).as("MBeanOperationInfo should not be null").isNotNull(); + assertThat(element.getDescription()).as("Description for MBeanOperationInfo should not be null").isNotNull(); } } diff --git a/spring-context/src/test/java/org/springframework/scheduling/annotation/AsyncExecutionTests.java b/spring-context/src/test/java/org/springframework/scheduling/annotation/AsyncExecutionTests.java index 9fb8494cd43..70c97851a4e 100644 --- a/spring-context/src/test/java/org/springframework/scheduling/annotation/AsyncExecutionTests.java +++ b/spring-context/src/test/java/org/springframework/scheduling/annotation/AsyncExecutionTests.java @@ -27,7 +27,6 @@ import java.util.concurrent.Future; import java.util.concurrent.TimeUnit; import org.aopalliance.intercept.MethodInterceptor; -import org.aopalliance.intercept.MethodInvocation; import org.awaitility.Awaitility; import org.junit.jupiter.api.Test; @@ -613,16 +612,13 @@ public class AsyncExecutionTests { public DynamicAsyncInterfaceBean() { ProxyFactory pf = new ProxyFactory(new HashMap<>()); - DefaultIntroductionAdvisor advisor = new DefaultIntroductionAdvisor(new MethodInterceptor() { - @Override - public Object invoke(MethodInvocation invocation) throws Throwable { - boolean condition = !Thread.currentThread().getName().equals(originalThreadName); - assertThat(condition).isTrue(); - if (Future.class.equals(invocation.getMethod().getReturnType())) { - return new AsyncResult<>(invocation.getArguments()[0].toString()); - } - return null; + DefaultIntroductionAdvisor advisor = new DefaultIntroductionAdvisor((MethodInterceptor) invocation -> { + boolean condition = !Thread.currentThread().getName().equals(originalThreadName); + assertThat(condition).isTrue(); + if (Future.class.equals(invocation.getMethod().getReturnType())) { + return new AsyncResult<>(invocation.getArguments()[0].toString()); } + return null; }); advisor.addInterface(AsyncInterface.class); pf.addAdvisor(advisor); @@ -686,16 +682,13 @@ public class AsyncExecutionTests { public DynamicAsyncMethodsInterfaceBean() { ProxyFactory pf = new ProxyFactory(new HashMap<>()); - DefaultIntroductionAdvisor advisor = new DefaultIntroductionAdvisor(new MethodInterceptor() { - @Override - public Object invoke(MethodInvocation invocation) throws Throwable { - boolean condition = !Thread.currentThread().getName().equals(originalThreadName); - assertThat(condition).isTrue(); - if (Future.class.equals(invocation.getMethod().getReturnType())) { - return new AsyncResult<>(invocation.getArguments()[0].toString()); - } - return null; + DefaultIntroductionAdvisor advisor = new DefaultIntroductionAdvisor((MethodInterceptor) invocation -> { + boolean condition = !Thread.currentThread().getName().equals(originalThreadName); + assertThat(condition).isTrue(); + if (Future.class.equals(invocation.getMethod().getReturnType())) { + return new AsyncResult<>(invocation.getArguments()[0].toString()); } + return null; }); advisor.addInterface(AsyncMethodsInterface.class); pf.addAdvisor(advisor); diff --git a/spring-context/src/test/java/org/springframework/scheduling/config/ExecutorBeanDefinitionParserTests.java b/spring-context/src/test/java/org/springframework/scheduling/config/ExecutorBeanDefinitionParserTests.java index 8dbae46f777..ef8f32846ef 100644 --- a/spring-context/src/test/java/org/springframework/scheduling/config/ExecutorBeanDefinitionParserTests.java +++ b/spring-context/src/test/java/org/springframework/scheduling/config/ExecutorBeanDefinitionParserTests.java @@ -16,7 +16,6 @@ package org.springframework.scheduling.config; -import java.util.concurrent.Callable; import java.util.concurrent.Executor; import java.util.concurrent.FutureTask; @@ -59,12 +58,7 @@ public class ExecutorBeanDefinitionParserTests { assertThat(getKeepAliveSeconds(executor)).isEqualTo(60); assertThat(getAllowCoreThreadTimeOut(executor)).isFalse(); - FutureTask task = new FutureTask<>(new Callable() { - @Override - public String call() throws Exception { - return "foo"; - } - }); + FutureTask task = new FutureTask<>(() -> "foo"); executor.execute(task); assertThat(task.get()).isEqualTo("foo"); } diff --git a/spring-context/src/test/java/org/springframework/scripting/groovy/MyBytecodeProcessor.java b/spring-context/src/test/java/org/springframework/scripting/groovy/MyBytecodeProcessor.java index fc73d71c77f..48aac053ca2 100644 --- a/spring-context/src/test/java/org/springframework/scripting/groovy/MyBytecodeProcessor.java +++ b/spring-context/src/test/java/org/springframework/scripting/groovy/MyBytecodeProcessor.java @@ -26,7 +26,7 @@ import org.codehaus.groovy.control.BytecodeProcessor; */ public class MyBytecodeProcessor implements BytecodeProcessor { - public final Set processed = new HashSet(); + public final Set processed = new HashSet<>(); @Override public byte[] processBytecode(String name, byte[] original) { diff --git a/spring-context/src/test/java/org/springframework/ui/ModelMapTests.java b/spring-context/src/test/java/org/springframework/ui/ModelMapTests.java index 376d8a13107..93669ec3b21 100644 --- a/spring-context/src/test/java/org/springframework/ui/ModelMapTests.java +++ b/spring-context/src/test/java/org/springframework/ui/ModelMapTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2019 the original author or authors. + * Copyright 2002-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,8 +17,6 @@ package org.springframework.ui; import java.io.Serializable; -import java.lang.reflect.InvocationHandler; -import java.lang.reflect.Method; import java.lang.reflect.Proxy; import java.util.ArrayList; import java.util.Collection; @@ -281,12 +279,7 @@ public class ModelMapTests { Object proxy = Proxy.newProxyInstance( getClass().getClassLoader(), new Class[] {Map.class}, - new InvocationHandler() { - @Override - public Object invoke(Object proxy, Method method, Object[] args) { - return "proxy"; - } - }); + (proxy1, method, args) -> "proxy"); map.addAttribute(proxy); assertThat(map.get("map")).isSameAs(proxy); } diff --git a/spring-context/src/test/java/test/mixin/LockMixin.java b/spring-context/src/test/java/test/mixin/LockMixin.java index 96a78ad1131..12915b678b3 100644 --- a/spring-context/src/test/java/test/mixin/LockMixin.java +++ b/spring-context/src/test/java/test/mixin/LockMixin.java @@ -61,8 +61,9 @@ public class LockMixin extends DelegatingIntroductionInterceptor implements Lock */ @Override public Object invoke(MethodInvocation invocation) throws Throwable { - if (locked() && invocation.getMethod().getName().indexOf("set") == 0) + if (locked() && invocation.getMethod().getName().indexOf("set") == 0) { throw new LockedException(); + } return super.invoke(invocation); } diff --git a/spring-context/src/testFixtures/java/org/springframework/context/testfixture/SimpleMapScope.java b/spring-context/src/testFixtures/java/org/springframework/context/testfixture/SimpleMapScope.java index 3b29b783bfd..6a41c4fec17 100644 --- a/spring-context/src/testFixtures/java/org/springframework/context/testfixture/SimpleMapScope.java +++ b/spring-context/src/testFixtures/java/org/springframework/context/testfixture/SimpleMapScope.java @@ -19,7 +19,6 @@ package org.springframework.context.testfixture; import java.io.Serializable; import java.util.ArrayList; import java.util.HashMap; -import java.util.Iterator; import java.util.List; import java.util.Map; @@ -75,8 +74,7 @@ public class SimpleMapScope implements Scope, Serializable { } public void close() { - for (Iterator it = this.callbacks.iterator(); it.hasNext();) { - Runnable runnable = it.next(); + for (Runnable runnable : this.callbacks) { runnable.run(); } } diff --git a/spring-core/src/test/java/org/springframework/core/annotation/MergedAnnotationsTests.java b/spring-core/src/test/java/org/springframework/core/annotation/MergedAnnotationsTests.java index f0502a9687d..c650250c47b 100644 --- a/spring-core/src/test/java/org/springframework/core/annotation/MergedAnnotationsTests.java +++ b/spring-core/src/test/java/org/springframework/core/annotation/MergedAnnotationsTests.java @@ -1699,7 +1699,7 @@ class MergedAnnotationsTests { assertThat(componentScan).isNotNull(); assertThat(componentScan.value().pattern()).isEqualTo("*Foo"); Map map = MergedAnnotation.from(componentScan).asMap( - annotation -> new LinkedHashMap(), + annotation -> new LinkedHashMap<>(), Adapt.ANNOTATION_TO_MAP); Map filterMap = (Map) map.get("value"); assertThat(filterMap.get("pattern")).isEqualTo("*Foo"); @@ -1719,7 +1719,7 @@ class MergedAnnotationsTests { ComponentScan.class); assertThat(componentScan).isNotNull(); Map map = MergedAnnotation.from(componentScan).asMap( - annotation -> new LinkedHashMap(), + annotation -> new LinkedHashMap<>(), Adapt.ANNOTATION_TO_MAP); Map[] filters = (Map[]) map.get("excludeFilters"); List patterns = Arrays.stream(filters).map( diff --git a/spring-core/src/test/java/org/springframework/core/convert/converter/ConvertingComparatorTests.java b/spring-core/src/test/java/org/springframework/core/convert/converter/ConvertingComparatorTests.java index 93eb3659a99..b7903d06975 100644 --- a/spring-core/src/test/java/org/springframework/core/convert/converter/ConvertingComparatorTests.java +++ b/spring-core/src/test/java/org/springframework/core/convert/converter/ConvertingComparatorTests.java @@ -140,7 +140,7 @@ class ConvertingComparatorTests { assertThat(o2).isInstanceOf(Integer.class); this.called = true; return super.compare(o1, o2); - }; + } public void assertCalled() { assertThat(this.called).isTrue(); diff --git a/spring-core/src/test/java/org/springframework/util/AutoPopulatingListTests.java b/spring-core/src/test/java/org/springframework/util/AutoPopulatingListTests.java index b3d553ff5ce..1be14c37647 100644 --- a/spring-core/src/test/java/org/springframework/util/AutoPopulatingListTests.java +++ b/spring-core/src/test/java/org/springframework/util/AutoPopulatingListTests.java @@ -48,7 +48,7 @@ class AutoPopulatingListTests { @Test void withElementFactoryAndUserSuppliedBackingList() throws Exception { - doTestWithElementFactory(new AutoPopulatingList(new ArrayList<>(), new MockElementFactory())); + doTestWithElementFactory(new AutoPopulatingList<>(new ArrayList<>(), new MockElementFactory())); } private void doTestWithClass(AutoPopulatingList list) { diff --git a/spring-core/src/test/java/org/springframework/util/ConcurrentReferenceHashMapTests.java b/spring-core/src/test/java/org/springframework/util/ConcurrentReferenceHashMapTests.java index e50168ee4e9..ca9c41147c4 100644 --- a/spring-core/src/test/java/org/springframework/util/ConcurrentReferenceHashMapTests.java +++ b/spring-core/src/test/java/org/springframework/util/ConcurrentReferenceHashMapTests.java @@ -51,7 +51,7 @@ import static org.assertj.core.api.Assertions.assertThatIllegalStateException; */ class ConcurrentReferenceHashMapTests { - private static final Comparator NULL_SAFE_STRING_SORT = new NullSafeComparator( + private static final Comparator NULL_SAFE_STRING_SORT = new NullSafeComparator<>( new ComparableComparator(), true); private TestWeakConcurrentCache map = new TestWeakConcurrentCache<>(); diff --git a/spring-core/src/test/java/org/springframework/util/ReflectionUtilsTests.java b/spring-core/src/test/java/org/springframework/util/ReflectionUtilsTests.java index 4109426e8fe..bbb05b743a8 100644 --- a/spring-core/src/test/java/org/springframework/util/ReflectionUtilsTests.java +++ b/spring-core/src/test/java/org/springframework/util/ReflectionUtilsTests.java @@ -391,8 +391,8 @@ class ReflectionUtilsTests { int add(int... args) { int sum = 0; - for (int i = 0; i < args.length; i++) { - sum += args[i]; + for (int arg : args) { + sum += arg; } return sum; } diff --git a/spring-core/src/test/java/org/springframework/util/StringUtilsTests.java b/spring-core/src/test/java/org/springframework/util/StringUtilsTests.java index e2449d7c4f4..c484f3f2f12 100644 --- a/spring-core/src/test/java/org/springframework/util/StringUtilsTests.java +++ b/spring-core/src/test/java/org/springframework/util/StringUtilsTests.java @@ -608,14 +608,8 @@ class StringUtilsTests { } private void doTestCommaDelimitedListToStringArrayLegalMatch(String[] components) { - StringBuilder sb = new StringBuilder(); - for (int i = 0; i < components.length; i++) { - if (i != 0) { - sb.append(','); - } - sb.append(components[i]); - } - String[] sa = StringUtils.commaDelimitedListToStringArray(sb.toString()); + String sb = String.join(String.valueOf(','), components); + String[] sa = StringUtils.commaDelimitedListToStringArray(sb); assertThat(sa != null).as("String array isn't null with legal match").isTrue(); assertThat(sa.length).as("String array length is correct with legal match").isEqualTo(components.length); assertThat(Arrays.equals(sa, components)).as("Output equals input").isTrue(); diff --git a/spring-jdbc/src/test/java/org/springframework/jdbc/core/AbstractRowMapperTests.java b/spring-jdbc/src/test/java/org/springframework/jdbc/core/AbstractRowMapperTests.java index 7dd608b5ca7..7c084a807a1 100644 --- a/spring-jdbc/src/test/java/org/springframework/jdbc/core/AbstractRowMapperTests.java +++ b/spring-jdbc/src/test/java/org/springframework/jdbc/core/AbstractRowMapperTests.java @@ -107,7 +107,7 @@ public abstract class AbstractRowMapperTests { } - protected enum MockType {ONE, TWO, THREE}; + protected enum MockType {ONE, TWO, THREE} protected static class Mock { diff --git a/spring-jdbc/src/test/java/org/springframework/jdbc/core/JdbcTemplateQueryTests.java b/spring-jdbc/src/test/java/org/springframework/jdbc/core/JdbcTemplateQueryTests.java index 337f5f34a50..1470e9d6c97 100644 --- a/spring-jdbc/src/test/java/org/springframework/jdbc/core/JdbcTemplateQueryTests.java +++ b/spring-jdbc/src/test/java/org/springframework/jdbc/core/JdbcTemplateQueryTests.java @@ -22,7 +22,6 @@ import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.ResultSetMetaData; -import java.sql.SQLException; import java.sql.Statement; import java.util.List; import java.util.Map; @@ -160,12 +159,7 @@ public class JdbcTemplateQueryTests { String sql = "SELECT AGE FROM CUSTMR WHERE ID = 3"; given(this.resultSet.next()).willReturn(true, false); given(this.resultSet.getInt(1)).willReturn(22); - Object o = this.template.queryForObject(sql, new RowMapper() { - @Override - public Integer mapRow(ResultSet rs, int rowNum) throws SQLException { - return rs.getInt(1); - } - }); + Object o = this.template.queryForObject(sql, (RowMapper) (rs, rowNum) -> rs.getInt(1)); assertThat(o instanceof Integer).as("Correct result type").isTrue(); verify(this.resultSet).close(); verify(this.statement).close(); diff --git a/spring-jdbc/src/test/java/org/springframework/jdbc/core/JdbcTemplateTests.java b/spring-jdbc/src/test/java/org/springframework/jdbc/core/JdbcTemplateTests.java index 339bec58385..456d59dd5bf 100644 --- a/spring-jdbc/src/test/java/org/springframework/jdbc/core/JdbcTemplateTests.java +++ b/spring-jdbc/src/test/java/org/springframework/jdbc/core/JdbcTemplateTests.java @@ -152,12 +152,12 @@ public class JdbcTemplateTests { @Test public void testStringsWithStaticSql() throws Exception { - doTestStrings(null, null, null, null, (template, sql, rch) -> template.query(sql, rch)); + doTestStrings(null, null, null, null, JdbcTemplate::query); } @Test public void testStringsWithStaticSqlAndFetchSizeAndMaxRows() throws Exception { - doTestStrings(10, 20, 30, null, (template, sql, rch) -> template.query(sql, rch)); + doTestStrings(10, 20, 30, null, JdbcTemplate::query); } @Test @@ -268,28 +268,22 @@ public class JdbcTemplateTests { @Test public void testConnectionCallback() throws Exception { - String result = this.template.execute(new ConnectionCallback() { - @Override - public String doInConnection(Connection con) { - assertThat(con instanceof ConnectionProxy).isTrue(); - assertThat(((ConnectionProxy) con).getTargetConnection()).isSameAs(JdbcTemplateTests.this.connection); - return "test"; - } + String result = this.template.execute((ConnectionCallback) con -> { + assertThat(con instanceof ConnectionProxy).isTrue(); + assertThat(((ConnectionProxy) con).getTargetConnection()).isSameAs(JdbcTemplateTests.this.connection); + return "test"; }); assertThat(result).isEqualTo("test"); } @Test public void testConnectionCallbackWithStatementSettings() throws Exception { - String result = this.template.execute(new ConnectionCallback() { - @Override - public String doInConnection(Connection con) throws SQLException { - PreparedStatement ps = con.prepareStatement("some SQL"); - ps.setFetchSize(10); - ps.setMaxRows(20); - ps.close(); - return "test"; - } + String result = this.template.execute((ConnectionCallback) con -> { + PreparedStatement ps = con.prepareStatement("some SQL"); + ps.setFetchSize(10); + ps.setMaxRows(20); + ps.close(); + return "test"; }); assertThat(result).isEqualTo("test"); diff --git a/spring-jdbc/src/test/java/org/springframework/jdbc/core/namedparam/NamedParameterQueryTests.java b/spring-jdbc/src/test/java/org/springframework/jdbc/core/namedparam/NamedParameterQueryTests.java index 25ccf1eaa87..1a2c6146990 100644 --- a/spring-jdbc/src/test/java/org/springframework/jdbc/core/namedparam/NamedParameterQueryTests.java +++ b/spring-jdbc/src/test/java/org/springframework/jdbc/core/namedparam/NamedParameterQueryTests.java @@ -20,7 +20,6 @@ import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.ResultSetMetaData; -import java.sql.SQLException; import java.sql.Types; import java.util.ArrayList; import java.util.Arrays; @@ -176,12 +175,7 @@ public class NamedParameterQueryTests { MapSqlParameterSource params = new MapSqlParameterSource(); params.addValue("id", 3); Object o = template.queryForObject("SELECT AGE FROM CUSTMR WHERE ID = :id", - params, new RowMapper() { - @Override - public Object mapRow(ResultSet rs, int rowNum) throws SQLException { - return rs.getInt(1); - } - }); + params, (RowMapper) (rs, rowNum) -> rs.getInt(1)); boolean condition = o instanceof Integer; assertThat(condition).as("Correct result type").isTrue(); diff --git a/spring-jdbc/src/test/java/org/springframework/jdbc/object/StoredProcedureTests.java b/spring-jdbc/src/test/java/org/springframework/jdbc/object/StoredProcedureTests.java index ee7b13e1a73..02441425f81 100644 --- a/spring-jdbc/src/test/java/org/springframework/jdbc/object/StoredProcedureTests.java +++ b/spring-jdbc/src/test/java/org/springframework/jdbc/object/StoredProcedureTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2019 the original author or authors. + * Copyright 2002-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -46,9 +46,7 @@ import org.springframework.jdbc.core.SqlParameter; import org.springframework.jdbc.core.SqlReturnResultSet; import org.springframework.jdbc.core.support.AbstractSqlTypeValue; import org.springframework.jdbc.datasource.ConnectionHolder; -import org.springframework.jdbc.support.SQLExceptionTranslator; import org.springframework.jdbc.support.SQLStateSQLExceptionTranslator; -import org.springframework.lang.Nullable; import org.springframework.transaction.support.TransactionSynchronizationManager; import static org.assertj.core.api.Assertions.assertThat; @@ -148,8 +146,7 @@ public class StoredProcedureTests { given(callableStatement.execute()).willReturn(false); given(callableStatement.getUpdateCount()).willReturn(-1); given(callableStatement.getObject(3)).willReturn(4); - given(connection.prepareCall("{call " + AddInvoice.SQL + "(?, ?, ?)}") - ).willReturn(callableStatement); + given(connection.prepareCall("{call " + AddInvoice.SQL + "(?, ?, ?)}")).willReturn(callableStatement); TransactionSynchronizationManager.bindResource(dataSource, new ConnectionHolder(connection)); try { testAddInvoice(1106, 3); @@ -174,8 +171,7 @@ public class StoredProcedureTests { given(callableStatement.execute()).willReturn(false); given(callableStatement.getUpdateCount()).willReturn(-1); given(callableStatement.getObject(2)).willReturn(5); - given(connection.prepareCall("{call " + StoredProcedureConfiguredViaJdbcTemplate.SQL + "(?, ?)}") - ).willReturn(callableStatement); + given(connection.prepareCall("{call " + StoredProcedureConfiguredViaJdbcTemplate.SQL + "(?, ?)}")).willReturn(callableStatement); class TestJdbcTemplate extends JdbcTemplate { @@ -210,8 +206,7 @@ public class StoredProcedureTests { given(callableStatement.execute()).willReturn(false); given(callableStatement.getUpdateCount()).willReturn(-1); given(callableStatement.getObject(2)).willReturn(4); - given(connection.prepareCall("{call " + StoredProcedureConfiguredViaJdbcTemplate.SQL + "(?, ?)}") - ).willReturn(callableStatement); + given(connection.prepareCall("{call " + StoredProcedureConfiguredViaJdbcTemplate.SQL + "(?, ?)}")).willReturn(callableStatement); JdbcTemplate t = new JdbcTemplate(); t.setDataSource(dataSource); StoredProcedureConfiguredViaJdbcTemplate sp = new StoredProcedureConfiguredViaJdbcTemplate(t); @@ -234,28 +229,24 @@ public class StoredProcedureTests { public void testUnnamedParameter() throws Exception { this.verifyClosedAfter = false; // Shouldn't succeed in creating stored procedure with unnamed parameter - assertThatExceptionOfType(InvalidDataAccessApiUsageException.class).isThrownBy(() -> - new UnnamedParameterStoredProcedure(dataSource)); + assertThatExceptionOfType(InvalidDataAccessApiUsageException.class) + .isThrownBy(() -> new UnnamedParameterStoredProcedure(dataSource)); } @Test public void testMissingParameter() throws Exception { this.verifyClosedAfter = false; MissingParameterStoredProcedure mp = new MissingParameterStoredProcedure(dataSource); - assertThatExceptionOfType(InvalidDataAccessApiUsageException.class).isThrownBy( - mp::execute); + assertThatExceptionOfType(InvalidDataAccessApiUsageException.class).isThrownBy(mp::execute); } @Test public void testStoredProcedureExceptionTranslator() throws Exception { - SQLException sqlException = new SQLException( - "Syntax error or access violation exception", "42000"); + SQLException sqlException = new SQLException("Syntax error or access violation exception", "42000"); given(callableStatement.execute()).willThrow(sqlException); - given(connection.prepareCall("{call " + StoredProcedureExceptionTranslator.SQL + "()}") - ).willReturn(callableStatement); + given(connection.prepareCall("{call " + StoredProcedureExceptionTranslator.SQL + "()}")).willReturn(callableStatement); StoredProcedureExceptionTranslator sproc = new StoredProcedureExceptionTranslator(dataSource); - assertThatExceptionOfType(CustomDataException.class).isThrownBy( - sproc::execute); + assertThatExceptionOfType(CustomDataException.class).isThrownBy(sproc::execute); } @Test @@ -266,8 +257,7 @@ public class StoredProcedureTests { given(callableStatement.getUpdateCount()).willReturn(-1); given(callableStatement.getResultSet()).willReturn(resultSet); given(callableStatement.getUpdateCount()).willReturn(-1); - given(connection.prepareCall("{call " + StoredProcedureWithResultSet.SQL + "()}") - ).willReturn(callableStatement); + given(connection.prepareCall("{call " + StoredProcedureWithResultSet.SQL + "()}")).willReturn(callableStatement); StoredProcedureWithResultSet sproc = new StoredProcedureWithResultSet(dataSource); sproc.execute(); assertThat(sproc.getCount()).isEqualTo(2); @@ -285,14 +275,11 @@ public class StoredProcedureTests { given(callableStatement.getResultSet()).willReturn(resultSet); given(callableStatement.getMoreResults()).willReturn(false); given(callableStatement.getUpdateCount()).willReturn(-1); - given(connection.prepareCall("{call " + StoredProcedureWithResultSetMapped.SQL + "()}") - ).willReturn(callableStatement); + given(connection.prepareCall("{call " + StoredProcedureWithResultSetMapped.SQL + "()}")).willReturn(callableStatement); StoredProcedureWithResultSetMapped sproc = new StoredProcedureWithResultSetMapped(dataSource); Map res = sproc.execute(); List rs = (List) res.get("rs"); - assertThat(rs.size()).isEqualTo(2); - assertThat(rs.get(0)).isEqualTo("Foo"); - assertThat(rs.get(1)).isEqualTo("Bar"); + assertThat(rs).containsExactly("Foo", "Bar"); verify(resultSet).close(); } @@ -319,8 +306,7 @@ public class StoredProcedureTests { given(callableStatement.getResultSet()).willReturn(resultSet1, resultSet2); given(callableStatement.getMoreResults()).willReturn(true, false, false); given(callableStatement.getUpdateCount()).willReturn(-1, -1, 0, -1); - given(connection.prepareCall("{call " + StoredProcedureWithResultSetMapped.SQL + "()}") - ).willReturn(callableStatement); + given(connection.prepareCall("{call " + StoredProcedureWithResultSetMapped.SQL + "()}")).willReturn(callableStatement); StoredProcedureWithResultSetMapped sproc = new StoredProcedureWithResultSetMapped(dataSource); Map res = sproc.execute(); @@ -328,15 +314,12 @@ public class StoredProcedureTests { assertThat(res.size()).as("incorrect number of returns").isEqualTo(3); List rs1 = (List) res.get("rs"); - assertThat(rs1.size()).isEqualTo(2); - assertThat(rs1.get(0)).isEqualTo("Foo"); - assertThat(rs1.get(1)).isEqualTo("Bar"); + assertThat(rs1).containsExactly("Foo", "Bar"); List rs2 = (List) res.get("#result-set-2"); assertThat(rs2.size()).isEqualTo(1); Object o2 = rs2.get(0); - boolean condition = o2 instanceof Map; - assertThat(condition).as("wron type returned for result set 2").isTrue(); + assertThat(o2).as("wron type returned for result set 2").isInstanceOf(Map.class); Map m2 = (Map) o2; assertThat(m2.get("spam")).isEqualTo("Spam"); assertThat(m2.get("eggs")).isEqualTo("Eggs"); @@ -351,12 +334,10 @@ public class StoredProcedureTests { public void testStoredProcedureSkippingResultsProcessing() throws Exception { given(callableStatement.execute()).willReturn(true); given(callableStatement.getUpdateCount()).willReturn(-1); - given(connection.prepareCall("{call " + StoredProcedureWithResultSetMapped.SQL + "()}") - ).willReturn(callableStatement); + given(connection.prepareCall("{call " + StoredProcedureWithResultSetMapped.SQL + "()}")).willReturn(callableStatement); JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource); jdbcTemplate.setSkipResultsProcessing(true); - StoredProcedureWithResultSetMapped sproc = new StoredProcedureWithResultSetMapped( - jdbcTemplate); + StoredProcedureWithResultSetMapped sproc = new StoredProcedureWithResultSetMapped(jdbcTemplate); Map res = sproc.execute(); assertThat(res.size()).as("incorrect number of returns").isEqualTo(0); } @@ -372,13 +353,11 @@ public class StoredProcedureTests { given(callableStatement.getResultSet()).willReturn(resultSet); given(callableStatement.getMoreResults()).willReturn(true, false); given(callableStatement.getUpdateCount()).willReturn(-1, -1); - given(connection.prepareCall("{call " + StoredProcedureWithResultSetMapped.SQL + "()}") - ).willReturn(callableStatement); + given(connection.prepareCall("{call " + StoredProcedureWithResultSetMapped.SQL + "()}")).willReturn(callableStatement); JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource); jdbcTemplate.setSkipUndeclaredResults(true); - StoredProcedureWithResultSetMapped sproc = new StoredProcedureWithResultSetMapped( - jdbcTemplate); + StoredProcedureWithResultSetMapped sproc = new StoredProcedureWithResultSetMapped(jdbcTemplate); Map res = sproc.execute(); assertThat(res.size()).as("incorrect number of returns").isEqualTo(1); @@ -394,8 +373,7 @@ public class StoredProcedureTests { given(callableStatement.execute()).willReturn(false); given(callableStatement.getUpdateCount()).willReturn(-1); given(callableStatement.getObject(2)).willReturn("OK"); - given(connection.prepareCall("{call " + ParameterMapperStoredProcedure.SQL + "(?, ?)}") - ).willReturn(callableStatement); + given(connection.prepareCall("{call " + ParameterMapperStoredProcedure.SQL + "(?, ?)}")).willReturn(callableStatement); ParameterMapperStoredProcedure pmsp = new ParameterMapperStoredProcedure(dataSource); Map out = pmsp.executeTest(); @@ -411,8 +389,7 @@ public class StoredProcedureTests { given(callableStatement.execute()).willReturn(false); given(callableStatement.getUpdateCount()).willReturn(-1); given(callableStatement.getObject(2)).willReturn("OK"); - given(connection.prepareCall("{call " + SqlTypeValueStoredProcedure.SQL + "(?, ?)}") - ).willReturn(callableStatement); + given(connection.prepareCall("{call " + SqlTypeValueStoredProcedure.SQL + "(?, ?)}")).willReturn(callableStatement); SqlTypeValueStoredProcedure stvsp = new SqlTypeValueStoredProcedure(dataSource); Map out = stvsp.executeTest(testVal); @@ -426,8 +403,7 @@ public class StoredProcedureTests { given(callableStatement.execute()).willReturn(false); given(callableStatement.getUpdateCount()).willReturn(-1); given(callableStatement.getObject(1)).willReturn(new BigDecimal("12345.6789")); - given(connection.prepareCall("{call " + NumericWithScaleStoredProcedure.SQL + "(?)}") - ).willReturn(callableStatement); + given(connection.prepareCall("{call " + NumericWithScaleStoredProcedure.SQL + "(?)}")).willReturn(callableStatement); NumericWithScaleStoredProcedure nwssp = new NumericWithScaleStoredProcedure(dataSource); Map out = nwssp.executeTest(); assertThat(out.get("out")).isEqualTo(new BigDecimal("12345.6789")); @@ -686,12 +662,7 @@ public class StoredProcedureTests { public StoredProcedureExceptionTranslator(DataSource ds) { setDataSource(ds); setSql(SQL); - getJdbcTemplate().setExceptionTranslator(new SQLExceptionTranslator() { - @Override - public DataAccessException translate(String task, @Nullable String sql, SQLException ex) { - return new CustomDataException(sql, ex); - } - }); + getJdbcTemplate().setExceptionTranslator((task, sql, ex) -> new CustomDataException(sql, ex)); compile(); } diff --git a/spring-jdbc/src/test/java/org/springframework/jdbc/support/SQLErrorCodeSQLExceptionTranslatorTests.java b/spring-jdbc/src/test/java/org/springframework/jdbc/support/SQLErrorCodeSQLExceptionTranslatorTests.java index 5cdfb7eda55..486ffbf9a8c 100644 --- a/spring-jdbc/src/test/java/org/springframework/jdbc/support/SQLErrorCodeSQLExceptionTranslatorTests.java +++ b/spring-jdbc/src/test/java/org/springframework/jdbc/support/SQLErrorCodeSQLExceptionTranslatorTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2020 the original author or authors. + * Copyright 2002-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -87,7 +87,7 @@ public class SQLErrorCodeSQLExceptionTranslatorTests { SQLException dupKeyEx = new SQLException("", "", 10); DataAccessException dksex = sext.translate("task", "SQL", dupKeyEx); - assertThat(DataIntegrityViolationException.class.isInstance(dksex)).as("Not instance of DataIntegrityViolationException").isTrue(); + assertThat(dksex).isInstanceOf(DataIntegrityViolationException.class); // Test fallback. We assume that no database will ever return this error code, // but 07xxx will be bad grammar picked up by the fallback SQLState translator diff --git a/spring-jms/src/test/java/org/springframework/jms/core/JmsTemplateTests.java b/spring-jms/src/test/java/org/springframework/jms/core/JmsTemplateTests.java index 9f82be855f9..3ba74c93582 100644 --- a/spring-jms/src/test/java/org/springframework/jms/core/JmsTemplateTests.java +++ b/spring-jms/src/test/java/org/springframework/jms/core/JmsTemplateTests.java @@ -200,12 +200,9 @@ class JmsTemplateTests { JmsTemplate template = createTemplate(); template.setConnectionFactory(this.connectionFactory); - template.execute(new SessionCallback() { - @Override - public Void doInJms(Session session) throws JMSException { - session.getTransacted(); - return null; - } + template.execute((SessionCallback) session -> { + session.getTransacted(); + return null; }); verify(this.session).close(); @@ -220,19 +217,13 @@ class JmsTemplateTests { TransactionSynchronizationManager.initSynchronization(); try { - template.execute(new SessionCallback() { - @Override - public Void doInJms(Session session) throws JMSException { - session.getTransacted(); - return null; - } + template.execute((SessionCallback) session -> { + session.getTransacted(); + return null; }); - template.execute(new SessionCallback() { - @Override - public Void doInJms(Session session) throws JMSException { - session.getTransacted(); - return null; - } + template.execute((SessionCallback) session -> { + session.getTransacted(); + return null; }); assertThat(ConnectionFactoryUtils.getTransactionalSession(scf, null, false)).isSameAs(this.session); @@ -374,29 +365,14 @@ class JmsTemplateTests { } if (useDefaultDestination) { - template.send(new MessageCreator() { - @Override - public Message createMessage(Session session) throws JMSException { - return session.createTextMessage("just testing"); - } - }); + template.send(session -> session.createTextMessage("just testing")); } else { if (explicitDestination) { - template.send(this.queue, new MessageCreator() { - @Override - public Message createMessage(Session session) throws JMSException { - return session.createTextMessage("just testing"); - } - }); + template.send(this.queue, (MessageCreator) session -> session.createTextMessage("just testing")); } else { - template.send(destinationName, new MessageCreator() { - @Override - public Message createMessage(Session session) throws JMSException { - return session.createTextMessage("just testing"); - } - }); + template.send(destinationName, (MessageCreator) session -> session.createTextMessage("just testing")); } } diff --git a/spring-jms/src/test/java/org/springframework/jms/listener/SimpleMessageListenerContainerTests.java b/spring-jms/src/test/java/org/springframework/jms/listener/SimpleMessageListenerContainerTests.java index 7b001de2ab2..9e731466107 100644 --- a/spring-jms/src/test/java/org/springframework/jms/listener/SimpleMessageListenerContainerTests.java +++ b/spring-jms/src/test/java/org/springframework/jms/listener/SimpleMessageListenerContainerTests.java @@ -30,7 +30,6 @@ import jakarta.jms.Session; import org.junit.jupiter.api.Test; import org.springframework.context.support.GenericApplicationContext; -import org.springframework.core.task.TaskExecutor; import org.springframework.jms.StubQueue; import org.springframework.lang.Nullable; import org.springframework.util.ErrorHandler; @@ -182,16 +181,13 @@ public class SimpleMessageListenerContainerTests { this.container.setConnectionFactory(connectionFactory); this.container.setDestinationName(DESTINATION_NAME); - this.container.setMessageListener(new SessionAwareMessageListener() { - @Override - public void onMessage(Message message, @Nullable Session sess) { - try { - // Check correct Session passed into SessionAwareMessageListener. - assertThat(session).isSameAs(sess); - } - catch (Throwable ex) { - failure.add("MessageListener execution failed: " + ex); - } + this.container.setMessageListener((SessionAwareMessageListener) (Message message, @Nullable Session sess) -> { + try { + // Check correct Session passed into SessionAwareMessageListener. + assertThat(session).isSameAs(sess); + } + catch (Throwable ex) { + failure.add("MessageListener execution failed: " + ex); } }); @@ -231,14 +227,11 @@ public class SimpleMessageListenerContainerTests { this.container.setConnectionFactory(connectionFactory); this.container.setDestinationName(DESTINATION_NAME); this.container.setMessageListener(listener); - this.container.setTaskExecutor(new TaskExecutor() { - @Override - public void execute(Runnable task) { - listener.executorInvoked = true; - assertThat(listener.listenerInvoked).isFalse(); - task.run(); - assertThat(listener.listenerInvoked).isTrue(); - } + this.container.setTaskExecutor(task -> { + listener.executorInvoked = true; + assertThat(listener.listenerInvoked).isFalse(); + task.run(); + assertThat(listener.listenerInvoked).isTrue(); }); this.container.afterPropertiesSet(); this.container.start(); @@ -278,11 +271,8 @@ public class SimpleMessageListenerContainerTests { this.container.setConnectionFactory(connectionFactory); this.container.setDestinationName(DESTINATION_NAME); - this.container.setMessageListener(new SessionAwareMessageListener() { - @Override - public void onMessage(Message message, @Nullable Session session) throws JMSException { - throw theException; - } + this.container.setMessageListener((SessionAwareMessageListener) (Message message, @Nullable Session session1) -> { + throw theException; }); ExceptionListener exceptionListener = mock(ExceptionListener.class); @@ -328,11 +318,8 @@ public class SimpleMessageListenerContainerTests { this.container.setConnectionFactory(connectionFactory); this.container.setDestinationName(DESTINATION_NAME); - this.container.setMessageListener(new SessionAwareMessageListener() { - @Override - public void onMessage(Message message, @Nullable Session session) throws JMSException { - throw theException; - } + this.container.setMessageListener((SessionAwareMessageListener) (Message message, @Nullable Session session1) -> { + throw theException; }); ErrorHandler errorHandler = mock(ErrorHandler.class); @@ -374,11 +361,8 @@ public class SimpleMessageListenerContainerTests { this.container.setConnectionFactory(connectionFactory); this.container.setDestinationName(DESTINATION_NAME); - this.container.setMessageListener(new MessageListener() { - @Override - public void onMessage(Message message) { - throw new UnsupportedOperationException(); - } + this.container.setMessageListener((MessageListener) message -> { + throw new UnsupportedOperationException(); }); this.container.afterPropertiesSet(); this.container.start(); @@ -418,11 +402,8 @@ public class SimpleMessageListenerContainerTests { this.container.setConnectionFactory(connectionFactory); this.container.setDestinationName(DESTINATION_NAME); - this.container.setMessageListener(new MessageListener() { - @Override - public void onMessage(Message message) { - throw new UnsupportedOperationException(); - } + this.container.setMessageListener((MessageListener) message -> { + throw new UnsupportedOperationException(); }); this.container.afterPropertiesSet(); this.container.start(); diff --git a/spring-jms/src/test/java/org/springframework/jms/listener/adapter/MessagingMessageListenerAdapterTests.java b/spring-jms/src/test/java/org/springframework/jms/listener/adapter/MessagingMessageListenerAdapterTests.java index 03f44a70f30..0fb8cb022e5 100644 --- a/spring-jms/src/test/java/org/springframework/jms/listener/adapter/MessagingMessageListenerAdapterTests.java +++ b/spring-jms/src/test/java/org/springframework/jms/listener/adapter/MessagingMessageListenerAdapterTests.java @@ -431,8 +431,8 @@ public class MessagingMessageListenerAdapterTests { } } - interface Summary {}; - interface Full extends Summary {}; + interface Summary {} + interface Full extends Summary {} @SuppressWarnings("unused") private static class SampleResponse { diff --git a/spring-jms/src/test/java/org/springframework/jms/support/SimpleMessageConverterTests.java b/spring-jms/src/test/java/org/springframework/jms/support/SimpleMessageConverterTests.java index bcbb41a64a3..d6d115da695 100644 --- a/spring-jms/src/test/java/org/springframework/jms/support/SimpleMessageConverterTests.java +++ b/spring-jms/src/test/java/org/springframework/jms/support/SimpleMessageConverterTests.java @@ -29,8 +29,6 @@ import jakarta.jms.ObjectMessage; import jakarta.jms.Session; import jakarta.jms.TextMessage; import org.junit.jupiter.api.Test; -import org.mockito.invocation.InvocationOnMock; -import org.mockito.stubbing.Answer; import org.springframework.jms.support.converter.MessageConversionException; import org.springframework.jms.support.converter.SimpleMessageConverter; @@ -76,12 +74,7 @@ public class SimpleMessageConverterTests { given(session.createBytesMessage()).willReturn(message); given(message.getBodyLength()).willReturn((long) content.length); - given(message.readBytes(any(byte[].class))).willAnswer(new Answer() { - @Override - public Integer answer(InvocationOnMock invocation) throws Throwable { - return byteArrayInputStream.read((byte[]) invocation.getArguments()[0]); - } - }); + given(message.readBytes(any(byte[].class))).willAnswer(invocation -> byteArrayInputStream.read((byte[]) invocation.getArguments()[0])); SimpleMessageConverter converter = new SimpleMessageConverter(); Message msg = converter.toMessage(content, session); diff --git a/spring-jms/src/test/java/org/springframework/jms/support/converter/MappingJackson2MessageConverterTests.java b/spring-jms/src/test/java/org/springframework/jms/support/converter/MappingJackson2MessageConverterTests.java index 42eb86a6871..287cd620c64 100644 --- a/spring-jms/src/test/java/org/springframework/jms/support/converter/MappingJackson2MessageConverterTests.java +++ b/spring-jms/src/test/java/org/springframework/jms/support/converter/MappingJackson2MessageConverterTests.java @@ -299,9 +299,9 @@ class MappingJackson2MessageConverterTests { } - private interface Summary {}; + private interface Summary {} - private interface Full extends Summary {}; + private interface Full extends Summary {} @SuppressWarnings("unused") diff --git a/spring-messaging/src/test/java/org/springframework/messaging/converter/MappingJackson2MessageConverterTests.java b/spring-messaging/src/test/java/org/springframework/messaging/converter/MappingJackson2MessageConverterTests.java index 1e69ff4137f..5fffc1657ff 100644 --- a/spring-messaging/src/test/java/org/springframework/messaging/converter/MappingJackson2MessageConverterTests.java +++ b/spring-messaging/src/test/java/org/springframework/messaging/converter/MappingJackson2MessageConverterTests.java @@ -319,9 +319,9 @@ public class MappingJackson2MessageConverterTests { } - public interface MyJacksonView1 {}; + public interface MyJacksonView1 {} - public interface MyJacksonView2 {}; + public interface MyJacksonView2 {} public static class JacksonViewBean { diff --git a/spring-messaging/src/test/java/org/springframework/messaging/core/GenericMessagingTemplateTests.java b/spring-messaging/src/test/java/org/springframework/messaging/core/GenericMessagingTemplateTests.java index e2b3c4602b9..0ef6a331686 100644 --- a/spring-messaging/src/test/java/org/springframework/messaging/core/GenericMessagingTemplateTests.java +++ b/spring-messaging/src/test/java/org/springframework/messaging/core/GenericMessagingTemplateTests.java @@ -29,7 +29,6 @@ import org.springframework.messaging.MessageChannel; import org.springframework.messaging.MessageDeliveryException; import org.springframework.messaging.MessageHandler; import org.springframework.messaging.MessageHeaders; -import org.springframework.messaging.MessagingException; import org.springframework.messaging.StubMessageChannel; import org.springframework.messaging.SubscribableChannel; import org.springframework.messaging.support.ExecutorSubscribableChannel; @@ -112,12 +111,9 @@ public class GenericMessagingTemplateTests { @Test public void sendAndReceive() { SubscribableChannel channel = new ExecutorSubscribableChannel(this.executor); - channel.subscribe(new MessageHandler() { - @Override - public void handleMessage(Message message) throws MessagingException { - MessageChannel replyChannel = (MessageChannel) message.getHeaders().getReplyChannel(); - replyChannel.send(new GenericMessage<>("response")); - } + channel.subscribe(message -> { + MessageChannel replyChannel = (MessageChannel) message.getHeaders().getReplyChannel(); + replyChannel.send(new GenericMessage<>("response")); }); String actual = this.template.convertSendAndReceive(channel, "request", String.class); @@ -126,7 +122,7 @@ public class GenericMessagingTemplateTests { @Test public void sendAndReceiveTimeout() throws InterruptedException { - final AtomicReference failure = new AtomicReference(); + final AtomicReference failure = new AtomicReference<>(); final CountDownLatch latch = new CountDownLatch(1); this.template.setReceiveTimeout(1); @@ -152,7 +148,7 @@ public class GenericMessagingTemplateTests { @Test public void sendAndReceiveVariableTimeout() throws InterruptedException { - final AtomicReference failure = new AtomicReference(); + final AtomicReference failure = new AtomicReference<>(); final CountDownLatch latch = new CountDownLatch(1); this.template.setSendTimeout(20_000); @@ -182,7 +178,7 @@ public class GenericMessagingTemplateTests { @Test public void sendAndReceiveVariableTimeoutCustomHeaders() throws InterruptedException { - final AtomicReference failure = new AtomicReference(); + final AtomicReference failure = new AtomicReference<>(); final CountDownLatch latch = new CountDownLatch(1); this.template.setSendTimeout(20_000); diff --git a/spring-messaging/src/test/java/org/springframework/messaging/handler/annotation/reactive/MessageMappingMessageHandlerTests.java b/spring-messaging/src/test/java/org/springframework/messaging/handler/annotation/reactive/MessageMappingMessageHandlerTests.java index fe4c46e742b..8c270485413 100644 --- a/spring-messaging/src/test/java/org/springframework/messaging/handler/annotation/reactive/MessageMappingMessageHandlerTests.java +++ b/spring-messaging/src/test/java/org/springframework/messaging/handler/annotation/reactive/MessageMappingMessageHandlerTests.java @@ -151,7 +151,7 @@ public class MessageMappingMessageHandlerTests { } private Message message(String destination, String... content) { - Flux payload = Flux.fromIterable(Arrays.asList(content)).map(parts -> toDataBuffer(parts)); + Flux payload = Flux.fromIterable(Arrays.asList(content)).map(this::toDataBuffer); MessageHeaderAccessor headers = new MessageHeaderAccessor(); headers.setLeaveMutable(true); headers.setHeader(DestinationPatternsMessageCondition.LOOKUP_DESTINATION_HEADER, diff --git a/spring-messaging/src/test/java/org/springframework/messaging/handler/annotation/support/DefaultMessageHandlerMethodFactoryTests.java b/spring-messaging/src/test/java/org/springframework/messaging/handler/annotation/support/DefaultMessageHandlerMethodFactoryTests.java index f9290bf0faa..3641cde73b7 100644 --- a/spring-messaging/src/test/java/org/springframework/messaging/handler/annotation/support/DefaultMessageHandlerMethodFactoryTests.java +++ b/spring-messaging/src/test/java/org/springframework/messaging/handler/annotation/support/DefaultMessageHandlerMethodFactoryTests.java @@ -28,7 +28,6 @@ import org.junit.jupiter.api.Test; import org.springframework.beans.factory.support.StaticListableBeanFactory; import org.springframework.core.MethodParameter; -import org.springframework.core.convert.converter.Converter; import org.springframework.core.convert.support.GenericConversionService; import org.springframework.messaging.Message; import org.springframework.messaging.converter.ByteArrayMessageConverter; @@ -59,12 +58,7 @@ public class DefaultMessageHandlerMethodFactoryTests { public void customConversion() throws Exception { DefaultMessageHandlerMethodFactory instance = createInstance(); GenericConversionService conversionService = new GenericConversionService(); - conversionService.addConverter(SampleBean.class, String.class, new Converter() { - @Override - public String convert(SampleBean source) { - return "foo bar"; - } - }); + conversionService.addConverter(SampleBean.class, String.class, source -> "foo bar"); instance.setConversionService(conversionService); instance.afterPropertiesSet(); diff --git a/spring-messaging/src/test/java/org/springframework/messaging/simp/SimpAttributesContextHolderTests.java b/spring-messaging/src/test/java/org/springframework/messaging/simp/SimpAttributesContextHolderTests.java index ed76ea88e1e..c42e8573924 100644 --- a/spring-messaging/src/test/java/org/springframework/messaging/simp/SimpAttributesContextHolderTests.java +++ b/spring-messaging/src/test/java/org/springframework/messaging/simp/SimpAttributesContextHolderTests.java @@ -131,8 +131,7 @@ public class SimpAttributesContextHolderTests { @Test public void currentAttributesNone() { - assertThatIllegalStateException().isThrownBy(() -> - SimpAttributesContextHolder.currentAttributes()) + assertThatIllegalStateException().isThrownBy(SimpAttributesContextHolder::currentAttributes) .withMessageStartingWith("No thread-bound SimpAttributes found"); } diff --git a/spring-messaging/src/test/java/org/springframework/messaging/simp/annotation/support/SubscriptionMethodReturnValueHandlerTests.java b/spring-messaging/src/test/java/org/springframework/messaging/simp/annotation/support/SubscriptionMethodReturnValueHandlerTests.java index 92eefda1fbb..f30579fe0c2 100644 --- a/spring-messaging/src/test/java/org/springframework/messaging/simp/annotation/support/SubscriptionMethodReturnValueHandlerTests.java +++ b/spring-messaging/src/test/java/org/springframework/messaging/simp/annotation/support/SubscriptionMethodReturnValueHandlerTests.java @@ -224,8 +224,8 @@ public class SubscriptionMethodReturnValueHandlerTests { } - private interface MyJacksonView1 {}; - private interface MyJacksonView2 {}; + private interface MyJacksonView1 {} + private interface MyJacksonView2 {} private static class JacksonViewBean { diff --git a/spring-messaging/src/test/java/org/springframework/messaging/simp/stomp/StompBrokerRelayMessageHandlerTests.java b/spring-messaging/src/test/java/org/springframework/messaging/simp/stomp/StompBrokerRelayMessageHandlerTests.java index 70e35c35d96..3fc34442d7f 100644 --- a/spring-messaging/src/test/java/org/springframework/messaging/simp/stomp/StompBrokerRelayMessageHandlerTests.java +++ b/spring-messaging/src/test/java/org/springframework/messaging/simp/stomp/StompBrokerRelayMessageHandlerTests.java @@ -19,7 +19,6 @@ package org.springframework.messaging.simp.stomp; import java.util.ArrayList; import java.util.Collections; import java.util.List; -import java.util.concurrent.Callable; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -286,12 +285,7 @@ class StompBrokerRelayMessageHandlerTests { private static ListenableFutureTask getVoidFuture() { - ListenableFutureTask futureTask = new ListenableFutureTask<>(new Callable() { - @Override - public Void call() { - return null; - } - }); + ListenableFutureTask futureTask = new ListenableFutureTask<>(() -> null); futureTask.run(); return futureTask; } diff --git a/spring-orm/src/test/java/org/springframework/orm/jpa/JpaTransactionManagerTests.java b/spring-orm/src/test/java/org/springframework/orm/jpa/JpaTransactionManagerTests.java index 881bccca79b..0e5eb045a99 100644 --- a/spring-orm/src/test/java/org/springframework/orm/jpa/JpaTransactionManagerTests.java +++ b/spring-orm/src/test/java/org/springframework/orm/jpa/JpaTransactionManagerTests.java @@ -31,7 +31,6 @@ import org.springframework.transaction.InvalidIsolationLevelException; import org.springframework.transaction.TransactionDefinition; import org.springframework.transaction.TransactionStatus; import org.springframework.transaction.TransactionSystemException; -import org.springframework.transaction.support.TransactionCallback; import org.springframework.transaction.support.TransactionCallbackWithoutResult; import org.springframework.transaction.support.TransactionSynchronization; import org.springframework.transaction.support.TransactionSynchronizationManager; @@ -99,13 +98,10 @@ public class JpaTransactionManagerTests { boolean condition2 = !TransactionSynchronizationManager.isSynchronizationActive(); assertThat(condition2).isTrue(); - Object result = tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); - EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); - return l; - } + Object result = tt.execute(status -> { + assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); + EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); + return l; }); assertThat(result).isSameAs(l); @@ -134,13 +130,10 @@ public class JpaTransactionManagerTests { assertThat(condition2).isTrue(); try { - Object result = tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); - EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); - return l; - } + Object result = tt.execute(status -> { + assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); + EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); + return l; }); assertThat(result).isSameAs(l); } @@ -173,13 +166,10 @@ public class JpaTransactionManagerTests { assertThat(condition2).isTrue(); assertThatExceptionOfType(RuntimeException.class).isThrownBy(() -> - tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); - EntityManagerFactoryUtils.getTransactionalEntityManager(factory); - throw new RuntimeException("some exception"); - } + tt.execute(status -> { + assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); + EntityManagerFactoryUtils.getTransactionalEntityManager(factory); + throw new RuntimeException("some exception"); })).withMessage("some exception"); boolean condition1 = !TransactionSynchronizationManager.hasResource(factory); @@ -204,13 +194,10 @@ public class JpaTransactionManagerTests { assertThat(condition2).isTrue(); assertThatExceptionOfType(RuntimeException.class).isThrownBy(() -> - tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); - EntityManagerFactoryUtils.getTransactionalEntityManager(factory); - throw new RuntimeException("some exception"); - } + tt.execute(status -> { + assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); + EntityManagerFactoryUtils.getTransactionalEntityManager(factory); + throw new RuntimeException("some exception"); })); boolean condition1 = !TransactionSynchronizationManager.hasResource(factory); @@ -234,16 +221,13 @@ public class JpaTransactionManagerTests { boolean condition2 = !TransactionSynchronizationManager.isSynchronizationActive(); assertThat(condition2).isTrue(); - tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); + tt.execute(status -> { + assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); - EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); - status.setRollbackOnly(); + EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); + status.setRollbackOnly(); - return l; - } + return l; }); boolean condition1 = !TransactionSynchronizationManager.hasResource(factory); @@ -268,19 +252,13 @@ public class JpaTransactionManagerTests { boolean condition2 = !TransactionSynchronizationManager.isSynchronizationActive(); assertThat(condition2).isTrue(); - tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); + tt.execute(status -> { + assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); - return tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); - return l; - } - }); - } + return tt.execute(status1 -> { + EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); + return l; + }); }); boolean condition1 = !TransactionSynchronizationManager.hasResource(factory); @@ -307,18 +285,12 @@ public class JpaTransactionManagerTests { assertThat(condition2).isTrue(); assertThatExceptionOfType(RuntimeException.class).isThrownBy(() -> - tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); - return tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - EntityManagerFactoryUtils.getTransactionalEntityManager(factory); - throw new RuntimeException("some exception"); - } - }); - } + tt.execute(status -> { + assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); + return tt.execute(status1 -> { + EntityManagerFactoryUtils.getTransactionalEntityManager(factory); + throw new RuntimeException("some exception"); + }); })); boolean condition1 = !TransactionSynchronizationManager.hasResource(factory); @@ -347,20 +319,14 @@ public class JpaTransactionManagerTests { assertThat(condition2).isTrue(); assertThatExceptionOfType(TransactionSystemException.class).isThrownBy(() -> - tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); + tt.execute(status -> { + assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); - return tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); - status.setRollbackOnly(); - return null; - } - }); - } + return tt.execute(status1 -> { + EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); + status1.setRollbackOnly(); + return null; + }); })) .withCauseInstanceOf(RollbackException.class); @@ -390,18 +356,12 @@ public class JpaTransactionManagerTests { boolean condition2 = !TransactionSynchronizationManager.isSynchronizationActive(); assertThat(condition2).isTrue(); - Object result = tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); - return tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); - return l; - } - }); - } + Object result = tt.execute(status -> { + assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); + return tt.execute(status1 -> { + EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); + return l; + }); }); assertThat(result).isSameAs(l); @@ -432,20 +392,14 @@ public class JpaTransactionManagerTests { TransactionSynchronizationManager.bindResource(factory, new EntityManagerHolder(manager)); try { - Object result = tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - EntityManagerFactoryUtils.getTransactionalEntityManager(factory); + Object result = tt.execute(status -> { + EntityManagerFactoryUtils.getTransactionalEntityManager(factory); - assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); - return tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); - return l; - } - }); - } + assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); + return tt.execute(status1 -> { + EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); + return l; + }); }); assertThat(result).isSameAs(l); } @@ -478,20 +432,14 @@ public class JpaTransactionManagerTests { boolean condition2 = !TransactionSynchronizationManager.isSynchronizationActive(); assertThat(condition2).isTrue(); - Object result = tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - assertThat(TransactionSynchronizationManager.hasResource(factory)).isFalse(); - TransactionTemplate tt2 = new TransactionTemplate(tm); - tt2.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW); - return tt2.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); - return l; - } - }); - } + Object result = tt.execute(status -> { + assertThat(TransactionSynchronizationManager.hasResource(factory)).isFalse(); + TransactionTemplate tt2 = new TransactionTemplate(tm); + tt2.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW); + return tt2.execute(status1 -> { + EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); + return l; + }); }); assertThat(result).isSameAs(l); @@ -521,22 +469,16 @@ public class JpaTransactionManagerTests { boolean condition2 = !TransactionSynchronizationManager.isSynchronizationActive(); assertThat(condition2).isTrue(); - Object result = tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - EntityManagerFactoryUtils.getTransactionalEntityManager(factory); + Object result = tt.execute(status -> { + EntityManagerFactoryUtils.getTransactionalEntityManager(factory); - assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); - TransactionTemplate tt2 = new TransactionTemplate(tm); - tt2.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW); - return tt2.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); - return l; - } - }); - } + assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); + TransactionTemplate tt2 = new TransactionTemplate(tm); + tt2.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW); + return tt2.execute(status1 -> { + EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); + return l; + }); }); assertThat(result).isSameAs(l); @@ -567,24 +509,18 @@ public class JpaTransactionManagerTests { boolean condition2 = !TransactionSynchronizationManager.isSynchronizationActive(); assertThat(condition2).isTrue(); - tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); - TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronization() { - @Override - public void afterCompletion(int status) { - tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); - return null; - } - }); - } - }); - return null; - } + tt.execute(status -> { + EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); + TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronization() { + @Override + public void afterCompletion(int status) { + tt.execute(status1 -> { + EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); + return null; + }); + } + }); + return null; }); boolean condition1 = !TransactionSynchronizationManager.hasResource(factory); @@ -615,17 +551,14 @@ public class JpaTransactionManagerTests { boolean condition2 = !TransactionSynchronizationManager.isSynchronizationActive(); assertThat(condition2).isTrue(); - Object result = tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - boolean condition1 = !TransactionSynchronizationManager.hasResource(factory); - assertThat(condition1).isTrue(); - assertThat(TransactionSynchronizationManager.isSynchronizationActive()).isTrue(); - boolean condition = !status.isNewTransaction(); - assertThat(condition).isTrue(); - EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); - return l; - } + Object result = tt.execute(status -> { + boolean condition1 = !TransactionSynchronizationManager.hasResource(factory); + assertThat(condition1).isTrue(); + assertThat(TransactionSynchronizationManager.isSynchronizationActive()).isTrue(); + boolean condition = !status.isNewTransaction(); + assertThat(condition).isTrue(); + EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); + return l; }); assertThat(result).isSameAs(l); @@ -649,18 +582,15 @@ public class JpaTransactionManagerTests { boolean condition2 = !TransactionSynchronizationManager.isSynchronizationActive(); assertThat(condition2).isTrue(); - tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - boolean condition1 = !TransactionSynchronizationManager.hasResource(factory); - assertThat(condition1).isTrue(); - assertThat(TransactionSynchronizationManager.isSynchronizationActive()).isTrue(); - boolean condition = !status.isNewTransaction(); - assertThat(condition).isTrue(); - EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); - status.setRollbackOnly(); - return null; - } + tt.execute(status -> { + boolean condition1 = !TransactionSynchronizationManager.hasResource(factory); + assertThat(condition1).isTrue(); + assertThat(TransactionSynchronizationManager.isSynchronizationActive()).isTrue(); + boolean condition = !status.isNewTransaction(); + assertThat(condition).isTrue(); + EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); + status.setRollbackOnly(); + return null; }); boolean condition1 = !TransactionSynchronizationManager.hasResource(factory); @@ -686,14 +616,11 @@ public class JpaTransactionManagerTests { TransactionSynchronizationManager.bindResource(factory, new EntityManagerHolder(manager)); try { - Object result = tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); - assertThat(TransactionSynchronizationManager.isSynchronizationActive()).isTrue(); - EntityManagerFactoryUtils.getTransactionalEntityManager(factory); - return l; - } + Object result = tt.execute(status -> { + assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); + assertThat(TransactionSynchronizationManager.isSynchronizationActive()).isTrue(); + EntityManagerFactoryUtils.getTransactionalEntityManager(factory); + return l; }); assertThat(result).isSameAs(l); @@ -721,15 +648,12 @@ public class JpaTransactionManagerTests { TransactionSynchronizationManager.bindResource(factory, new EntityManagerHolder(manager)); try { - tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); - assertThat(TransactionSynchronizationManager.isSynchronizationActive()).isTrue(); - EntityManagerFactoryUtils.getTransactionalEntityManager(factory); - status.setRollbackOnly(); - return null; - } + tt.execute(status -> { + assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); + assertThat(TransactionSynchronizationManager.isSynchronizationActive()).isTrue(); + EntityManagerFactoryUtils.getTransactionalEntityManager(factory); + status.setRollbackOnly(); + return null; }); assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); @@ -759,16 +683,13 @@ public class JpaTransactionManagerTests { TransactionSynchronizationManager.bindResource(factory, new EntityManagerHolder(manager)); try { - Object result = tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); - assertThat(TransactionSynchronizationManager.isSynchronizationActive()).isTrue(); - boolean condition = !status.isNewTransaction(); - assertThat(condition).isTrue(); - EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); - return l; - } + Object result = tt.execute(status -> { + assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); + assertThat(TransactionSynchronizationManager.isSynchronizationActive()).isTrue(); + boolean condition = !status.isNewTransaction(); + assertThat(condition).isTrue(); + EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); + return l; }); assertThat(result).isSameAs(l); @@ -794,17 +715,14 @@ public class JpaTransactionManagerTests { TransactionSynchronizationManager.bindResource(factory, new EntityManagerHolder(manager)); try { - tt.execute(new TransactionCallback() { - @Override - public Object doInTransaction(TransactionStatus status) { - assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); - assertThat(TransactionSynchronizationManager.isSynchronizationActive()).isTrue(); - boolean condition = !status.isNewTransaction(); - assertThat(condition).isTrue(); - EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); - status.setRollbackOnly(); - return null; - } + tt.execute(status -> { + assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); + assertThat(TransactionSynchronizationManager.isSynchronizationActive()).isTrue(); + boolean condition = !status.isNewTransaction(); + assertThat(condition).isTrue(); + EntityManagerFactoryUtils.getTransactionalEntityManager(factory).flush(); + status.setRollbackOnly(); + return null; }); assertThat(TransactionSynchronizationManager.hasResource(factory)).isTrue(); diff --git a/spring-web/src/test/java/org/springframework/http/client/InterceptingClientHttpRequestFactoryTests.java b/spring-web/src/test/java/org/springframework/http/client/InterceptingClientHttpRequestFactoryTests.java index 7dbcc58f7e1..db5e0a9bf61 100644 --- a/spring-web/src/test/java/org/springframework/http/client/InterceptingClientHttpRequestFactoryTests.java +++ b/spring-web/src/test/java/org/springframework/http/client/InterceptingClientHttpRequestFactoryTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2019 the original author or authors. + * Copyright 2002-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -72,13 +72,7 @@ public class InterceptingClientHttpRequestFactoryTests { @Test public void noExecution() throws Exception { List interceptors = new ArrayList<>(); - interceptors.add(new ClientHttpRequestInterceptor() { - @Override - public ClientHttpResponse intercept(HttpRequest request, byte[] body, ClientHttpRequestExecution execution) - throws IOException { - return responseMock; - } - }); + interceptors.add((request, body, execution) -> responseMock); interceptors.add(new NoOpInterceptor()); requestFactory = new InterceptingClientHttpRequestFactory(requestFactoryMock, interceptors); @@ -97,15 +91,11 @@ public class InterceptingClientHttpRequestFactoryTests { final String headerValue = "Bar"; final String otherValue = "Baz"; - ClientHttpRequestInterceptor interceptor = new ClientHttpRequestInterceptor() { - @Override - public ClientHttpResponse intercept(HttpRequest request, byte[] body, ClientHttpRequestExecution execution) - throws IOException { + ClientHttpRequestInterceptor interceptor = (request, body, execution) -> { HttpRequestWrapper wrapper = new HttpRequestWrapper(request); wrapper.getHeaders().add(headerName, otherValue); return execution.execute(wrapper, body); - } - }; + }; requestMock = new RequestMock() { @Override @@ -119,8 +109,7 @@ public class InterceptingClientHttpRequestFactoryTests { }; requestMock.getHeaders().add(headerName, headerValue); - requestFactory = - new InterceptingClientHttpRequestFactory(requestFactoryMock, Collections.singletonList(interceptor)); + requestFactory = new InterceptingClientHttpRequestFactory(requestFactoryMock, Collections.singletonList(interceptor)); ClientHttpRequest request = requestFactory.createRequest(new URI("https://example.com"), HttpMethod.GET); request.execute(); @@ -130,19 +119,13 @@ public class InterceptingClientHttpRequestFactoryTests { public void changeURI() throws Exception { final URI changedUri = new URI("https://example.com/2"); - ClientHttpRequestInterceptor interceptor = new ClientHttpRequestInterceptor() { + ClientHttpRequestInterceptor interceptor = (request, body, execution) -> execution.execute(new HttpRequestWrapper(request) { @Override - public ClientHttpResponse intercept(HttpRequest request, byte[] body, ClientHttpRequestExecution execution) - throws IOException { - return execution.execute(new HttpRequestWrapper(request) { - @Override - public URI getURI() { - return changedUri; - } - - }, body); + public URI getURI() { + return changedUri; } - }; + + }, body); requestFactoryMock = new RequestFactoryMock() { @Override @@ -152,8 +135,7 @@ public class InterceptingClientHttpRequestFactoryTests { } }; - requestFactory = - new InterceptingClientHttpRequestFactory(requestFactoryMock, Collections.singletonList(interceptor)); + requestFactory = new InterceptingClientHttpRequestFactory(requestFactoryMock, Collections.singletonList(interceptor)); ClientHttpRequest request = requestFactory.createRequest(new URI("https://example.com"), HttpMethod.GET); request.execute(); @@ -163,19 +145,13 @@ public class InterceptingClientHttpRequestFactoryTests { public void changeMethod() throws Exception { final HttpMethod changedMethod = HttpMethod.POST; - ClientHttpRequestInterceptor interceptor = new ClientHttpRequestInterceptor() { + ClientHttpRequestInterceptor interceptor = (request, body, execution) -> execution.execute(new HttpRequestWrapper(request) { @Override - public ClientHttpResponse intercept(HttpRequest request, byte[] body, ClientHttpRequestExecution execution) - throws IOException { - return execution.execute(new HttpRequestWrapper(request) { - @Override - public HttpMethod getMethod() { - return changedMethod; - } - - }, body); + public HttpMethod getMethod() { + return changedMethod; } - }; + + }, body); requestFactoryMock = new RequestFactoryMock() { @Override @@ -185,8 +161,7 @@ public class InterceptingClientHttpRequestFactoryTests { } }; - requestFactory = - new InterceptingClientHttpRequestFactory(requestFactoryMock, Collections.singletonList(interceptor)); + requestFactory = new InterceptingClientHttpRequestFactory(requestFactoryMock, Collections.singletonList(interceptor)); ClientHttpRequest request = requestFactory.createRequest(new URI("https://example.com"), HttpMethod.GET); request.execute(); @@ -196,16 +171,9 @@ public class InterceptingClientHttpRequestFactoryTests { public void changeBody() throws Exception { final byte[] changedBody = "Foo".getBytes(); - ClientHttpRequestInterceptor interceptor = new ClientHttpRequestInterceptor() { - @Override - public ClientHttpResponse intercept(HttpRequest request, byte[] body, ClientHttpRequestExecution execution) - throws IOException { - return execution.execute(request, changedBody); - } - }; + ClientHttpRequestInterceptor interceptor = (request, body, execution) -> execution.execute(request, changedBody); - requestFactory = - new InterceptingClientHttpRequestFactory(requestFactoryMock, Collections.singletonList(interceptor)); + requestFactory = new InterceptingClientHttpRequestFactory(requestFactoryMock, Collections.singletonList(interceptor)); ClientHttpRequest request = requestFactory.createRequest(new URI("https://example.com"), HttpMethod.GET); request.execute(); diff --git a/spring-web/src/test/java/org/springframework/http/converter/xml/MappingJackson2XmlHttpMessageConverterTests.java b/spring-web/src/test/java/org/springframework/http/converter/xml/MappingJackson2XmlHttpMessageConverterTests.java index 5681fe383af..7ce1722b97e 100644 --- a/spring-web/src/test/java/org/springframework/http/converter/xml/MappingJackson2XmlHttpMessageConverterTests.java +++ b/spring-web/src/test/java/org/springframework/http/converter/xml/MappingJackson2XmlHttpMessageConverterTests.java @@ -271,9 +271,9 @@ public class MappingJackson2XmlHttpMessageConverterTests { } - private interface MyJacksonView1 {}; + private interface MyJacksonView1 {} - private interface MyJacksonView2 {}; + private interface MyJacksonView2 {} @SuppressWarnings("unused") diff --git a/spring-web/src/test/java/org/springframework/web/bind/ServletRequestDataBinderTests.java b/spring-web/src/test/java/org/springframework/web/bind/ServletRequestDataBinderTests.java index f6704d39e28..9bf58625ccb 100644 --- a/spring-web/src/test/java/org/springframework/web/bind/ServletRequestDataBinderTests.java +++ b/spring-web/src/test/java/org/springframework/web/bind/ServletRequestDataBinderTests.java @@ -249,13 +249,13 @@ public class ServletRequestDataBinderTests { m.put("forname", "Tony"); m.put("surname", "Blair"); m.put("age", "50"); - for (int i = 0; i < ps.length; i++) { - Object val = m.get(ps[i].getName()); + for (PropertyValue element : ps) { + Object val = m.get(element.getName()); assertThat(val != null).as("Can't have unexpected value").isTrue(); boolean condition = val instanceof String; assertThat(condition).as("Val i string").isTrue(); - assertThat(val.equals(ps[i].getValue())).as("val matches expected").isTrue(); - m.remove(ps[i].getName()); + assertThat(val.equals(element.getValue())).as("val matches expected").isTrue(); + m.remove(element.getName()); } assertThat(m.size() == 0).as("Map size is 0").isTrue(); } diff --git a/spring-web/src/test/java/org/springframework/web/context/request/async/DeferredResultTests.java b/spring-web/src/test/java/org/springframework/web/context/request/async/DeferredResultTests.java index 7a6f91b25f7..8e7fff0f9cc 100644 --- a/spring-web/src/test/java/org/springframework/web/context/request/async/DeferredResultTests.java +++ b/spring-web/src/test/java/org/springframework/web/context/request/async/DeferredResultTests.java @@ -16,8 +16,6 @@ package org.springframework.web.context.request.async; -import java.util.function.Consumer; - import org.junit.jupiter.api.Test; import org.springframework.web.context.request.async.DeferredResult.DeferredResultHandler; @@ -127,12 +125,7 @@ public class DeferredResultTests { DeferredResult result = new DeferredResult<>(null, "error result"); result.setResultHandler(handler); Exception e = new Exception(); - result.onError(new Consumer() { - @Override - public void accept(Throwable t) { - sb.append("error event"); - } - }); + result.onError(t -> sb.append("error event")); result.getInterceptor().handleError(null, null, e); diff --git a/spring-web/src/test/java/org/springframework/web/context/request/async/WebAsyncManagerErrorTests.java b/spring-web/src/test/java/org/springframework/web/context/request/async/WebAsyncManagerErrorTests.java index c9ff621c4d6..8abf3879236 100644 --- a/spring-web/src/test/java/org/springframework/web/context/request/async/WebAsyncManagerErrorTests.java +++ b/spring-web/src/test/java/org/springframework/web/context/request/async/WebAsyncManagerErrorTests.java @@ -17,7 +17,6 @@ package org.springframework.web.context.request.async; import java.util.concurrent.Callable; -import java.util.function.Consumer; import jakarta.servlet.AsyncEvent; import org.junit.jupiter.api.BeforeEach; @@ -95,12 +94,7 @@ public class WebAsyncManagerErrorTests { StubCallable callable = new StubCallable(); WebAsyncTask webAsyncTask = new WebAsyncTask<>(callable); - webAsyncTask.onError(new Callable() { - @Override - public Object call() throws Exception { - return 7; - } - }); + webAsyncTask.onError(() -> 7); this.asyncManager.startCallableProcessing(webAsyncTask); @@ -201,12 +195,7 @@ public class WebAsyncManagerErrorTests { public void startDeferredResultProcessingErrorAndResumeThroughCallback() throws Exception { final DeferredResult deferredResult = new DeferredResult<>(); - deferredResult.onError(new Consumer() { - @Override - public void accept(Throwable t) { - deferredResult.setResult(t); - } - }); + deferredResult.onError(t -> deferredResult.setResult(t)); this.asyncManager.startDeferredResultProcessing(deferredResult); diff --git a/spring-web/src/test/java/org/springframework/web/context/request/async/WebAsyncManagerTimeoutTests.java b/spring-web/src/test/java/org/springframework/web/context/request/async/WebAsyncManagerTimeoutTests.java index d3293e41c66..500d480e91c 100644 --- a/spring-web/src/test/java/org/springframework/web/context/request/async/WebAsyncManagerTimeoutTests.java +++ b/spring-web/src/test/java/org/springframework/web/context/request/async/WebAsyncManagerTimeoutTests.java @@ -96,12 +96,7 @@ public class WebAsyncManagerTimeoutTests { StubCallable callable = new StubCallable(); WebAsyncTask webAsyncTask = new WebAsyncTask<>(callable); - webAsyncTask.onTimeout(new Callable() { - @Override - public Object call() throws Exception { - return 7; - } - }); + webAsyncTask.onTimeout(() -> 7); this.asyncManager.startCallableProcessing(webAsyncTask); diff --git a/spring-web/src/test/java/org/springframework/web/filter/HiddenHttpMethodFilterTests.java b/spring-web/src/test/java/org/springframework/web/filter/HiddenHttpMethodFilterTests.java index 07a508247a3..db08c418cb7 100644 --- a/spring-web/src/test/java/org/springframework/web/filter/HiddenHttpMethodFilterTests.java +++ b/spring-web/src/test/java/org/springframework/web/filter/HiddenHttpMethodFilterTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2019 the original author or authors. + * Copyright 2002-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,8 +20,6 @@ import java.io.IOException; import jakarta.servlet.FilterChain; import jakarta.servlet.ServletException; -import jakarta.servlet.ServletRequest; -import jakarta.servlet.ServletResponse; import jakarta.servlet.http.HttpServletRequest; import org.junit.jupiter.api.Test; @@ -67,14 +65,9 @@ public class HiddenHttpMethodFilterTests { } MockHttpServletResponse response = new MockHttpServletResponse(); - FilterChain filterChain = new FilterChain() { - - @Override - public void doFilter(ServletRequest filterRequest, - ServletResponse filterResponse) throws IOException, ServletException { - assertThat(((HttpServletRequest) filterRequest).getMethod()).as("Invalid method").isEqualTo(expectedMethod); - } - }; + FilterChain filterChain = (filterRequest, filterResponse) -> + assertThat(((HttpServletRequest) filterRequest).getMethod()) + .as("Invalid method").isEqualTo(expectedMethod); this.filter.doFilter(request, response, filterChain); } diff --git a/spring-web/src/test/java/org/springframework/web/method/annotation/ModelFactoryOrderingTests.java b/spring-web/src/test/java/org/springframework/web/method/annotation/ModelFactoryOrderingTests.java index 9e4b9f3c0b3..005560c1f59 100644 --- a/spring-web/src/test/java/org/springframework/web/method/annotation/ModelFactoryOrderingTests.java +++ b/spring-web/src/test/java/org/springframework/web/method/annotation/ModelFactoryOrderingTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2019 the original author or authors. + * Copyright 2002-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -54,27 +54,24 @@ import static org.assertj.core.api.Assertions.assertThat; * * @author Rossen Stoyanchev */ -public class ModelFactoryOrderingTests { +class ModelFactoryOrderingTests { private static final Log logger = LogFactory.getLog(ModelFactoryOrderingTests.class); - private NativeWebRequest webRequest; + private final NativeWebRequest webRequest = new ServletWebRequest(new MockHttpServletRequest(), new MockHttpServletResponse()); - private ModelAndViewContainer mavContainer; + private final ModelAndViewContainer mavContainer = new ModelAndViewContainer(); - private SessionAttributeStore sessionAttributeStore; + private final SessionAttributeStore sessionAttributeStore = new DefaultSessionAttributeStore(); @BeforeEach - public void setup() { - this.sessionAttributeStore = new DefaultSessionAttributeStore(); - this.webRequest = new ServletWebRequest(new MockHttpServletRequest(), new MockHttpServletResponse()); - this.mavContainer = new ModelAndViewContainer(); + void setup() { this.mavContainer.addAttribute("methods", new ArrayList()); } @Test - public void straightLineDependency() throws Exception { + void straightLineDependency() throws Exception { runTest(new StraightLineDependencyController()); assertInvokedBefore("getA", "getB1", "getB2", "getC1", "getC2", "getC3", "getC4"); assertInvokedBefore("getB1", "getB2", "getC1", "getC2", "getC3", "getC4"); @@ -85,7 +82,7 @@ public class ModelFactoryOrderingTests { } @Test - public void treeDependency() throws Exception { + void treeDependency() throws Exception { runTest(new TreeDependencyController()); assertInvokedBefore("getA", "getB1", "getB2", "getC1", "getC2", "getC3", "getC4"); assertInvokedBefore("getB1", "getC1", "getC2"); @@ -93,7 +90,7 @@ public class ModelFactoryOrderingTests { } @Test - public void InvertedTreeDependency() throws Exception { + void InvertedTreeDependency() throws Exception { runTest(new InvertedTreeDependencyController()); assertInvokedBefore("getC1", "getA", "getB1"); assertInvokedBefore("getC2", "getA", "getB1"); @@ -104,7 +101,7 @@ public class ModelFactoryOrderingTests { } @Test - public void unresolvedDependency() throws Exception { + void unresolvedDependency() throws Exception { runTest(new UnresolvedDependencyController()); assertInvokedBefore("getA", "getC1", "getC2", "getC3", "getC4"); @@ -133,19 +130,16 @@ public class ModelFactoryOrderingTests { ModelFactory factory = new ModelFactory(modelMethods, dataBinderFactory, sessionHandler); factory.initModel(this.webRequest, this.mavContainer, new HandlerMethod(controller, "handle")); if (logger.isDebugEnabled()) { - StringBuilder sb = new StringBuilder(); - for (String name : getInvokedMethods()) { - sb.append(" >> ").append(name); - } - logger.debug(sb); + logger.debug(String.join(" >> ", getInvokedMethods())); } } private void assertInvokedBefore(String beforeMethod, String... afterMethods) { List actual = getInvokedMethods(); for (String afterMethod : afterMethods) { - assertThat(actual.indexOf(beforeMethod) < actual.indexOf(afterMethod)).as(beforeMethod + " should be before " + afterMethod + ". Actual order: " + - actual.toString()).isTrue(); + assertThat(actual.indexOf(beforeMethod) < actual.indexOf(afterMethod)) + .as(beforeMethod + " should be before " + afterMethod + ". Actual order: " + actual.toString()) + .isTrue(); } } @@ -321,13 +315,8 @@ public class ModelFactoryOrderingTests { private static class C4 { } - private static final ReflectionUtils.MethodFilter METHOD_FILTER = new ReflectionUtils.MethodFilter() { - - @Override - public boolean matches(Method method) { - return ((AnnotationUtils.findAnnotation(method, RequestMapping.class) == null) && - (AnnotationUtils.findAnnotation(method, ModelAttribute.class) != null)); - } - }; + private static final ReflectionUtils.MethodFilter METHOD_FILTER = method -> + ((AnnotationUtils.findAnnotation(method, RequestMapping.class) == null) && + (AnnotationUtils.findAnnotation(method, ModelAttribute.class) != null)); } diff --git a/spring-webflux/src/test/java/org/springframework/web/reactive/function/BodyExtractorsTests.java b/spring-webflux/src/test/java/org/springframework/web/reactive/function/BodyExtractorsTests.java index 63ab4782fe0..eea4ef3a8ce 100644 --- a/spring-webflux/src/test/java/org/springframework/web/reactive/function/BodyExtractorsTests.java +++ b/spring-webflux/src/test/java/org/springframework/web/reactive/function/BodyExtractorsTests.java @@ -111,7 +111,7 @@ public class BodyExtractorsTests { return hints; } }; - this.hints = new HashMap(); + this.hints = new HashMap<>(); } diff --git a/spring-webflux/src/test/java/org/springframework/web/reactive/function/server/RouterFunctionsTests.java b/spring-webflux/src/test/java/org/springframework/web/reactive/function/server/RouterFunctionsTests.java index ad6bfbdca9f..b9d6fb39a42 100644 --- a/spring-webflux/src/test/java/org/springframework/web/reactive/function/server/RouterFunctionsTests.java +++ b/spring-webflux/src/test/java/org/springframework/web/reactive/function/server/RouterFunctionsTests.java @@ -36,7 +36,6 @@ import org.springframework.util.MultiValueMap; import org.springframework.web.server.ResponseStatusException; import org.springframework.web.server.ServerWebExchange; import org.springframework.web.server.WebFilter; -import org.springframework.web.server.WebFilterChain; import org.springframework.web.testfixture.http.server.reactive.MockServerHttpRequest; import org.springframework.web.testfixture.http.server.reactive.MockServerHttpResponse; import org.springframework.web.testfixture.server.MockServerWebExchange; @@ -295,12 +294,9 @@ public class RouterFunctionsTests { public void toHttpHandlerWebFilter() { AtomicBoolean filterInvoked = new AtomicBoolean(); - WebFilter webFilter = new WebFilter() { - @Override - public Mono filter(ServerWebExchange exchange, WebFilterChain chain) { - filterInvoked.set(true); - return chain.filter(exchange); - } + WebFilter webFilter = (exchange, chain) -> { + filterInvoked.set(true); + return chain.filter(exchange); }; HandlerFunction handlerFunction = request -> ServerResponse.accepted().build(); diff --git a/spring-webflux/src/test/java/org/springframework/web/reactive/resource/ResourceUrlProviderTests.java b/spring-webflux/src/test/java/org/springframework/web/reactive/resource/ResourceUrlProviderTests.java index ec5d45344aa..1b58da1e6cc 100644 --- a/spring-webflux/src/test/java/org/springframework/web/reactive/resource/ResourceUrlProviderTests.java +++ b/spring-webflux/src/test/java/org/springframework/web/reactive/resource/ResourceUrlProviderTests.java @@ -164,7 +164,7 @@ public class ResourceUrlProviderTests { private Condition pathPatternStringOf(String expected) { - return new Condition( + return new Condition<>( actual -> actual != null && actual.getPatternString().equals(expected), "Pattern %s", expected); } diff --git a/spring-webmvc/src/test/java/org/springframework/context/LifecycleContextBean.java b/spring-webmvc/src/test/java/org/springframework/context/LifecycleContextBean.java index 1f04eb182cc..b05fcb658b7 100644 --- a/spring-webmvc/src/test/java/org/springframework/context/LifecycleContextBean.java +++ b/spring-webmvc/src/test/java/org/springframework/context/LifecycleContextBean.java @@ -33,21 +33,24 @@ public class LifecycleContextBean extends LifecycleBean implements ApplicationCo @Override public void setBeanFactory(BeanFactory beanFactory) { super.setBeanFactory(beanFactory); - if (this.owningContext != null) + if (this.owningContext != null) { throw new RuntimeException("Factory called setBeanFactory after setApplicationContext"); + } } @Override public void afterPropertiesSet() { super.afterPropertiesSet(); - if (this.owningContext == null) + if (this.owningContext == null) { throw new RuntimeException("Factory didn't call setApplicationContext before afterPropertiesSet on lifecycle bean"); + } } @Override public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { - if (this.owningFactory == null) + if (this.owningFactory == null) { throw new RuntimeException("Factory called setApplicationContext before setBeanFactory"); + } this.owningContext = applicationContext; } diff --git a/spring-webmvc/src/test/java/org/springframework/web/context/XmlWebApplicationContextTests.java b/spring-webmvc/src/test/java/org/springframework/web/context/XmlWebApplicationContextTests.java index 861e5155e4f..837bb1c78c6 100644 --- a/spring-webmvc/src/test/java/org/springframework/web/context/XmlWebApplicationContextTests.java +++ b/spring-webmvc/src/test/java/org/springframework/web/context/XmlWebApplicationContextTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2020 the original author or authors. + * Copyright 2002-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -24,9 +24,7 @@ import org.junit.jupiter.api.Test; import org.springframework.beans.BeansException; import org.springframework.beans.factory.DisposableBean; import org.springframework.beans.factory.InitializingBean; -import org.springframework.beans.factory.config.BeanFactoryPostProcessor; import org.springframework.beans.factory.config.BeanPostProcessor; -import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; import org.springframework.beans.testfixture.beans.TestBean; import org.springframework.context.ConfigurableApplicationContext; import org.springframework.context.NoSuchMessageException; @@ -55,24 +53,15 @@ public class XmlWebApplicationContextTests extends AbstractApplicationContextTes MockServletContext sc = new MockServletContext(""); root.setServletContext(sc); root.setConfigLocations("/org/springframework/web/context/WEB-INF/applicationContext.xml"); - root.addBeanFactoryPostProcessor(new BeanFactoryPostProcessor() { + root.addBeanFactoryPostProcessor(beanFactory -> beanFactory.addBeanPostProcessor(new BeanPostProcessor() { @Override - public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) { - beanFactory.addBeanPostProcessor(new BeanPostProcessor() { - @Override - public Object postProcessBeforeInitialization(Object bean, String name) throws BeansException { - if (bean instanceof TestBean) { - ((TestBean) bean).getFriends().add("myFriend"); - } - return bean; - } - @Override - public Object postProcessAfterInitialization(Object bean, String name) throws BeansException { - return bean; - } - }); + public Object postProcessBeforeInitialization(Object bean, String name) throws BeansException { + if (bean instanceof TestBean) { + ((TestBean) bean).getFriends().add("myFriend"); + } + return bean; } - }); + })); root.refresh(); XmlWebApplicationContext wac = new XmlWebApplicationContext(); wac.getEnvironment().addActiveProfile("wacProfile1"); @@ -108,7 +97,7 @@ public class XmlWebApplicationContextTests extends AbstractApplicationContextTes @Test @Override public void count() { - assertThat(this.applicationContext.getBeanDefinitionCount() == 14).as("should have 14 beans, not "+ this.applicationContext.getBeanDefinitionCount()).isTrue(); + assertThat(this.applicationContext.getBeanDefinitionCount()).as("should have 14 beans").isEqualTo(14); } @Test diff --git a/spring-webmvc/src/test/java/org/springframework/web/context/support/HttpRequestHandlerTests.java b/spring-webmvc/src/test/java/org/springframework/web/context/support/HttpRequestHandlerTests.java index 3026bc8ac13..7a5d2a36f5e 100644 --- a/spring-webmvc/src/test/java/org/springframework/web/context/support/HttpRequestHandlerTests.java +++ b/spring-webmvc/src/test/java/org/springframework/web/context/support/HttpRequestHandlerTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2019 the original author or authors. + * Copyright 2002-2022 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,8 +20,6 @@ import java.io.IOException; import jakarta.servlet.Servlet; import jakarta.servlet.ServletException; -import jakarta.servlet.http.HttpServletRequest; -import jakarta.servlet.http.HttpServletResponse; import org.junit.jupiter.api.Test; import org.springframework.web.HttpRequestHandler; @@ -45,24 +43,21 @@ public class HttpRequestHandlerTests { @Test public void testHttpRequestHandlerServletPassThrough() throws Exception { MockServletContext servletContext = new MockServletContext(); - final MockHttpServletRequest request = new MockHttpServletRequest(); - final MockHttpServletResponse response = new MockHttpServletResponse(); + MockHttpServletRequest request = new MockHttpServletRequest(); + MockHttpServletResponse response = new MockHttpServletResponse(); StaticWebApplicationContext wac = new StaticWebApplicationContext(); - wac.getBeanFactory().registerSingleton("myHandler", new HttpRequestHandler() { - @Override - public void handleRequest(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { - assertThat(req).isSameAs(request); - assertThat(res).isSameAs(response); - String exception = request.getParameter("exception"); - if ("ServletException".equals(exception)) { - throw new ServletException("test"); - } - if ("IOException".equals(exception)) { - throw new IOException("test"); - } - res.getWriter().write("myResponse"); + wac.getBeanFactory().registerSingleton("myHandler", (HttpRequestHandler) (req, res) -> { + assertThat(req).isSameAs(request); + assertThat(res).isSameAs(response); + String exception = request.getParameter("exception"); + if ("ServletException".equals(exception)) { + throw new ServletException("test"); } + if ("IOException".equals(exception)) { + throw new IOException("test"); + } + res.getWriter().write("myResponse"); }); wac.setServletContext(servletContext); wac.refresh(); @@ -75,13 +70,13 @@ public class HttpRequestHandlerTests { assertThat(response.getContentAsString()).isEqualTo("myResponse"); request.setParameter("exception", "ServletException"); - assertThatExceptionOfType(ServletException.class).isThrownBy(() -> - servlet.service(request, response)) + assertThatExceptionOfType(ServletException.class) + .isThrownBy(() -> servlet.service(request, response)) .withMessage("test"); request.setParameter("exception", "IOException"); - assertThatIOException().isThrownBy(() -> - servlet.service(request, response)) + assertThatIOException() + .isThrownBy(() -> servlet.service(request, response)) .withMessage("test"); } diff --git a/spring-webmvc/src/test/java/org/springframework/web/servlet/config/annotation/WebMvcConfigurationSupportExtensionTests.java b/spring-webmvc/src/test/java/org/springframework/web/servlet/config/annotation/WebMvcConfigurationSupportExtensionTests.java index bcc0fe568d9..65c802cf5e0 100644 --- a/spring-webmvc/src/test/java/org/springframework/web/servlet/config/annotation/WebMvcConfigurationSupportExtensionTests.java +++ b/spring-webmvc/src/test/java/org/springframework/web/servlet/config/annotation/WebMvcConfigurationSupportExtensionTests.java @@ -29,7 +29,6 @@ import org.junit.jupiter.api.Test; import org.springframework.beans.DirectFieldAccessor; import org.springframework.beans.testfixture.beans.TestBean; import org.springframework.core.Ordered; -import org.springframework.core.convert.converter.Converter; import org.springframework.core.io.FileSystemResourceLoader; import org.springframework.format.FormatterRegistry; import org.springframework.http.HttpStatus; @@ -360,12 +359,7 @@ public class WebMvcConfigurationSupportExtensionTests { @Override public void addFormatters(FormatterRegistry registry) { - registry.addConverter(new Converter() { - @Override - public String convert(TestBean source) { - return "converted"; - } - }); + registry.addConverter(TestBean.class, String.class, testBean -> "converted"); } @Override diff --git a/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultEntityResponseBuilderTests.java b/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultEntityResponseBuilderTests.java index f57fdbded43..d9c974c7ad2 100644 --- a/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultEntityResponseBuilderTests.java +++ b/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultEntityResponseBuilderTests.java @@ -34,7 +34,6 @@ import org.springframework.http.HttpHeaders; import org.springframework.http.HttpMethod; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; -import org.springframework.http.converter.HttpMessageConverter; import org.springframework.util.LinkedMultiValueMap; import org.springframework.util.MultiValueMap; import org.springframework.web.servlet.ModelAndView; @@ -48,13 +47,7 @@ import static org.assertj.core.api.Assertions.assertThat; */ public class DefaultEntityResponseBuilderTests { - static final ServerResponse.Context EMPTY_CONTEXT = new ServerResponse.Context() { - @Override - public List> messageConverters() { - return Collections.emptyList(); - } - - }; + static final ServerResponse.Context EMPTY_CONTEXT = () -> Collections.emptyList(); @Test public void fromObject() { diff --git a/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultRenderingResponseTests.java b/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultRenderingResponseTests.java index 6ffb5da58a8..45659cec624 100644 --- a/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultRenderingResponseTests.java +++ b/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultRenderingResponseTests.java @@ -20,7 +20,6 @@ import java.time.ZonedDateTime; import java.time.format.DateTimeFormatter; import java.time.temporal.ChronoUnit; import java.util.Collections; -import java.util.List; import java.util.Map; import jakarta.servlet.http.Cookie; @@ -28,7 +27,6 @@ import org.junit.jupiter.api.Test; import org.springframework.http.HttpHeaders; import org.springframework.http.HttpStatus; -import org.springframework.http.converter.HttpMessageConverter; import org.springframework.util.LinkedMultiValueMap; import org.springframework.util.MultiValueMap; import org.springframework.web.servlet.ModelAndView; @@ -42,13 +40,7 @@ import static org.assertj.core.api.Assertions.assertThat; */ public class DefaultRenderingResponseTests { - static final ServerResponse.Context EMPTY_CONTEXT = new ServerResponse.Context() { - @Override - public List> messageConverters() { - return Collections.emptyList(); - } - - }; + static final ServerResponse.Context EMPTY_CONTEXT = () -> Collections.emptyList(); @Test public void create() throws Exception { diff --git a/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultServerRequestTests.java b/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultServerRequestTests.java index 4a5a19d276f..d8aa06113e3 100644 --- a/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultServerRequestTests.java +++ b/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultServerRequestTests.java @@ -317,12 +317,7 @@ class DefaultServerRequestTests { @Test void principal() { MockHttpServletRequest servletRequest = PathPatternsTestUtils.initRequest("GET", "/", true); - Principal principal = new Principal() { - @Override - public String getName() { - return "foo"; - } - }; + Principal principal = () -> "foo"; servletRequest.setUserPrincipal(principal); DefaultServerRequest request = new DefaultServerRequest(servletRequest, diff --git a/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultServerResponseBuilderTests.java b/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultServerResponseBuilderTests.java index 6630814bc34..c79aab948c2 100644 --- a/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultServerResponseBuilderTests.java +++ b/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultServerResponseBuilderTests.java @@ -38,7 +38,6 @@ import org.springframework.http.HttpHeaders; import org.springframework.http.HttpMethod; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; -import org.springframework.http.converter.HttpMessageConverter; import org.springframework.http.converter.StringHttpMessageConverter; import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; import org.springframework.util.LinkedMultiValueMap; @@ -54,14 +53,7 @@ import static org.assertj.core.api.Assertions.assertThat; */ public class DefaultServerResponseBuilderTests { - static final ServerResponse.Context EMPTY_CONTEXT = new ServerResponse.Context() { - @Override - public List> messageConverters() { - return Collections.emptyList(); - - } - - }; + static final ServerResponse.Context EMPTY_CONTEXT = () -> Collections.emptyList(); @Test public void status() { diff --git a/spring-webmvc/src/test/java/org/springframework/web/servlet/tags/form/SelectTagTests.java b/spring-webmvc/src/test/java/org/springframework/web/servlet/tags/form/SelectTagTests.java index 9fb65efea40..d8a69d4d87c 100644 --- a/spring-webmvc/src/test/java/org/springframework/web/servlet/tags/form/SelectTagTests.java +++ b/spring-webmvc/src/test/java/org/springframework/web/servlet/tags/form/SelectTagTests.java @@ -22,7 +22,6 @@ import java.io.StringReader; import java.text.ParseException; import java.util.ArrayList; import java.util.Collections; -import java.util.Comparator; import java.util.HashMap; import java.util.List; import java.util.Locale; @@ -948,12 +947,7 @@ public class SelectTagTests extends AbstractFormTagTests { } private Map getCountryToLocaleMap() { - Map map = new TreeMap(new Comparator() { - @Override - public int compare(Object o1, Object o2) { - return ((Country)o1).getName().compareTo(((Country)o2).getName()); - } - }); + Map map = new TreeMap((o1, o2) -> ((Country)o1).getName().compareTo(((Country)o2).getName())); map.put(Country.COUNTRY_AT, LOCALE_AT); map.put(Country.COUNTRY_NL, LOCALE_NL); map.put(Country.COUNTRY_US, Locale.US); diff --git a/spring-websocket/src/test/java/org/springframework/web/socket/messaging/DefaultSimpUserRegistryTests.java b/spring-websocket/src/test/java/org/springframework/web/socket/messaging/DefaultSimpUserRegistryTests.java index d7fa58dcff0..558b547c092 100644 --- a/spring-websocket/src/test/java/org/springframework/web/socket/messaging/DefaultSimpUserRegistryTests.java +++ b/spring-websocket/src/test/java/org/springframework/web/socket/messaging/DefaultSimpUserRegistryTests.java @@ -28,7 +28,6 @@ import org.springframework.messaging.Message; import org.springframework.messaging.simp.SimpMessageHeaderAccessor; import org.springframework.messaging.simp.SimpMessageType; import org.springframework.messaging.simp.user.SimpSubscription; -import org.springframework.messaging.simp.user.SimpSubscriptionMatcher; import org.springframework.messaging.simp.user.SimpUser; import org.springframework.messaging.support.MessageBuilder; import org.springframework.web.socket.CloseStatus; @@ -143,12 +142,7 @@ public class DefaultSimpUserRegistryTests { subscribeEvent = new SessionSubscribeEvent(this, message, user); registry.onApplicationEvent(subscribeEvent); - Set matches = registry.findSubscriptions(new SimpSubscriptionMatcher() { - @Override - public boolean match(SimpSubscription subscription) { - return subscription.getDestination().equals("/match"); - } - }); + Set matches = registry.findSubscriptions(subscription -> subscription.getDestination().equals("/match")); assertThat(matches.size()).isEqualTo(2);