65 lines
1.6 KiB
Java
65 lines
1.6 KiB
Java
package com.banesco.domain.model;
|
|
|
|
public class BaseResponse<T> {
|
|
|
|
private StatusResponse statusResponse;
|
|
private T dataResponse;
|
|
|
|
public BaseResponse() {
|
|
}
|
|
|
|
public BaseResponse(StatusResponse statusResponse, T dataResponse) {
|
|
this.statusResponse = statusResponse;
|
|
this.dataResponse = dataResponse;
|
|
}
|
|
|
|
private BaseResponse(Builder<T> builder) {
|
|
this.statusResponse = builder.statusResponse;
|
|
this.dataResponse = builder.dataResponse;
|
|
}
|
|
|
|
public StatusResponse getstatusResponse() {
|
|
return statusResponse;
|
|
}
|
|
|
|
public T getdataResponse() {
|
|
return dataResponse;
|
|
}
|
|
|
|
public static class Builder<T> {
|
|
|
|
private StatusResponse statusResponse;
|
|
private T dataResponse;
|
|
|
|
public Builder() {
|
|
}
|
|
|
|
public Builder<T> statusResponse(StatusResponse statusResponse) {
|
|
this.statusResponse = statusResponse;
|
|
return this;
|
|
}
|
|
|
|
public Builder<T> dataResponse(T dataResponse) {
|
|
this.dataResponse = dataResponse;
|
|
return this;
|
|
}
|
|
|
|
public BaseResponse<T> build() {
|
|
// Validaciones de ser necesario
|
|
// if (attr == null || attr.isEmpty()) {
|
|
// throw new IllegalStateException("El atributo1 no puede estar vacío");
|
|
// }
|
|
return new BaseResponse<>(this);
|
|
}
|
|
}
|
|
|
|
public static <T> Builder<T> builder() {
|
|
return new Builder<>();
|
|
}
|
|
|
|
@Override
|
|
public String toString() {
|
|
return "BaseResponse [statusResponse=" + statusResponse + ", dataResponse=" + dataResponse + "]";
|
|
}
|
|
}
|