diff --git a/spring-context/src/main/java/org/springframework/cache/annotation/CachingConfigurer.java b/spring-context/src/main/java/org/springframework/cache/annotation/CachingConfigurer.java index 348281fbe1..673c149670 100644 --- a/spring-context/src/main/java/org/springframework/cache/annotation/CachingConfigurer.java +++ b/spring-context/src/main/java/org/springframework/cache/annotation/CachingConfigurer.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2014 the original author or authors. + * Copyright 2002-2018 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. @@ -34,6 +34,7 @@ import org.springframework.lang.Nullable; * for detailed instructions. * * @author Chris Beams + * @author Stephane Nicoll * @since 3.1 * @see EnableCaching * @see CachingConfigurerSupport @@ -69,8 +70,8 @@ public interface CachingConfigurer { * Return the {@link CacheResolver} bean to use to resolve regular caches for * annotation-driven cache management. This is an alternative and more powerful * option of specifying the {@link CacheManager} to use. - *

If both a {@link #cacheManager()} and {@link #cacheResolver()} are set, the - * cache manager is ignored. + *

If both a {@link #cacheManager()} and {@code #cacheResolver()} are set, + * the cache manager is ignored. *

Implementations must explicitly declare * {@link org.springframework.context.annotation.Bean @Bean}, e.g. *

diff --git a/spring-context/src/main/java/org/springframework/context/support/PropertySourcesPlaceholderConfigurer.java b/spring-context/src/main/java/org/springframework/context/support/PropertySourcesPlaceholderConfigurer.java
index 032a0ed5ee..0a299aff3c 100644
--- a/spring-context/src/main/java/org/springframework/context/support/PropertySourcesPlaceholderConfigurer.java
+++ b/spring-context/src/main/java/org/springframework/context/support/PropertySourcesPlaceholderConfigurer.java
@@ -1,5 +1,5 @@
 /*
- * Copyright 2002-2017 the original author or authors.
+ * Copyright 2002-2018 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.
@@ -185,7 +185,7 @@ public class PropertySourcesPlaceholderConfigurer extends PlaceholderConfigurerS
 	/**
 	 * Implemented for compatibility with {@link org.springframework.beans.factory.config.PlaceholderConfigurerSupport}.
 	 * @deprecated in favor of {@link #processProperties(ConfigurableListableBeanFactory, ConfigurablePropertyResolver)}
-	 * @throws UnsupportedOperationException
+	 * @throws UnsupportedOperationException in this implementation
 	 */
 	@Override
 	@Deprecated
diff --git a/spring-jdbc/src/main/java/org/springframework/jdbc/core/ArgumentPreparedStatementSetter.java b/spring-jdbc/src/main/java/org/springframework/jdbc/core/ArgumentPreparedStatementSetter.java
index 7399eb3371..c73fa2bc9a 100644
--- a/spring-jdbc/src/main/java/org/springframework/jdbc/core/ArgumentPreparedStatementSetter.java
+++ b/spring-jdbc/src/main/java/org/springframework/jdbc/core/ArgumentPreparedStatementSetter.java
@@ -1,5 +1,5 @@
 /*
- * Copyright 2002-2017 the original author or authors.
+ * Copyright 2002-2018 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.
@@ -58,7 +58,7 @@ public class ArgumentPreparedStatementSetter implements PreparedStatementSetter,
 	 * @param ps the PreparedStatement
 	 * @param parameterPosition index of the parameter position
 	 * @param argValue the value to set
-	 * @throws SQLException
+	 * @throws SQLException if thrown by PreparedStatement methods
 	 */
 	protected void doSetValue(PreparedStatement ps, int parameterPosition, Object argValue) throws SQLException {
 		if (argValue instanceof SqlParameterValue) {
diff --git a/spring-jdbc/src/main/java/org/springframework/jdbc/core/ArgumentTypePreparedStatementSetter.java b/spring-jdbc/src/main/java/org/springframework/jdbc/core/ArgumentTypePreparedStatementSetter.java
index 25fa5e3f46..a4a726a4c2 100644
--- a/spring-jdbc/src/main/java/org/springframework/jdbc/core/ArgumentTypePreparedStatementSetter.java
+++ b/spring-jdbc/src/main/java/org/springframework/jdbc/core/ArgumentTypePreparedStatementSetter.java
@@ -1,5 +1,5 @@
 /*
- * Copyright 2002-2017 the original author or authors.
+ * Copyright 2002-2018 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.
@@ -92,7 +92,7 @@ public class ArgumentTypePreparedStatementSetter implements PreparedStatementSet
 	 * @param parameterPosition index of the parameter position
 	 * @param argType the argument type
 	 * @param argValue the argument value
-	 * @throws SQLException
+	 * @throws SQLException if thrown by PreparedStatement methods
 	 */
 	protected void doSetValue(PreparedStatement ps, int parameterPosition, int argType, Object argValue)
 			throws SQLException {
diff --git a/spring-jdbc/src/main/java/org/springframework/jdbc/core/namedparam/SqlParameterSourceUtils.java b/spring-jdbc/src/main/java/org/springframework/jdbc/core/namedparam/SqlParameterSourceUtils.java
index af7c6dca94..0ff5d6f047 100644
--- a/spring-jdbc/src/main/java/org/springframework/jdbc/core/namedparam/SqlParameterSourceUtils.java
+++ b/spring-jdbc/src/main/java/org/springframework/jdbc/core/namedparam/SqlParameterSourceUtils.java
@@ -42,7 +42,7 @@ public abstract class SqlParameterSourceUtils {
 	 * @return an array of {@link SqlParameterSource}
 	 * @see MapSqlParameterSource
 	 * @see BeanPropertySqlParameterSource
-	 * @see NamedParameterJdbcTemplate#batchUpdate(String, SqlParameterSource[]))
+	 * @see NamedParameterJdbcTemplate#batchUpdate(String, SqlParameterSource[])
 	 */
 	@SuppressWarnings("unchecked")
 	public static SqlParameterSource[] createBatch(Object... candidates) {
@@ -58,7 +58,7 @@ public abstract class SqlParameterSourceUtils {
 	 * @since 5.0.2
 	 * @see MapSqlParameterSource
 	 * @see BeanPropertySqlParameterSource
-	 * @see NamedParameterJdbcTemplate#batchUpdate(String, SqlParameterSource[]))
+	 * @see NamedParameterJdbcTemplate#batchUpdate(String, SqlParameterSource[])
 	 */
 	@SuppressWarnings("unchecked")
 	public static SqlParameterSource[] createBatch(Collection candidates) {
diff --git a/spring-orm/src/main/java/org/springframework/orm/hibernate5/SessionFactoryUtils.java b/spring-orm/src/main/java/org/springframework/orm/hibernate5/SessionFactoryUtils.java
index e42e6d6440..a9d913e967 100644
--- a/spring-orm/src/main/java/org/springframework/orm/hibernate5/SessionFactoryUtils.java
+++ b/spring-orm/src/main/java/org/springframework/orm/hibernate5/SessionFactoryUtils.java
@@ -1,5 +1,5 @@
 /*
- * Copyright 2002-2017 the original author or authors.
+ * Copyright 2002-2018 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.
@@ -133,7 +133,7 @@ public abstract class SessionFactoryUtils {
 	 * {@link PersistenceException} wrappers accordingly.
 	 * @param session the Hibernate Session to flush
 	 * @param synch whether this flush is triggered by transaction synchronization
-	 * @throws DataAccessException
+	 * @throws DataAccessException in case of flush failures
 	 * @since 4.3.2
 	 */
 	static void flush(Session session, boolean synch) throws DataAccessException {
diff --git a/spring-test/src/main/java/org/springframework/test/annotation/IfProfileValue.java b/spring-test/src/main/java/org/springframework/test/annotation/IfProfileValue.java
index 0e8716e088..f286f1c2b0 100644
--- a/spring-test/src/main/java/org/springframework/test/annotation/IfProfileValue.java
+++ b/spring-test/src/main/java/org/springframework/test/annotation/IfProfileValue.java
@@ -1,5 +1,5 @@
 /*
- * Copyright 2002-2016 the original author or authors.
+ * Copyright 2002-2018 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.
@@ -109,7 +109,7 @@ public @interface IfProfileValue {
 	/**
 	 * A single, permissible {@code value} of the profile value
 	 * for the given {@link #name}.
-	 * 

Note: Assigning values to both {@link #value} and {@link #values} + *

Note: Assigning values to both {@code #value} and {@link #values} * will lead to a configuration conflict. */ String value() default ""; @@ -117,7 +117,7 @@ public @interface IfProfileValue { /** * A list of all permissible {@code values} of the profile value * for the given {@link #name}. - *

Note: Assigning values to both {@link #value} and {@link #values} + *

Note: Assigning values to both {@link #value} and {@code #values} * will lead to a configuration conflict. */ String[] values() default {}; diff --git a/spring-test/src/main/java/org/springframework/test/context/cache/ContextCache.java b/spring-test/src/main/java/org/springframework/test/context/cache/ContextCache.java index ea7f5605f8..c8fb2d5489 100644 --- a/spring-test/src/main/java/org/springframework/test/context/cache/ContextCache.java +++ b/spring-test/src/main/java/org/springframework/test/context/cache/ContextCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2016 the original author or authors. + * Copyright 2002-2018 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,7 +54,7 @@ public interface ContextCache { String CONTEXT_CACHE_LOGGING_CATEGORY = "org.springframework.test.context.cache"; /** - * The default maximum size of the context cache: {@value #DEFAULT_MAX_CONTEXT_CACHE_SIZE}. + * The default maximum size of the context cache: {@value}. * @since 4.3 * @see #MAX_CONTEXT_CACHE_SIZE_PROPERTY_NAME */ diff --git a/spring-test/src/main/java/org/springframework/test/context/support/AbstractContextLoader.java b/spring-test/src/main/java/org/springframework/test/context/support/AbstractContextLoader.java index 38ee36f4b3..071b0d6700 100644 --- a/spring-test/src/main/java/org/springframework/test/context/support/AbstractContextLoader.java +++ b/spring-test/src/main/java/org/springframework/test/context/support/AbstractContextLoader.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2017 the original author or authors. + * Copyright 2002-2018 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,7 +72,7 @@ public abstract class AbstractContextLoader implements SmartContextLoader { private static final Log logger = LogFactory.getLog(AbstractContextLoader.class); - // --- SmartContextLoader ----------------------------------------------- + // SmartContextLoader /** * For backwards compatibility with the {@link ContextLoader} SPI, the @@ -189,7 +189,7 @@ public abstract class AbstractContextLoader implements SmartContextLoader { } - // --- ContextLoader ------------------------------------------------------- + // ContextLoader /** * If the supplied {@code locations} are {@code null} or empty diff --git a/spring-test/src/main/java/org/springframework/test/context/support/AbstractDelegatingSmartContextLoader.java b/spring-test/src/main/java/org/springframework/test/context/support/AbstractDelegatingSmartContextLoader.java index a7fcd3d56f..98856256e7 100644 --- a/spring-test/src/main/java/org/springframework/test/context/support/AbstractDelegatingSmartContextLoader.java +++ b/spring-test/src/main/java/org/springframework/test/context/support/AbstractDelegatingSmartContextLoader.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2016 the original author or authors. + * Copyright 2002-2018 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. @@ -67,6 +67,7 @@ import org.springframework.util.Assert; * not result in an exception. * * @author Sam Brannen + * @author Phillip Webb * @since 3.2 * @see SmartContextLoader */ @@ -86,16 +87,13 @@ public abstract class AbstractDelegatingSmartContextLoader implements SmartConte */ protected abstract SmartContextLoader getAnnotationConfigLoader(); - // --- SmartContextLoader -------------------------------------------------- - private static String name(SmartContextLoader loader) { - return loader.getClass().getSimpleName(); - } + // SmartContextLoader private static void delegateProcessing(SmartContextLoader loader, ContextConfigurationAttributes configAttributes) { if (logger.isDebugEnabled()) { - logger.debug(String.format("Delegating to %s to process context configuration %s.", name(loader), - configAttributes)); + logger.debug(String.format("Delegating to %s to process context configuration %s.", + name(loader), configAttributes)); } loader.processContextConfiguration(configAttributes); } @@ -111,10 +109,10 @@ public abstract class AbstractDelegatingSmartContextLoader implements SmartConte private boolean supports(SmartContextLoader loader, MergedContextConfiguration mergedConfig) { if (loader == getAnnotationConfigLoader()) { - return mergedConfig.hasClasses() && !mergedConfig.hasLocations(); + return (mergedConfig.hasClasses() && !mergedConfig.hasLocations()); } else { - return mergedConfig.hasLocations() && !mergedConfig.hasClasses(); + return (mergedConfig.hasLocations() && !mergedConfig.hasClasses()); } } @@ -152,9 +150,9 @@ public abstract class AbstractDelegatingSmartContextLoader implements SmartConte @Override public void processContextConfiguration(final ContextConfigurationAttributes configAttributes) { Assert.notNull(configAttributes, "configAttributes must not be null"); - Assert.isTrue(!(configAttributes.hasLocations() && configAttributes.hasClasses()), () -> String.format( - "Cannot process locations AND classes for context configuration %s: " - + "configure one or the other, but not both.", configAttributes)); + Assert.isTrue(!(configAttributes.hasLocations() && configAttributes.hasClasses()), + () -> String.format("Cannot process locations AND classes for context configuration %s: " + + "configure one or the other, but not both.", configAttributes)); // If the original locations or classes were not empty, there's no // need to bother with default detection checks; just let the @@ -175,7 +173,7 @@ public abstract class AbstractDelegatingSmartContextLoader implements SmartConte if (xmlLoaderDetectedDefaults) { if (logger.isInfoEnabled()) { logger.info(String.format("%s detected default locations for context configuration %s.", - name(getXmlLoader()), configAttributes)); + name(getXmlLoader()), configAttributes)); } } @@ -188,9 +186,8 @@ public abstract class AbstractDelegatingSmartContextLoader implements SmartConte if (configAttributes.hasClasses()) { if (logger.isInfoEnabled()) { - logger.info(String.format( - "%s detected default configuration classes for context configuration %s.", - name(getAnnotationConfigLoader()), configAttributes)); + logger.info(String.format("%s detected default configuration classes for context configuration %s.", + name(getAnnotationConfigLoader()), configAttributes)); } } @@ -199,12 +196,12 @@ public abstract class AbstractDelegatingSmartContextLoader implements SmartConte name(getAnnotationConfigLoader()), configAttributes)); if (configAttributes.hasLocations() && configAttributes.hasClasses()) { - String message = String.format( - "Configuration error: both default locations AND default configuration classes " - + "were detected for context configuration %s; configure one or the other, but not both.", - configAttributes); - logger.error(message); - throw new IllegalStateException(message); + String msg = String.format( + "Configuration error: both default locations AND default configuration classes " + + "were detected for context configuration %s; configure one or the other, but not both.", + configAttributes); + logger.error(msg); + throw new IllegalStateException(msg); } } } @@ -235,8 +232,8 @@ public abstract class AbstractDelegatingSmartContextLoader implements SmartConte List candidates = Arrays.asList(getXmlLoader(), getAnnotationConfigLoader()); Assert.state(!(mergedConfig.hasLocations() && mergedConfig.hasClasses()), () -> String.format( - "Neither %s nor %s supports loading an ApplicationContext from %s: " - + "declare either 'locations' or 'classes' but not both.", name(getXmlLoader()), + "Neither %s nor %s supports loading an ApplicationContext from %s: " + + "declare either 'locations' or 'classes' but not both.", name(getXmlLoader()), name(getAnnotationConfigLoader()), mergedConfig)); for (SmartContextLoader loader : candidates) { @@ -256,34 +253,41 @@ public abstract class AbstractDelegatingSmartContextLoader implements SmartConte // else... throw new IllegalStateException(String.format( - "Neither %s nor %s was able to load an ApplicationContext from %s.", name(getXmlLoader()), - name(getAnnotationConfigLoader()), mergedConfig)); + "Neither %s nor %s was able to load an ApplicationContext from %s.", name(getXmlLoader()), + name(getAnnotationConfigLoader()), mergedConfig)); } - // --- ContextLoader ------------------------------------------------------- + private static String name(SmartContextLoader loader) { + return loader.getClass().getSimpleName(); + } + + + // ContextLoader /** * {@code AbstractDelegatingSmartContextLoader} does not support the * {@link ContextLoader#processLocations(Class, String...)} method. Call * {@link #processContextConfiguration(ContextConfigurationAttributes)} instead. - * @throws UnsupportedOperationException + * @throws UnsupportedOperationException in this implementation */ @Override public final String[] processLocations(Class clazz, @Nullable String... locations) { - throw new UnsupportedOperationException("DelegatingSmartContextLoaders do not support the ContextLoader SPI. " - + "Call processContextConfiguration(ContextConfigurationAttributes) instead."); + throw new UnsupportedOperationException( + "DelegatingSmartContextLoaders do not support the ContextLoader SPI. " + + "Call processContextConfiguration(ContextConfigurationAttributes) instead."); } /** * {@code AbstractDelegatingSmartContextLoader} does not support the * {@link ContextLoader#loadContext(String...) } method. Call * {@link #loadContext(MergedContextConfiguration)} instead. - * @throws UnsupportedOperationException + * @throws UnsupportedOperationException in this implementation */ @Override public final ApplicationContext loadContext(String... locations) throws Exception { - throw new UnsupportedOperationException("DelegatingSmartContextLoaders do not support the ContextLoader SPI. " - + "Call loadContext(MergedContextConfiguration) instead."); + throw new UnsupportedOperationException( + "DelegatingSmartContextLoaders do not support the ContextLoader SPI. " + + "Call loadContext(MergedContextConfiguration) instead."); } } diff --git a/spring-test/src/main/java/org/springframework/test/context/support/AnnotationConfigContextLoader.java b/spring-test/src/main/java/org/springframework/test/context/support/AnnotationConfigContextLoader.java index e64d265822..413c97b86b 100644 --- a/spring-test/src/main/java/org/springframework/test/context/support/AnnotationConfigContextLoader.java +++ b/spring-test/src/main/java/org/springframework/test/context/support/AnnotationConfigContextLoader.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2017 the original author or authors. + * Copyright 2002-2018 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. @@ -58,11 +58,10 @@ public class AnnotationConfigContextLoader extends AbstractGenericContextLoader private static final Log logger = LogFactory.getLog(AnnotationConfigContextLoader.class); - // --- SmartContextLoader ----------------------------------------------- + // SmartContextLoader /** * Process annotated classes in the supplied {@link ContextConfigurationAttributes}. - * *

If the annotated classes are {@code null} or empty and * {@link #isGenerateDefaultLocations()} returns {@code true}, this * {@code SmartContextLoader} will attempt to {@link @@ -71,7 +70,6 @@ public class AnnotationConfigContextLoader extends AbstractGenericContextLoader * {@link ContextConfigurationAttributes#setClasses(Class[]) set} in the * supplied configuration attributes. Otherwise, properties in the supplied * configuration attributes will not be modified. - * * @param configAttributes the context configuration attributes to process * @see org.springframework.test.context.SmartContextLoader#processContextConfiguration(ContextConfigurationAttributes) * @see #isGenerateDefaultLocations() @@ -84,14 +82,13 @@ public class AnnotationConfigContextLoader extends AbstractGenericContextLoader } } - // --- AnnotationConfigContextLoader --------------------------------------- + + // AnnotationConfigContextLoader /** * Detect the default configuration classes for the supplied test class. - * *

The default implementation simply delegates to * {@link AnnotationConfigContextLoaderUtils#detectDefaultConfigurationClasses(Class)}. - * * @param declaringClass the test class that declared {@code @ContextConfiguration} * @return an array of default configuration classes, potentially empty but * never {@code null} @@ -101,21 +98,21 @@ public class AnnotationConfigContextLoader extends AbstractGenericContextLoader return AnnotationConfigContextLoaderUtils.detectDefaultConfigurationClasses(declaringClass); } - // --- AbstractContextLoader ----------------------------------------------- + + // AbstractContextLoader /** * {@code AnnotationConfigContextLoader} should be used as a * {@link org.springframework.test.context.SmartContextLoader SmartContextLoader}, * not as a legacy {@link org.springframework.test.context.ContextLoader ContextLoader}. * Consequently, this method is not supported. - * + * @throws UnsupportedOperationException in this implementation * @see AbstractContextLoader#modifyLocations - * @throws UnsupportedOperationException */ @Override protected String[] modifyLocations(Class clazz, String... locations) { throw new UnsupportedOperationException( - "AnnotationConfigContextLoader does not support the modifyLocations(Class, String...) method"); + "AnnotationConfigContextLoader does not support the modifyLocations(Class, String...) method"); } /** @@ -123,14 +120,13 @@ public class AnnotationConfigContextLoader extends AbstractGenericContextLoader * {@link org.springframework.test.context.SmartContextLoader SmartContextLoader}, * not as a legacy {@link org.springframework.test.context.ContextLoader ContextLoader}. * Consequently, this method is not supported. - * + * @throws UnsupportedOperationException in this implementation * @see AbstractContextLoader#generateDefaultLocations - * @throws UnsupportedOperationException */ @Override protected String[] generateDefaultLocations(Class clazz) { throw new UnsupportedOperationException( - "AnnotationConfigContextLoader does not support the generateDefaultLocations(Class) method"); + "AnnotationConfigContextLoader does not support the generateDefaultLocations(Class) method"); } /** @@ -138,17 +134,17 @@ public class AnnotationConfigContextLoader extends AbstractGenericContextLoader * {@link org.springframework.test.context.SmartContextLoader SmartContextLoader}, * not as a legacy {@link org.springframework.test.context.ContextLoader ContextLoader}. * Consequently, this method is not supported. - * + * @throws UnsupportedOperationException in this implementation * @see AbstractContextLoader#getResourceSuffix - * @throws UnsupportedOperationException */ @Override protected String getResourceSuffix() { throw new UnsupportedOperationException( - "AnnotationConfigContextLoader does not support the getResourceSuffix() method"); + "AnnotationConfigContextLoader does not support the getResourceSuffix() method"); } - // --- AbstractGenericContextLoader ---------------------------------------- + + // AbstractGenericContextLoader /** * Ensure that the supplied {@link MergedContextConfiguration} does not @@ -159,10 +155,10 @@ public class AnnotationConfigContextLoader extends AbstractGenericContextLoader @Override protected void validateMergedContextConfiguration(MergedContextConfiguration mergedConfig) { if (mergedConfig.hasLocations()) { - String msg = String.format( - "Test class [%s] has been configured with @ContextConfiguration's 'locations' (or 'value') attribute %s, " - + "but %s does not support resource locations.", mergedConfig.getTestClass().getName(), - ObjectUtils.nullSafeToString(mergedConfig.getLocations()), getClass().getSimpleName()); + String msg = String.format("Test class [%s] has been configured with @ContextConfiguration's 'locations' " + + "(or 'value') attribute %s, but %s does not support resource locations.", + mergedConfig.getTestClass().getName(), ObjectUtils.nullSafeToString(mergedConfig.getLocations()), + getClass().getSimpleName()); logger.error(msg); throw new IllegalStateException(msg); } @@ -171,18 +167,14 @@ public class AnnotationConfigContextLoader extends AbstractGenericContextLoader /** * Register classes in the supplied {@link GenericApplicationContext context} * from the classes in the supplied {@link MergedContextConfiguration}. - * *

Each class must represent an annotated class. An * {@link AnnotatedBeanDefinitionReader} is used to register the appropriate * bean definitions. - * *

Note that this method does not call {@link #createBeanDefinitionReader} * since {@code AnnotatedBeanDefinitionReader} is not an instance of * {@link BeanDefinitionReader}. - * * @param context the context in which the annotated classes should be registered * @param mergedConfig the merged configuration from which the classes should be retrieved - * * @see AbstractGenericContextLoader#loadBeanDefinitions */ @Override @@ -199,15 +191,14 @@ public class AnnotationConfigContextLoader extends AbstractGenericContextLoader * {@link org.springframework.test.context.SmartContextLoader SmartContextLoader}, * not as a legacy {@link org.springframework.test.context.ContextLoader ContextLoader}. * Consequently, this method is not supported. - * + * @throws UnsupportedOperationException in this implementation * @see #loadBeanDefinitions * @see AbstractGenericContextLoader#createBeanDefinitionReader - * @throws UnsupportedOperationException */ @Override protected BeanDefinitionReader createBeanDefinitionReader(GenericApplicationContext context) { throw new UnsupportedOperationException( - "AnnotationConfigContextLoader does not support the createBeanDefinitionReader(GenericApplicationContext) method"); + "AnnotationConfigContextLoader does not support the createBeanDefinitionReader(GenericApplicationContext) method"); } } diff --git a/spring-test/src/main/java/org/springframework/test/context/support/GenericGroovyXmlContextLoader.java b/spring-test/src/main/java/org/springframework/test/context/support/GenericGroovyXmlContextLoader.java index 83ee2ba572..a4d68ecf00 100644 --- a/spring-test/src/main/java/org/springframework/test/context/support/GenericGroovyXmlContextLoader.java +++ b/spring-test/src/main/java/org/springframework/test/context/support/GenericGroovyXmlContextLoader.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2015 the original author or authors. + * Copyright 2002-2018 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. @@ -39,7 +39,6 @@ public class GenericGroovyXmlContextLoader extends GenericXmlContextLoader { * Load bean definitions into the supplied {@link GenericApplicationContext context} * from the locations in the supplied {@code MergedContextConfiguration} using a * {@link GroovyBeanDefinitionReader}. - * * @param context the context into which the bean definitions should be loaded * @param mergedConfig the merged context configuration * @see org.springframework.test.context.support.AbstractGenericContextLoader#loadBeanDefinitions @@ -63,12 +62,12 @@ public class GenericGroovyXmlContextLoader extends GenericXmlContextLoader { * resource types for detection of defaults. Consequently, this method * is not supported. * @see #getResourceSuffixes() - * @throws UnsupportedOperationException + * @throws UnsupportedOperationException in this implementation */ @Override protected String getResourceSuffix() { throw new UnsupportedOperationException( - "GenericGroovyXmlContextLoader does not support the getResourceSuffix() method"); + "GenericGroovyXmlContextLoader does not support the getResourceSuffix() method"); } } diff --git a/spring-test/src/main/java/org/springframework/test/context/web/AbstractGenericWebContextLoader.java b/spring-test/src/main/java/org/springframework/test/context/web/AbstractGenericWebContextLoader.java index 17600ec051..f1a35bade1 100644 --- a/spring-test/src/main/java/org/springframework/test/context/web/AbstractGenericWebContextLoader.java +++ b/spring-test/src/main/java/org/springframework/test/context/web/AbstractGenericWebContextLoader.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2016 the original author or authors. + * Copyright 2002-2018 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. @@ -63,14 +63,12 @@ public abstract class AbstractGenericWebContextLoader extends AbstractContextLoa protected static final Log logger = LogFactory.getLog(AbstractGenericWebContextLoader.class); - // --- SmartContextLoader ----------------------------------------------- + // SmartContextLoader /** * Load a Spring {@link WebApplicationContext} from the supplied * {@link MergedContextConfiguration}. - * *

Implementation details: - * *

- * * @return a new web application context * @see org.springframework.test.context.SmartContextLoader#loadContext(MergedContextConfiguration) * @see GenericWebApplicationContext */ @Override public final ConfigurableApplicationContext loadContext(MergedContextConfiguration mergedConfig) throws Exception { - Assert.isTrue(mergedConfig instanceof WebMergedContextConfiguration, () -> String.format( - "Cannot load WebApplicationContext from non-web merged context configuration %s. " - + "Consider annotating your test class with @WebAppConfiguration.", mergedConfig)); + Assert.isTrue(mergedConfig instanceof WebMergedContextConfiguration, + () -> String.format("Cannot load WebApplicationContext from non-web merged context configuration %s. " + + "Consider annotating your test class with @WebAppConfiguration.", mergedConfig)); WebMergedContextConfiguration webMergedConfig = (WebMergedContextConfiguration) mergedConfig; @@ -150,20 +147,15 @@ public abstract class AbstractGenericWebContextLoader extends AbstractContextLoa /** * Configures web resources for the supplied web application context (WAC). - * *

Implementation Details

- * *

If the supplied WAC has no parent or its parent is not a WAC, the * supplied WAC will be configured as the Root WAC (see "Root WAC * Configuration" below). - * *

Otherwise the context hierarchy of the supplied WAC will be traversed * to find the top-most WAC (i.e., the root); and the {@link ServletContext} * of the Root WAC will be set as the {@code ServletContext} for the supplied * WAC. - * *

Root WAC Configuration

- * *