propertyDescriptors = new TreeSet<>(new PropertyDescriptorComparator());
/**
@@ -91,11 +94,9 @@ class ExtendedBeanInfo implements BeanInfo {
* through its method descriptors to find any non-void returning write methods and
* update or create the corresponding {@link PropertyDescriptor} for each one found.
* @param delegate the wrapped {@code BeanInfo}, which is never modified
- * @throws IntrospectionException if any problems occur creating and adding new
- * property descriptors
* @see #getPropertyDescriptors()
*/
- public ExtendedBeanInfo(BeanInfo delegate) throws IntrospectionException {
+ public ExtendedBeanInfo(BeanInfo delegate) {
this.delegate = delegate;
for (PropertyDescriptor pd : delegate.getPropertyDescriptors()) {
try {
@@ -214,8 +215,8 @@ class ExtendedBeanInfo implements BeanInfo {
/**
* Return the set of {@link PropertyDescriptor PropertyDescriptors} from the wrapped
- * {@link BeanInfo} object as well as {@code PropertyDescriptor BeanInfo} object as well as {@code PropertyDescriptors}
- * for each non-void returning setter method found during construction.
+ * {@link BeanInfo} object as well as {@code PropertyDescriptors} for each non-void
+ * returning setter method found during construction.
* @see #ExtendedBeanInfo(BeanInfo)
*/
@Override
@@ -281,7 +282,9 @@ class ExtendedBeanInfo implements BeanInfo {
PropertyDescriptorUtils.copyNonMethodProperties(original, this);
}
- public SimplePropertyDescriptor(String propertyName, @Nullable Method readMethod, Method writeMethod) throws IntrospectionException {
+ public SimplePropertyDescriptor(String propertyName, @Nullable Method readMethod, Method writeMethod)
+ throws IntrospectionException {
+
super(propertyName, null, null);
this.readMethod = readMethod;
this.writeMethod = writeMethod;
@@ -385,8 +388,9 @@ class ExtendedBeanInfo implements BeanInfo {
PropertyDescriptorUtils.copyNonMethodProperties(original, this);
}
- public SimpleIndexedPropertyDescriptor(String propertyName, @Nullable Method readMethod, @Nullable Method writeMethod,
- @Nullable Method indexedReadMethod, Method indexedWriteMethod) throws IntrospectionException {
+ public SimpleIndexedPropertyDescriptor(String propertyName, @Nullable Method readMethod,
+ @Nullable Method writeMethod, @Nullable Method indexedReadMethod, Method indexedWriteMethod)
+ throws IntrospectionException {
super(propertyName, null, null, null, null);
this.readMethod = readMethod;
diff --git a/spring-beans/src/main/java/org/springframework/beans/PropertyDescriptorUtils.java b/spring-beans/src/main/java/org/springframework/beans/PropertyDescriptorUtils.java
index 9e1120dd50c..c549c9c4757 100644
--- a/spring-beans/src/main/java/org/springframework/beans/PropertyDescriptorUtils.java
+++ b/spring-beans/src/main/java/org/springframework/beans/PropertyDescriptorUtils.java
@@ -30,19 +30,12 @@ import org.springframework.util.ObjectUtils;
* @author Chris Beams
* @author Juergen Hoeller
*/
-final class PropertyDescriptorUtils {
-
-
- private PropertyDescriptorUtils() {
- }
-
+abstract class PropertyDescriptorUtils {
/**
* See {@link java.beans.FeatureDescriptor}.
*/
- public static void copyNonMethodProperties(PropertyDescriptor source, PropertyDescriptor target)
- throws IntrospectionException {
-
+ public static void copyNonMethodProperties(PropertyDescriptor source, PropertyDescriptor target) {
target.setExpert(source.isExpert());
target.setHidden(source.isHidden());
target.setPreferred(source.isPreferred());
diff --git a/spring-beans/src/main/java/org/springframework/beans/factory/support/BeanDefinitionReaderUtils.java b/spring-beans/src/main/java/org/springframework/beans/factory/support/BeanDefinitionReaderUtils.java
index 144176d3300..5be980df091 100644
--- a/spring-beans/src/main/java/org/springframework/beans/factory/support/BeanDefinitionReaderUtils.java
+++ b/spring-beans/src/main/java/org/springframework/beans/factory/support/BeanDefinitionReaderUtils.java
@@ -35,7 +35,7 @@ import org.springframework.util.StringUtils;
* @see PropertiesBeanDefinitionReader
* @see org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader
*/
-public final class BeanDefinitionReaderUtils {
+public abstract class BeanDefinitionReaderUtils {
/**
* Separator for generated bean names. If a class name or parent name is not
@@ -44,10 +44,6 @@ public final class BeanDefinitionReaderUtils {
public static final String GENERATED_BEAN_NAME_SEPARATOR = BeanFactoryUtils.GENERATED_BEAN_NAME_SEPARATOR;
- private BeanDefinitionReaderUtils() {
- }
-
-
/**
* Create a new GenericBeanDefinition for the given parent name and class name,
* eagerly loading the bean class if a ClassLoader has been specified.
diff --git a/spring-context/src/main/java/org/springframework/cache/config/CacheManagementConfigUtils.java b/spring-context/src/main/java/org/springframework/cache/config/CacheManagementConfigUtils.java
index ffddc844f24..4cdf217ef57 100644
--- a/spring-context/src/main/java/org/springframework/cache/config/CacheManagementConfigUtils.java
+++ b/spring-context/src/main/java/org/springframework/cache/config/CacheManagementConfigUtils.java
@@ -22,7 +22,7 @@ package org.springframework.cache.config;
* @author Juergen Hoeller
* @since 4.1
*/
-public final class CacheManagementConfigUtils {
+public abstract class CacheManagementConfigUtils {
/**
* The name of the cache advisor bean.
@@ -48,8 +48,4 @@ public final class CacheManagementConfigUtils {
public static final String JCACHE_ASPECT_BEAN_NAME =
"org.springframework.cache.config.internalJCacheAspect";
-
- private CacheManagementConfigUtils() {
- }
-
}
diff --git a/spring-context/src/main/java/org/springframework/context/annotation/BeanAnnotationHelper.java b/spring-context/src/main/java/org/springframework/context/annotation/BeanAnnotationHelper.java
index d54a19c85d7..cb7dabd3a6c 100644
--- a/spring-context/src/main/java/org/springframework/context/annotation/BeanAnnotationHelper.java
+++ b/spring-context/src/main/java/org/springframework/context/annotation/BeanAnnotationHelper.java
@@ -29,7 +29,6 @@ import org.springframework.core.annotation.AnnotatedElementUtils;
*/
final class BeanAnnotationHelper {
-
private BeanAnnotationHelper() {
}
diff --git a/spring-context/src/main/java/org/springframework/context/annotation/ScopedProxyCreator.java b/spring-context/src/main/java/org/springframework/context/annotation/ScopedProxyCreator.java
index 58e9b0b0b29..910d5c38423 100644
--- a/spring-context/src/main/java/org/springframework/context/annotation/ScopedProxyCreator.java
+++ b/spring-context/src/main/java/org/springframework/context/annotation/ScopedProxyCreator.java
@@ -30,7 +30,6 @@ import org.springframework.beans.factory.support.BeanDefinitionRegistry;
*/
final class ScopedProxyCreator {
-
private ScopedProxyCreator() {
}
diff --git a/spring-context/src/main/java/org/springframework/context/support/PostProcessorRegistrationDelegate.java b/spring-context/src/main/java/org/springframework/context/support/PostProcessorRegistrationDelegate.java
index f276e56b8e8..a021d30bd06 100644
--- a/spring-context/src/main/java/org/springframework/context/support/PostProcessorRegistrationDelegate.java
+++ b/spring-context/src/main/java/org/springframework/context/support/PostProcessorRegistrationDelegate.java
@@ -49,7 +49,6 @@ import org.springframework.lang.Nullable;
*/
final class PostProcessorRegistrationDelegate {
-
private PostProcessorRegistrationDelegate() {
}
@@ -306,7 +305,7 @@ final class PostProcessorRegistrationDelegate {
* BeanPostProcessor instantiation, i.e. when a bean is not eligible for
* getting processed by all BeanPostProcessors.
*/
- private static class BeanPostProcessorChecker implements BeanPostProcessor {
+ private static final class BeanPostProcessorChecker implements BeanPostProcessor {
private static final Log logger = LogFactory.getLog(BeanPostProcessorChecker.class);
diff --git a/spring-context/src/main/java/org/springframework/format/datetime/joda/JodaTimeConverters.java b/spring-context/src/main/java/org/springframework/format/datetime/joda/JodaTimeConverters.java
index c0c66cc39a6..b3b02fb26d7 100644
--- a/spring-context/src/main/java/org/springframework/format/datetime/joda/JodaTimeConverters.java
+++ b/spring-context/src/main/java/org/springframework/format/datetime/joda/JodaTimeConverters.java
@@ -46,7 +46,6 @@ import org.springframework.format.datetime.DateFormatterRegistrar;
*/
final class JodaTimeConverters {
-
private JodaTimeConverters() {
}
diff --git a/spring-context/src/main/java/org/springframework/format/datetime/standard/DateTimeConverters.java b/spring-context/src/main/java/org/springframework/format/datetime/standard/DateTimeConverters.java
index e073e864824..74afc0d59d0 100644
--- a/spring-context/src/main/java/org/springframework/format/datetime/standard/DateTimeConverters.java
+++ b/spring-context/src/main/java/org/springframework/format/datetime/standard/DateTimeConverters.java
@@ -43,7 +43,6 @@ import org.springframework.format.datetime.DateFormatterRegistrar;
*/
final class DateTimeConverters {
-
private DateTimeConverters() {
}
diff --git a/spring-context/src/main/java/org/springframework/jmx/support/ObjectNameManager.java b/spring-context/src/main/java/org/springframework/jmx/support/ObjectNameManager.java
index 70e822cab4a..1ca1d86b41c 100644
--- a/spring-context/src/main/java/org/springframework/jmx/support/ObjectNameManager.java
+++ b/spring-context/src/main/java/org/springframework/jmx/support/ObjectNameManager.java
@@ -30,7 +30,6 @@ import javax.management.ObjectName;
*/
public final class ObjectNameManager {
-
private ObjectNameManager() {
}
diff --git a/spring-context/src/main/java/org/springframework/scheduling/config/TaskManagementConfigUtils.java b/spring-context/src/main/java/org/springframework/scheduling/config/TaskManagementConfigUtils.java
index 47c6d5dfd1c..fdaf6be4b03 100644
--- a/spring-context/src/main/java/org/springframework/scheduling/config/TaskManagementConfigUtils.java
+++ b/spring-context/src/main/java/org/springframework/scheduling/config/TaskManagementConfigUtils.java
@@ -22,7 +22,7 @@ package org.springframework.scheduling.config;
* @author Juergen Hoeller
* @since 4.1
*/
-public final class TaskManagementConfigUtils {
+public abstract class TaskManagementConfigUtils {
/**
* The bean name of the internally managed Scheduled annotation processor.
@@ -42,9 +42,4 @@ public final class TaskManagementConfigUtils {
public static final String ASYNC_EXECUTION_ASPECT_BEAN_NAME =
"org.springframework.scheduling.config.internalAsyncExecutionAspect";
-
- private TaskManagementConfigUtils() {
- }
-
-
}
diff --git a/spring-core/src/main/java/org/springframework/core/SpringVersion.java b/spring-core/src/main/java/org/springframework/core/SpringVersion.java
index 13cf4f49e46..84484a07333 100644
--- a/spring-core/src/main/java/org/springframework/core/SpringVersion.java
+++ b/spring-core/src/main/java/org/springframework/core/SpringVersion.java
@@ -25,7 +25,7 @@ import org.springframework.lang.Nullable;
* Note that some ClassLoaders do not expose the package metadata,
* hence this class might not be able to determine the Spring version
* in all environments. Consider using a reflection-based check instead:
- * For example, checking for the presence of a specific Spring 2.0
+ * For example, checking for the presence of a specific Spring 5.0
* method that you intend to call.
*
* @author Juergen Hoeller
@@ -33,7 +33,6 @@ import org.springframework.lang.Nullable;
*/
public final class SpringVersion {
-
private SpringVersion() {
}
diff --git a/spring-core/src/main/java/org/springframework/core/env/ProfilesParser.java b/spring-core/src/main/java/org/springframework/core/env/ProfilesParser.java
index 3b06a942281..f724a8c1e69 100644
--- a/spring-core/src/main/java/org/springframework/core/env/ProfilesParser.java
+++ b/spring-core/src/main/java/org/springframework/core/env/ProfilesParser.java
@@ -32,7 +32,11 @@ import org.springframework.util.StringUtils;
* @author Phillip Webb
* @since 5.1
*/
-abstract class ProfilesParser {
+final class ProfilesParser {
+
+ private ProfilesParser() {
+ }
+
static Profiles parse(String... expressions) {
Assert.notEmpty(expressions, "Must specify at least one profile");
diff --git a/spring-jdbc/src/main/java/org/springframework/jdbc/config/DatabasePopulatorConfigUtils.java b/spring-jdbc/src/main/java/org/springframework/jdbc/config/DatabasePopulatorConfigUtils.java
index 38f32fc8786..a20745ba212 100644
--- a/spring-jdbc/src/main/java/org/springframework/jdbc/config/DatabasePopulatorConfigUtils.java
+++ b/spring-jdbc/src/main/java/org/springframework/jdbc/config/DatabasePopulatorConfigUtils.java
@@ -38,12 +38,7 @@ import org.springframework.util.xml.DomUtils;
* @author Stephane Nicoll
* @since 3.1
*/
-final class DatabasePopulatorConfigUtils {
-
-
- private DatabasePopulatorConfigUtils() {
- }
-
+abstract class DatabasePopulatorConfigUtils {
public static void setDatabasePopulator(Element element, BeanDefinitionBuilder builder) {
List scripts = DomUtils.getChildElementsByTagName(element, "script");
diff --git a/spring-jdbc/src/main/java/org/springframework/jdbc/datasource/embedded/EmbeddedDatabaseConfigurerFactory.java b/spring-jdbc/src/main/java/org/springframework/jdbc/datasource/embedded/EmbeddedDatabaseConfigurerFactory.java
index a32090aad42..8d4e65d65ab 100644
--- a/spring-jdbc/src/main/java/org/springframework/jdbc/datasource/embedded/EmbeddedDatabaseConfigurerFactory.java
+++ b/spring-jdbc/src/main/java/org/springframework/jdbc/datasource/embedded/EmbeddedDatabaseConfigurerFactory.java
@@ -29,7 +29,6 @@ import org.springframework.util.Assert;
*/
final class EmbeddedDatabaseConfigurerFactory {
-
private EmbeddedDatabaseConfigurerFactory() {
}
diff --git a/spring-jdbc/src/main/java/org/springframework/jdbc/datasource/embedded/OutputStreamFactory.java b/spring-jdbc/src/main/java/org/springframework/jdbc/datasource/embedded/OutputStreamFactory.java
index 31ffda5bf78..21b84ff2fb1 100644
--- a/spring-jdbc/src/main/java/org/springframework/jdbc/datasource/embedded/OutputStreamFactory.java
+++ b/spring-jdbc/src/main/java/org/springframework/jdbc/datasource/embedded/OutputStreamFactory.java
@@ -28,7 +28,6 @@ import java.io.OutputStream;
*/
public final class OutputStreamFactory {
-
private OutputStreamFactory() {
}
diff --git a/spring-test/src/main/java/org/springframework/test/annotation/TestAnnotationUtils.java b/spring-test/src/main/java/org/springframework/test/annotation/TestAnnotationUtils.java
index 21e7361802b..f15b06cb3bc 100644
--- a/spring-test/src/main/java/org/springframework/test/annotation/TestAnnotationUtils.java
+++ b/spring-test/src/main/java/org/springframework/test/annotation/TestAnnotationUtils.java
@@ -26,12 +26,7 @@ import org.springframework.core.annotation.AnnotatedElementUtils;
* @author Sam Brannen
* @since 4.2
*/
-public final class TestAnnotationUtils {
-
-
- private TestAnnotationUtils() {
- }
-
+public abstract class TestAnnotationUtils {
/**
* Get the {@code timeout} configured via the {@link Timed @Timed}
diff --git a/spring-test/src/main/java/org/springframework/test/jdbc/JdbcTestUtils.java b/spring-test/src/main/java/org/springframework/test/jdbc/JdbcTestUtils.java
index d836c30399f..ee93494518c 100644
--- a/spring-test/src/main/java/org/springframework/test/jdbc/JdbcTestUtils.java
+++ b/spring-test/src/main/java/org/springframework/test/jdbc/JdbcTestUtils.java
@@ -38,15 +38,11 @@ import org.springframework.util.StringUtils;
* @see org.springframework.jdbc.datasource.init.ResourceDatabasePopulator
* @see org.springframework.jdbc.datasource.init.DatabasePopulatorUtils
*/
-public final class JdbcTestUtils {
+public abstract class JdbcTestUtils {
private static final Log logger = LogFactory.getLog(JdbcTestUtils.class);
- private JdbcTestUtils() {
- }
-
-
/**
* Count the rows in the given table.
* @param jdbcTemplate the JdbcTemplate with which to perform JDBC operations
diff --git a/spring-test/src/main/java/org/springframework/test/web/servlet/setup/MockMvcBuilders.java b/spring-test/src/main/java/org/springframework/test/web/servlet/setup/MockMvcBuilders.java
index 9bd26766db8..7b1db354a5f 100644
--- a/spring-test/src/main/java/org/springframework/test/web/servlet/setup/MockMvcBuilders.java
+++ b/spring-test/src/main/java/org/springframework/test/web/servlet/setup/MockMvcBuilders.java
@@ -35,7 +35,6 @@ import org.springframework.web.context.WebApplicationContext;
*/
public final class MockMvcBuilders {
-
private MockMvcBuilders() {
}
diff --git a/spring-web/src/main/java/org/springframework/web/util/JavaScriptUtils.java b/spring-web/src/main/java/org/springframework/web/util/JavaScriptUtils.java
index c17b86493da..c03dca99bdc 100644
--- a/spring-web/src/main/java/org/springframework/web/util/JavaScriptUtils.java
+++ b/spring-web/src/main/java/org/springframework/web/util/JavaScriptUtils.java
@@ -29,12 +29,7 @@ package org.springframework.web.util;
* @author Rossen Stoyanchev
* @since 1.1.1
*/
-public final class JavaScriptUtils {
-
-
- private JavaScriptUtils() {
- }
-
+public abstract class JavaScriptUtils {
/**
* Turn JavaScript special characters into escaped characters.
diff --git a/spring-websocket/src/main/java/org/springframework/web/socket/config/WebSocketNamespaceUtils.java b/spring-websocket/src/main/java/org/springframework/web/socket/config/WebSocketNamespaceUtils.java
index 73611765e72..4d4a1009354 100644
--- a/spring-websocket/src/main/java/org/springframework/web/socket/config/WebSocketNamespaceUtils.java
+++ b/spring-websocket/src/main/java/org/springframework/web/socket/config/WebSocketNamespaceUtils.java
@@ -44,12 +44,7 @@ import org.springframework.web.socket.sockjs.transport.handler.WebSocketTranspor
* @author Rossen Stoyanchev
* @since 4.0
*/
-final class WebSocketNamespaceUtils {
-
-
- private WebSocketNamespaceUtils() {
- }
-
+abstract class WebSocketNamespaceUtils {
public static RuntimeBeanReference registerHandshakeHandler(
Element element, ParserContext context, @Nullable Object source) {