This commit also removes nullability from two common spots: ResolvableType.getType() and TargetSource.getTarget(), both of which are never effectively null with any regular implementation. For such scenarios, a non-null empty type/target is the cleaner contract.
Issue: SPR-15540
@ -103,8 +103,8 @@ public class ReflectiveMethodInvocation implements ProxyMethodInvocation, Clonea
@@ -103,8 +103,8 @@ public class ReflectiveMethodInvocation implements ProxyMethodInvocation, Clonea
@ -141,13 +141,11 @@ public class BeanConfigurerSupport implements BeanFactoryAware, InitializingBean
@@ -141,13 +141,11 @@ public class BeanConfigurerSupport implements BeanFactoryAware, InitializingBean
@ -168,13 +166,4 @@ public class BeanConfigurerSupport implements BeanFactoryAware, InitializingBean
@@ -168,13 +166,4 @@ public class BeanConfigurerSupport implements BeanFactoryAware, InitializingBean
@ -1583,4 +1583,15 @@ public class ResolvableType implements Serializable {
@@ -1583,4 +1583,15 @@ public class ResolvableType implements Serializable {
@ -77,7 +78,7 @@ public class DefaultToStringStyler implements ToStringStyler {
@@ -77,7 +78,7 @@ public class DefaultToStringStyler implements ToStringStyler {
@ -91,7 +92,7 @@ public class DefaultToStringStyler implements ToStringStyler {
@@ -91,7 +92,7 @@ public class DefaultToStringStyler implements ToStringStyler {
@ -289,9 +288,7 @@ public class InvocableHandlerMethod extends HandlerMethod {
@@ -289,9 +288,7 @@ public class InvocableHandlerMethod extends HandlerMethod {
@ -72,7 +72,7 @@ public class MockServerHttpRequest extends AbstractServerHttpRequest {
@@ -72,7 +72,7 @@ public class MockServerHttpRequest extends AbstractServerHttpRequest {
@ -195,7 +194,7 @@ public class SimpleNamingContextBuilder implements InitialContextFactoryBuilder
@@ -195,7 +194,7 @@ public class SimpleNamingContextBuilder implements InitialContextFactoryBuilder
@ -370,6 +370,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@@ -370,6 +370,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
}
@Override
@Nullable
publicStringgetCharacterEncoding(){
returnthis.characterEncoding;
}
@ -449,7 +450,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@@ -449,7 +450,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@ -470,6 +471,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@@ -470,6 +471,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
}
@Override
@Nullable
publicStringgetContentType(){
returnthis.contentType;
}
@ -530,7 +532,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@@ -530,7 +532,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@ -591,8 +593,10 @@ public class MockHttpServletRequest implements HttpServletRequest {
@@ -591,8 +593,10 @@ public class MockHttpServletRequest implements HttpServletRequest {
Assert.notNull(name,"Parameter name must not be null");
String[]arr=this.parameters.get(name);
return(arr!=null&&arr.length>0?arr[0]:null);
}
@ -603,7 +607,8 @@ public class MockHttpServletRequest implements HttpServletRequest {
@@ -603,7 +607,8 @@ public class MockHttpServletRequest implements HttpServletRequest {
Assert.notNull(name,"Parameter name must not be null");
returnthis.parameters.get(name);
}
@Override
@ -709,7 +714,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@@ -709,7 +714,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
Assert.notNull(name,"Attribute name must not be null");
if(value!=null){
@ -903,6 +908,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@@ -903,6 +908,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
}
@Override
@Nullable
publicAsyncContextgetAsyncContext(){
returnthis.asyncContext;
}
@ -930,17 +936,18 @@ public class MockHttpServletRequest implements HttpServletRequest {
@@ -930,17 +936,18 @@ public class MockHttpServletRequest implements HttpServletRequest {
@ -978,7 +985,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@@ -978,7 +985,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
Assert.notNull(value,"Header value must not be null");
if(header==null||replace){
@ -1045,6 +1052,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@@ -1045,6 +1052,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@ -1098,6 +1106,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@@ -1098,6 +1106,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@ -1111,7 +1120,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@@ -1111,7 +1120,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@ -1120,7 +1129,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@@ -1120,7 +1129,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@ -1197,6 +1206,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@@ -1197,6 +1206,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
}
@Override
@Nullable
publicHttpSessiongetSession(booleancreate){
checkActive();
// Reset session if invalidated.
@ -1211,6 +1221,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@@ -1211,6 +1221,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
}
@Override
@Nullable
publicHttpSessiongetSession(){
returngetSession(true);
}
@ -1284,6 +1295,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@@ -1284,6 +1295,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
@ -171,6 +170,7 @@ public class MockHttpServletResponse implements HttpServletResponse {
@@ -171,6 +170,7 @@ public class MockHttpServletResponse implements HttpServletResponse {
}
@Override
@Nullable
publicStringgetCharacterEncoding(){
returnthis.characterEncoding;
}
@ -224,7 +224,7 @@ public class MockHttpServletResponse implements HttpServletResponse {
@@ -224,7 +224,7 @@ public class MockHttpServletResponse implements HttpServletResponse {
@ -247,6 +247,7 @@ public class MockHttpServletResponse implements HttpServletResponse {
@@ -247,6 +247,7 @@ public class MockHttpServletResponse implements HttpServletResponse {
}
@Override
@Nullable
publicStringgetContentType(){
returnthis.contentType;
}
@ -302,7 +303,7 @@ public class MockHttpServletResponse implements HttpServletResponse {
@@ -302,7 +303,7 @@ public class MockHttpServletResponse implements HttpServletResponse {
@ -357,6 +358,7 @@ public class MockHttpServletResponse implements HttpServletResponse {
@@ -357,6 +358,7 @@ public class MockHttpServletResponse implements HttpServletResponse {
Assert.notNull(name,"Cookie name must not be null");
for(Cookiecookie:this.cookies){
@ -502,6 +504,7 @@ public class MockHttpServletResponse implements HttpServletResponse {
@@ -502,6 +504,7 @@ public class MockHttpServletResponse implements HttpServletResponse {
setCommitted(true);
}
@Nullable
publicStringgetRedirectedUrl(){
returngetHeader(HttpHeaders.LOCATION);
}
@ -639,17 +642,19 @@ public class MockHttpServletResponse implements HttpServletResponse {
@@ -639,17 +642,19 @@ public class MockHttpServletResponse implements HttpServletResponse {
@ -182,7 +182,7 @@ public class MockServletContext implements ServletContext {
@@ -182,7 +182,7 @@ public class MockServletContext implements ServletContext {
@ -207,7 +207,7 @@ public class MockServletContext implements ServletContext {
@@ -207,7 +207,7 @@ public class MockServletContext implements ServletContext {
@ -287,6 +287,7 @@ public class MockServletContext implements ServletContext {
@@ -287,6 +287,7 @@ public class MockServletContext implements ServletContext {
@ -313,6 +314,7 @@ public class MockServletContext implements ServletContext {
@@ -313,6 +314,7 @@ public class MockServletContext implements ServletContext {
@ -331,6 +333,7 @@ public class MockServletContext implements ServletContext {
@@ -331,6 +333,7 @@ public class MockServletContext implements ServletContext {
@ -410,6 +413,7 @@ public class MockServletContext implements ServletContext {
@@ -410,6 +413,7 @@ public class MockServletContext implements ServletContext {
@Override
@Deprecated
@Nullable
publicServletgetServlet(Stringname){
returnnull;
}
@ -443,6 +447,7 @@ public class MockServletContext implements ServletContext {
@@ -443,6 +447,7 @@ public class MockServletContext implements ServletContext {
@ -486,6 +491,7 @@ public class MockServletContext implements ServletContext {
@@ -486,6 +491,7 @@ public class MockServletContext implements ServletContext {
}
@Override
@Nullable
publicObjectgetAttribute(Stringname){
Assert.notNull(name,"Attribute name must not be null");
returnthis.attributes.get(name);
@ -497,7 +503,7 @@ public class MockServletContext implements ServletContext {
@@ -497,7 +503,7 @@ public class MockServletContext implements ServletContext {
Assert.notNull(name,"Attribute name must not be null");
if(value!=null){
this.attributes.put(name,value);
@ -523,6 +529,7 @@ public class MockServletContext implements ServletContext {
@@ -523,6 +529,7 @@ public class MockServletContext implements ServletContext {
@ -104,25 +105,29 @@ public class MockServerRequest implements ServerRequest {
@@ -104,25 +105,29 @@ public class MockServerRequest implements ServerRequest {
@ -73,8 +72,8 @@ public class MergedContextConfiguration implements Serializable {
@@ -73,8 +72,8 @@ public class MergedContextConfiguration implements Serializable {
@ -85,7 +84,7 @@ public class MergedContextConfiguration implements Serializable {
@@ -85,7 +84,7 @@ public class MergedContextConfiguration implements Serializable {
@ -102,52 +101,9 @@ public class MergedContextConfiguration implements Serializable {
@@ -102,52 +101,9 @@ public class MergedContextConfiguration implements Serializable {
@ -163,18 +119,15 @@ public class MergedContextConfiguration implements Serializable {
@@ -163,18 +119,15 @@ public class MergedContextConfiguration implements Serializable {
@ -183,8 +136,6 @@ public class MergedContextConfiguration implements Serializable {
@@ -183,8 +136,6 @@ public class MergedContextConfiguration implements Serializable {
@ -197,12 +148,13 @@ public class MergedContextConfiguration implements Serializable {
@@ -197,12 +148,13 @@ public class MergedContextConfiguration implements Serializable {
@ -212,9 +164,9 @@ public class MergedContextConfiguration implements Serializable {
@@ -212,9 +164,9 @@ public class MergedContextConfiguration implements Serializable {
@ -241,10 +193,12 @@ public class MergedContextConfiguration implements Serializable {
@@ -241,10 +193,12 @@ public class MergedContextConfiguration implements Serializable {
@ -276,10 +230,11 @@ public class MergedContextConfiguration implements Serializable {
@@ -276,10 +230,11 @@ public class MergedContextConfiguration implements Serializable {
@ -361,7 +316,7 @@ public class MergedContextConfiguration implements Serializable {
@@ -361,7 +316,7 @@ public class MergedContextConfiguration implements Serializable {
@ -455,7 +410,7 @@ public class MergedContextConfiguration implements Serializable {
@@ -455,7 +410,7 @@ public class MergedContextConfiguration implements Serializable {
*{@link#getContextLoader()ContextLoaders}.
*/
@Override
publicbooleanequals(Objectother){
publicbooleanequals(@NullableObjectother){
if(this==other){
returntrue;
}
@ -495,7 +450,7 @@ public class MergedContextConfiguration implements Serializable {
@@ -495,7 +450,7 @@ public class MergedContextConfiguration implements Serializable {
@ -517,7 +472,7 @@ public class MergedContextConfiguration implements Serializable {
@@ -517,7 +472,7 @@ public class MergedContextConfiguration implements Serializable {
@ -543,9 +498,51 @@ public class MergedContextConfiguration implements Serializable {
@@ -543,9 +498,51 @@ public class MergedContextConfiguration implements Serializable {
@ -160,12 +160,14 @@ public class DefaultContextCache implements ContextCache {
@@ -160,12 +160,14 @@ public class DefaultContextCache implements ContextCache {
@ -201,8 +202,10 @@ public abstract class AbstractTransactionalJUnit4SpringContextTests extends Abst
@@ -201,8 +202,10 @@ public abstract class AbstractTransactionalJUnit4SpringContextTests extends Abst
@ -107,7 +106,7 @@ public class SpringJUnit4ClassRunner extends BlockJUnit4ClassRunner {
@@ -107,7 +106,7 @@ public class SpringJUnit4ClassRunner extends BlockJUnit4ClassRunner {
Assert.state(withRulesMethod!=null,"SpringJUnit4ClassRunner requires JUnit 4.12 or higher.");
Assert.state(withRulesMethod!=null,"SpringJUnit4ClassRunner requires JUnit 4.12 or higher");
ReflectionUtils.makeAccessible(withRulesMethod);
}
@ -310,7 +309,9 @@ public class SpringJUnit4ClassRunner extends BlockJUnit4ClassRunner {
@@ -310,7 +309,9 @@ public class SpringJUnit4ClassRunner extends BlockJUnit4ClassRunner {
@ -300,6 +300,7 @@ public abstract class AbstractTestContextBootstrapper implements TestContextBoot
@@ -300,6 +300,7 @@ public abstract class AbstractTestContextBootstrapper implements TestContextBoot
@ -462,7 +463,6 @@ public abstract class AbstractTestContextBootstrapper implements TestContextBoot
@@ -462,7 +463,6 @@ public abstract class AbstractTestContextBootstrapper implements TestContextBoot
@ -79,7 +78,7 @@ public class AnnotationConfigContextLoader extends AbstractGenericContextLoader
@@ -79,7 +78,7 @@ public class AnnotationConfigContextLoader extends AbstractGenericContextLoader
@ -101,7 +102,7 @@ public abstract class AnnotationConfigContextLoaderUtils {
@@ -101,7 +102,7 @@ public abstract class AnnotationConfigContextLoaderUtils {
@ -74,15 +74,16 @@ public class DefaultTestContext implements TestContext {
@@ -74,15 +74,16 @@ public class DefaultTestContext implements TestContext {
Assert.notNull(testClass,"testClass must not be null");
Assert.notNull(testClass,"Test Class must not be null");
Assert.notNull(mergedContextConfiguration,"MergedContextConfiguration must not be null");
Assert.notNull(cacheAwareContextLoaderDelegate,"CacheAwareContextLoaderDelegate must not be null");
this.testClass=testClass;
@ -132,10 +133,12 @@ public class DefaultTestContext implements TestContext {
@@ -132,10 +133,12 @@ public class DefaultTestContext implements TestContext {
}
publicfinalObjectgetTestInstance(){
Assert.state(this.testInstance!=null,"No test instance");
returnthis.testInstance;
}
publicfinalMethodgetTestMethod(){
Assert.state(this.testMethod!=null,"No test method");
@ -185,8 +186,10 @@ public abstract class AbstractTransactionalTestNGSpringContextTests extends Abst
@@ -185,8 +186,10 @@ public abstract class AbstractTransactionalTestNGSpringContextTests extends Abst
@ -156,8 +157,8 @@ public class TransactionalTestExecutionListener extends AbstractTestExecutionLis
@@ -156,8 +157,8 @@ public class TransactionalTestExecutionListener extends AbstractTestExecutionLis
@ -180,7 +181,6 @@ public class TransactionalTestExecutionListener extends AbstractTestExecutionLis
@@ -180,7 +181,6 @@ public class TransactionalTestExecutionListener extends AbstractTestExecutionLis
"Failed to retrieve PlatformTransactionManager for @Transactional test for test context %s.",
testContext));
@ -212,7 +212,7 @@ public class TransactionalTestExecutionListener extends AbstractTestExecutionLis
@@ -212,7 +212,7 @@ public class TransactionalTestExecutionListener extends AbstractTestExecutionLis
@ -306,6 +306,7 @@ public class TransactionalTestExecutionListener extends AbstractTestExecutionLis
@@ -306,6 +306,7 @@ public class TransactionalTestExecutionListener extends AbstractTestExecutionLis
// Look up by type and qualifier from @Transactional
if(StringUtils.hasText(qualifier)){
@ -344,6 +345,7 @@ public class TransactionalTestExecutionListener extends AbstractTestExecutionLis
@@ -344,6 +345,7 @@ public class TransactionalTestExecutionListener extends AbstractTestExecutionLis
@ -80,7 +79,7 @@ public class AnnotationConfigWebContextLoader extends AbstractGenericWebContextL
@@ -80,7 +79,7 @@ public class AnnotationConfigWebContextLoader extends AbstractGenericWebContextL
@ -99,7 +99,7 @@ public class WebMergedContextConfiguration extends MergedContextConfiguration {
@@ -99,7 +99,7 @@ public class WebMergedContextConfiguration extends MergedContextConfiguration {
@ -135,7 +135,7 @@ public class WebMergedContextConfiguration extends MergedContextConfiguration {
@@ -135,7 +135,7 @@ public class WebMergedContextConfiguration extends MergedContextConfiguration {
@ -206,7 +206,7 @@ public class WebMergedContextConfiguration extends MergedContextConfiguration {
@@ -206,7 +206,7 @@ public class WebMergedContextConfiguration extends MergedContextConfiguration {
@ -30,7 +32,7 @@ public class EntityExchangeResult<T> extends ExchangeResult {
@@ -30,7 +32,7 @@ public class EntityExchangeResult<T> extends ExchangeResult {
@ -39,6 +41,7 @@ public class EntityExchangeResult<T> extends ExchangeResult {
@@ -39,6 +41,7 @@ public class EntityExchangeResult<T> extends ExchangeResult {
@ -154,9 +154,6 @@ public final class MockMvcWebConnection implements WebConnection {
@@ -154,9 +154,6 @@ public final class MockMvcWebConnection implements WebConnection {