Polishing in DefaultErrorResponseBuilder

Closes gh-30566
This commit is contained in:
rstoyanchev 2023-06-14 16:35:35 +01:00
parent 48861b67dd
commit 2e43412a82
1 changed files with 44 additions and 44 deletions

View File

@ -43,15 +43,15 @@ final class DefaultErrorResponseBuilder implements ErrorResponse.Builder {
private final ProblemDetail problemDetail;
private String typeMessageCode;
private String titleMessageCode;
private String detailMessageCode;
@Nullable
private Object[] detailMessageArguments;
private String titleMessageCode;
private String typeMessageCode;
DefaultErrorResponseBuilder(Throwable ex, HttpStatusCode statusCode, String detail) {
Assert.notNull(ex, "Throwable is required");
@ -60,9 +60,9 @@ final class DefaultErrorResponseBuilder implements ErrorResponse.Builder {
this.exception = ex;
this.statusCode = statusCode;
this.problemDetail = ProblemDetail.forStatusAndDetail(statusCode, detail);
this.detailMessageCode = ErrorResponse.getDefaultDetailMessageCode(ex.getClass(), null);
this.titleMessageCode = ErrorResponse.getDefaultTitleMessageCode(ex.getClass());
this.typeMessageCode = ErrorResponse.getDefaultTypeMessageCode(ex.getClass());
this.titleMessageCode = ErrorResponse.getDefaultTitleMessageCode(ex.getClass());
this.detailMessageCode = ErrorResponse.getDefaultDetailMessageCode(ex.getClass(), null);
}
@ -80,25 +80,6 @@ final class DefaultErrorResponseBuilder implements ErrorResponse.Builder {
return this;
}
@Override
public ErrorResponse.Builder detail(String detail) {
this.problemDetail.setDetail(detail);
return this;
}
@Override
public ErrorResponse.Builder detailMessageCode(String messageCode) {
Assert.notNull(messageCode, "`detailMessageCode` is required");
this.detailMessageCode = messageCode;
return this;
}
@Override
public ErrorResponse.Builder detailMessageArguments(Object... messageArguments) {
this.detailMessageArguments = messageArguments;
return this;
}
@Override
public ErrorResponse.Builder type(URI type) {
this.problemDetail.setType(type);
@ -130,6 +111,25 @@ final class DefaultErrorResponseBuilder implements ErrorResponse.Builder {
return this;
}
@Override
public ErrorResponse.Builder detail(String detail) {
this.problemDetail.setDetail(detail);
return this;
}
@Override
public ErrorResponse.Builder detailMessageCode(String messageCode) {
Assert.notNull(messageCode, "`detailMessageCode` is required");
this.detailMessageCode = messageCode;
return this;
}
@Override
public ErrorResponse.Builder detailMessageArguments(Object... messageArguments) {
this.detailMessageArguments = messageArguments;
return this;
}
@Override
public ErrorResponse.Builder property(String name, @Nullable Object value) {
this.problemDetail.setProperty(name, value);
@ -140,8 +140,8 @@ final class DefaultErrorResponseBuilder implements ErrorResponse.Builder {
public ErrorResponse build() {
return new SimpleErrorResponse(
this.exception, this.statusCode, this.headers, this.problemDetail,
this.detailMessageCode, this.detailMessageArguments, this.titleMessageCode,
this.typeMessageCode);
this.typeMessageCode, this.titleMessageCode, this.detailMessageCode,
this.detailMessageArguments);
}
@ -158,28 +158,28 @@ final class DefaultErrorResponseBuilder implements ErrorResponse.Builder {
private final ProblemDetail problemDetail;
private final String typeMessageCode;
private final String titleMessageCode;
private final String detailMessageCode;
@Nullable
private final Object[] detailMessageArguments;
private final String titleMessageCode;
private final String typeMessageCode;
SimpleErrorResponse(
Throwable ex, HttpStatusCode statusCode, @Nullable HttpHeaders headers, ProblemDetail problemDetail,
String detailMessageCode, @Nullable Object[] detailMessageArguments, String titleMessageCode,
String typeMessageCode) {
String typeMessageCode, String titleMessageCode, String detailMessageCode,
@Nullable Object[] detailMessageArguments) {
this.exception = ex;
this.statusCode = statusCode;
this.headers = (headers != null ? headers : HttpHeaders.EMPTY);
this.problemDetail = problemDetail;
this.typeMessageCode = typeMessageCode;
this.titleMessageCode = titleMessageCode;
this.detailMessageCode = detailMessageCode;
this.detailMessageArguments = detailMessageArguments;
this.titleMessageCode = titleMessageCode;
this.typeMessageCode = typeMessageCode;
}
@Override
@ -198,13 +198,8 @@ final class DefaultErrorResponseBuilder implements ErrorResponse.Builder {
}
@Override
public String getDetailMessageCode() {
return this.detailMessageCode;
}
@Override
public Object[] getDetailMessageArguments() {
return this.detailMessageArguments;
public String getTypeMessageCode() {
return this.typeMessageCode;
}
@Override
@ -213,8 +208,13 @@ final class DefaultErrorResponseBuilder implements ErrorResponse.Builder {
}
@Override
public String getTypeMessageCode() {
return this.typeMessageCode;
public String getDetailMessageCode() {
return this.detailMessageCode;
}
@Override
public Object[] getDetailMessageArguments() {
return this.detailMessageArguments;
}
@Override