Make classes final where possible

Update classes that have private constructors so that they are also
declared final. In a few cases, inner-classes used private constructors
but were subclassed. These have now been changed to have package-private
constructors.

Issue gh-8945
This commit is contained in:
Phillip Webb
2020-07-24 19:03:31 -07:00
committed by Rob Winch
parent b5d499e2eb
commit 6894ff5d12
58 changed files with 229 additions and 226 deletions

View File

@@ -30,7 +30,7 @@ import org.springframework.web.server.handler.FilteringWebHandler;
* @author Rob Winch
* @since 5.0
*/
public class WebTestHandler {
public final class WebTestHandler {
private final MockWebHandler webHandler = new MockWebHandler();
@@ -50,7 +50,7 @@ public class WebTestHandler {
return new WebHandlerResult(webHandler.exchange);
}
public static class WebHandlerResult {
public static final class WebHandlerResult {
private final ServerWebExchange exchange;

View File

@@ -138,7 +138,7 @@ public class PersistentTokenBasedRememberMeServicesTests {
return services;
}
private class MockTokenRepository implements PersistentTokenRepository {
private final class MockTokenRepository implements PersistentTokenRepository {
private PersistentRememberMeToken storedToken;

View File

@@ -126,7 +126,7 @@ import static java.util.stream.Collectors.joining;
* @author Rossen Stoyanchev
* @since 5.0
*/
public class ResolvableMethod {
public final class ResolvableMethod {
private static final Log logger = LogFactory.getLog(ResolvableMethod.class);
@@ -253,7 +253,7 @@ public class ResolvableMethod {
/**
* Builder for {@code ResolvableMethod}.
*/
public static class Builder<T> {
public static final class Builder<T> {
private final Class<?> objectClass;
@@ -386,7 +386,7 @@ public class ResolvableMethod {
* <p>
* {@code build().method()}
*/
public final Method resolveMethod() {
public Method resolveMethod() {
return build().method();
}
@@ -404,7 +404,7 @@ public class ResolvableMethod {
* <p>
* {@code build().returnType()}
*/
public final MethodParameter resolveReturnType() {
public MethodParameter resolveReturnType() {
return build().returnType();
}
@@ -452,7 +452,7 @@ public class ResolvableMethod {
/**
* Predicate with a descriptive label.
*/
private static class LabeledPredicate<T> implements Predicate<T> {
private static final class LabeledPredicate<T> implements Predicate<T> {
private final String label;
@@ -493,7 +493,7 @@ public class ResolvableMethod {
/**
* Resolver for method arguments.
*/
public class ArgResolver {
public final class ArgResolver {
private final List<Predicate<MethodParameter>> filters = new ArrayList<>(4);
@@ -564,7 +564,7 @@ public class ResolvableMethod {
/**
* Resolve the argument.
*/
public final MethodParameter arg() {
public MethodParameter arg() {
List<MethodParameter> matches = applyFilters();
Assert.state(!matches.isEmpty(), () -> "No matching arg in method\n" + formatMethod());
Assert.state(matches.size() == 1,