update error messages into private api; update generals
This commit is contained in:
parent
eb8949a5bf
commit
cefe587d73
2
pom.xml
2
pom.xml
@ -5,7 +5,7 @@
|
|||||||
<artifactId>dom-payment-instruction-request</artifactId>
|
<artifactId>dom-payment-instruction-request</artifactId>
|
||||||
<version>1.0-native-quarkus-jdk17</version>
|
<version>1.0-native-quarkus-jdk17</version>
|
||||||
<name>dom-payment-instruction-request</name>
|
<name>dom-payment-instruction-request</name>
|
||||||
<description>API Domain - Create payment single request</description>
|
<description>API Domain - Create payment multiple request</description>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<maven.compiler.release>17</maven.compiler.release>
|
<maven.compiler.release>17</maven.compiler.release>
|
||||||
|
|||||||
Binary file not shown.
@ -58,83 +58,83 @@ public class HttpRequest {
|
|||||||
private boolean logResponseBody = true;
|
private boolean logResponseBody = true;
|
||||||
|
|
||||||
public static <T> HttpRequest forApiResponse(
|
public static <T> HttpRequest forApiResponse(
|
||||||
String url,
|
String url,
|
||||||
HttpMethod method,
|
HttpMethod method,
|
||||||
Class<T> dataType
|
Class<T> dataType
|
||||||
) {
|
) {
|
||||||
return HttpRequest.builder()
|
return HttpRequest.builder()
|
||||||
.url(url)
|
.url(url)
|
||||||
.method(method)
|
.method(method)
|
||||||
.responseType(ApiResponse.class)
|
.responseType(ApiResponse.class)
|
||||||
.genericType(dataType)
|
.genericType(dataType)
|
||||||
.apiResponse(true)
|
.apiResponse(true)
|
||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static <T> HttpRequest forApiResponseList(
|
public static <T> HttpRequest forApiResponseList(
|
||||||
String url,
|
String url,
|
||||||
HttpMethod method,
|
HttpMethod method,
|
||||||
Class<T> elementType
|
Class<T> elementType
|
||||||
) {
|
) {
|
||||||
return HttpRequest.builder()
|
return HttpRequest.builder()
|
||||||
.url(url)
|
.url(url)
|
||||||
.method(method)
|
.method(method)
|
||||||
.responseType(ApiResponse.class)
|
.responseType(ApiResponse.class)
|
||||||
.complexType(TypeBuilder.listOf(elementType))
|
.complexType(TypeBuilder.listOf(elementType))
|
||||||
.apiResponse(true)
|
.apiResponse(true)
|
||||||
.listResponse(true)
|
.listResponse(true)
|
||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static <T> HttpRequest forApiPrivateResponse(
|
public static <T> HttpRequest forApiPrivateResponse(
|
||||||
String url,
|
String url,
|
||||||
String statusSuccess,
|
String statusSuccess,
|
||||||
HttpMethod method,
|
HttpMethod method,
|
||||||
Class<T> successType
|
Class<T> successType
|
||||||
) {
|
) {
|
||||||
return HttpRequest.builder()
|
return HttpRequest.builder()
|
||||||
.url(url)
|
.url(url)
|
||||||
.method(method)
|
.method(method)
|
||||||
.responseType(ApiPrivateResponse.class)
|
.responseType(ApiPrivateResponse.class)
|
||||||
.complexType(TypeBuilder.parametricType(
|
.complexType(TypeBuilder.parametricType(
|
||||||
Either.class,
|
Either.class,
|
||||||
successType,
|
successType,
|
||||||
ApiPrivateError.class
|
ApiPrivateError.class
|
||||||
))
|
))
|
||||||
.apiPrivateResponse(true)
|
.apiPrivateResponse(true)
|
||||||
.eitherResponse(true)
|
.eitherResponse(true)
|
||||||
.errorType(ApiPrivateError.class)
|
.errorType(ApiPrivateError.class)
|
||||||
.statusSuccess(statusSuccess)
|
.statusSuccess(statusSuccess)
|
||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static <T> HttpRequest forApiPrivateResponseList(
|
public static <T> HttpRequest forApiPrivateResponseList(
|
||||||
String url,
|
String url,
|
||||||
String statusSuccess,
|
String statusSuccess,
|
||||||
HttpMethod method,
|
HttpMethod method,
|
||||||
Class<T> elementType
|
Class<T> elementType
|
||||||
) {
|
) {
|
||||||
return HttpRequest.builder()
|
return HttpRequest.builder()
|
||||||
.url(url)
|
.url(url)
|
||||||
.method(method)
|
.method(method)
|
||||||
.responseType(ApiPrivateResponse.class)
|
.responseType(ApiPrivateResponse.class)
|
||||||
.complexType(TypeBuilder.parametricType(
|
.complexType(TypeBuilder.parametricType(
|
||||||
Either.class,
|
Either.class,
|
||||||
TypeBuilder.listOf(elementType),
|
TypeBuilder.listOf(elementType),
|
||||||
ApiPrivateError.class
|
ApiPrivateError.class
|
||||||
))
|
))
|
||||||
.apiPrivateResponse(true)
|
.apiPrivateResponse(true)
|
||||||
.eitherResponse(true)
|
.eitherResponse(true)
|
||||||
.listResponse(true)
|
.listResponse(true)
|
||||||
.errorType(ApiPrivateError.class)
|
.errorType(ApiPrivateError.class)
|
||||||
.statusSuccess(statusSuccess)
|
.statusSuccess(statusSuccess)
|
||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static <T> HttpRequest forDirectResponse(
|
public static <T> HttpRequest forDirectResponse(
|
||||||
String url,
|
String url,
|
||||||
HttpMethod method,
|
HttpMethod method,
|
||||||
Class<T> responseType
|
Class<T> responseType
|
||||||
) {
|
) {
|
||||||
return HttpRequest.builder()
|
return HttpRequest.builder()
|
||||||
.url(url)
|
.url(url)
|
||||||
@ -143,18 +143,32 @@ public class HttpRequest {
|
|||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static <T, U> HttpRequest forGenericResponse(
|
public static <T, R> HttpRequest forDirectResponse(
|
||||||
String url,
|
String url,
|
||||||
HttpMethod method,
|
HttpMethod method,
|
||||||
Class<T> rawType,
|
Class<T> responseType,
|
||||||
Class<U> genericType
|
Class<R> errorType
|
||||||
) {
|
) {
|
||||||
return HttpRequest.builder()
|
return HttpRequest.builder()
|
||||||
.url(url)
|
.url(url)
|
||||||
.method(method)
|
.method(method)
|
||||||
.responseType(rawType)
|
.responseType(responseType)
|
||||||
.complexType(TypeBuilder.parametricType(rawType, genericType))
|
.errorType(errorType)
|
||||||
.build();
|
.build();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <T, U> HttpRequest forGenericResponse(
|
||||||
|
String url,
|
||||||
|
HttpMethod method,
|
||||||
|
Class<T> rawType,
|
||||||
|
Class<U> genericType
|
||||||
|
) {
|
||||||
|
return HttpRequest.builder()
|
||||||
|
.url(url)
|
||||||
|
.method(method)
|
||||||
|
.responseType(rawType)
|
||||||
|
.complexType(TypeBuilder.parametricType(rawType, genericType))
|
||||||
|
.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
public HttpRequest withHeaders(Map<String, String> headers) {
|
public HttpRequest withHeaders(Map<String, String> headers) {
|
||||||
|
|||||||
@ -21,7 +21,7 @@ public class RestClientConfig {
|
|||||||
private final ObjectMapper objectMapper;
|
private final ObjectMapper objectMapper;
|
||||||
|
|
||||||
private static final String API_BASE = "api.rest-client.";
|
private static final String API_BASE = "api.rest-client.";
|
||||||
private static final String API_PAYMENT_FILE_NAME = "payment-file";
|
private static final String API_PAYMENT_INSTRUCTION_NAME = "payment-file";
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
public RestClientConfig(
|
public RestClientConfig(
|
||||||
@ -33,7 +33,7 @@ public class RestClientConfig {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public PaymentRequestConfig getPaymentRequestConfig() {
|
public PaymentRequestConfig getPaymentRequestConfig() {
|
||||||
return getConfig(API_PAYMENT_FILE_NAME, PaymentRequestConfig.class);
|
return getConfig(API_PAYMENT_INSTRUCTION_NAME, PaymentRequestConfig.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
private <T> T getConfig(
|
private <T> T getConfig(
|
||||||
|
|||||||
@ -45,7 +45,7 @@ public class PaymentInstructionRequestService implements PaymentInstructionReque
|
|||||||
);
|
);
|
||||||
} catch (ApiPrivateException e) {
|
} catch (ApiPrivateException e) {
|
||||||
log.warn("Excepcion de la api privada: {} -> {}", e.getStatusCode(), e.getMessage());
|
log.warn("Excepcion de la api privada: {} -> {}", e.getStatusCode(), e.getMessage());
|
||||||
response = messageHelper.handleException(HttpStatusCodeException.badRequest("400"));
|
response = messageHelper.handleException(HttpStatusCodeException.conflict(e.getStatusCode()));
|
||||||
} catch (HttpStatusCodeException e) {
|
} catch (HttpStatusCodeException e) {
|
||||||
log.error("Excepcion HTTP del api privada: {} - {}", e.getStatusCode(), e.getErrorCode());
|
log.error("Excepcion HTTP del api privada: {} - {}", e.getStatusCode(), e.getErrorCode());
|
||||||
response = messageHelper.handleException(e);
|
response = messageHelper.handleException(e);
|
||||||
|
|||||||
@ -35,7 +35,7 @@ public class ApiPrivateAdapter implements ApiPrivateRepository {
|
|||||||
);
|
);
|
||||||
|
|
||||||
if(response.isEmpty()) {
|
if(response.isEmpty()) {
|
||||||
throw HttpStatusCodeException.badRequest("400");
|
throw HttpStatusCodeException.conflict("PIBE-00");
|
||||||
}
|
}
|
||||||
|
|
||||||
log.info("Resultado de las transacciones obtenidas: {}", response.size());
|
log.info("Resultado de las transacciones obtenidas: {}", response.size());
|
||||||
|
|||||||
@ -22,6 +22,8 @@ public class PaymentRequestClient implements PaymentRequestUseCase {
|
|||||||
private final HttpClientUseCase httpClientUseCase;
|
private final HttpClientUseCase httpClientUseCase;
|
||||||
private final PaymentRequestConfig paymentRequestConfig;
|
private final PaymentRequestConfig paymentRequestConfig;
|
||||||
|
|
||||||
|
private static final String EMPTY_MESSAGE = "EMPTY_MESSAGE";
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
public PaymentRequestClient(
|
public PaymentRequestClient(
|
||||||
SerializationHelper serializationHelper,
|
SerializationHelper serializationHelper,
|
||||||
@ -68,12 +70,19 @@ public class PaymentRequestClient implements PaymentRequestUseCase {
|
|||||||
);
|
);
|
||||||
|
|
||||||
throw ApiPrivateException.builder()
|
throw ApiPrivateException.builder()
|
||||||
.statusCode(response.getEstatus())
|
.statusCode("PIBE-00")
|
||||||
.message("EMPTY_MESSAGE")
|
.message(EMPTY_MESSAGE)
|
||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (detail.isLeft()) {
|
if (detail.isLeft()) {
|
||||||
|
if(detail.getLeft() == null) {
|
||||||
|
throw ApiPrivateException.builder()
|
||||||
|
.statusCode("PIBE-00")
|
||||||
|
.message(EMPTY_MESSAGE)
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
|
||||||
return detail.getLeft();
|
return detail.getLeft();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -88,10 +97,10 @@ public class PaymentRequestClient implements PaymentRequestUseCase {
|
|||||||
);
|
);
|
||||||
|
|
||||||
throw ApiPrivateException.builder()
|
throw ApiPrivateException.builder()
|
||||||
.statusCode(response.getEstatus())
|
.statusCode("PIBE-01")
|
||||||
.message((error.getCodError() != null)
|
.message((error.getCodError() != null)
|
||||||
? error.getCodError() + ":" + error.getMensajeError()
|
? error.getCodError() + ":" + error.getMensajeError()
|
||||||
: "EMPTY_MESSAGE"
|
: EMPTY_MESSAGE
|
||||||
)
|
)
|
||||||
.build();
|
.build();
|
||||||
} catch (ApiPrivateException e) {
|
} catch (ApiPrivateException e) {
|
||||||
|
|||||||
@ -13,6 +13,6 @@ api:
|
|||||||
dom-payment-instruction-request:
|
dom-payment-instruction-request:
|
||||||
messages:
|
messages:
|
||||||
key: 'dom-payment-instruction-request'
|
key: 'dom-payment-instruction-request'
|
||||||
content: '[{"backendCode":"200","httpCode":200,"statusCode":"200","description":"Operacion exitosa"},{"backendCode":"R404","httpCode":404,"statusCode":"404","description":"Datos de validacion no encontrado."},{"backendCode":"503","httpCode":503,"statusCode":"503","description":"Uso interno"},{"backendCode":"422","httpCode":422,"statusCode":"422","description":"Uso interno"},{"backendCode":"500","httpCode":500,"statusCode":"500","description":"Uso interno"},{"backendCode":"100","httpCode":503,"statusCode":"503","description":"VDR13 - OSB Disponible"},{"backendCode":"OSB-382505","httpCode":503,"statusCode":"503","description":"VDR13 - OSB Disponible"},{"backendCode":"OSB-380002","httpCode":503,"statusCode":"503","description":"VDR13 - OSB Disponible"},{"backendCode":"ERROR","httpCode":400,"statusCode":"400","description":"Uso interno"},{"backendCode":"400","httpCode":400,"statusCode":"400","description":"Uso interno"},{"backendCode":"401","httpCode":401,"statusCode":"401","description":"Uso interno"},{"backendCode":"403","httpCode":403,"statusCode":"403","description":"Uso interno"},{"backendCode":"404","httpCode":404,"statusCode":"404","description":"Uso interno"},{"backendCode":"default","httpCode":409,"statusCode":"409","description":"Conflicto"},{"backendCode":"424","httpCode":424,"statusCode":"424","description":"Error de dependencia"},{"backendCode":"VDE01","httpCode":400,"statusCode":"VDE01","description":"VDE01 - Error en dato de entrada obligatorio: %s"},{"backendCode":"VDE02","httpCode":400,"statusCode":"VDE02","description":"VDE02 - Error en valor permitido para campo: %s"},{"backendCode":"VRN02","httpCode":"204","statusCode":"VRN02","description":"Cliente sin productos"}]'
|
content: '[{"backendCode":"200","httpCode":200,"statusCode":"200","description":"Operacion exitosa"},{"backendCode":"R404","httpCode":404,"statusCode":"404","description":"Datos de validacion no encontrado."},{"backendCode":"503","httpCode":503,"statusCode":"503","description":"Uso interno"},{"backendCode":"422","httpCode":422,"statusCode":"422","description":"Uso interno"},{"backendCode":"500","httpCode":500,"statusCode":"500","description":"Uso interno"},{"backendCode":"100","httpCode":503,"statusCode":"503","description":"VDR13 - OSB Disponible"},{"backendCode":"OSB-382505","httpCode":503,"statusCode":"503","description":"VDR13 - OSB Disponible"},{"backendCode":"OSB-380002","httpCode":503,"statusCode":"503","description":"VDR13 - OSB Disponible"},{"backendCode":"ERROR","httpCode":400,"statusCode":"400","description":"Uso interno"},{"backendCode":"400","httpCode":400,"statusCode":"400","description":"Uso interno"},{"backendCode":"401","httpCode":401,"statusCode":"401","description":"Uso interno"},{"backendCode":"403","httpCode":403,"statusCode":"403","description":"Uso interno"},{"backendCode":"404","httpCode":404,"statusCode":"404","description":"Uso interno"},{"backendCode":"default","httpCode":409,"statusCode":"409","description":"Conflicto"},{"backendCode":"424","httpCode":424,"statusCode":"424","description":"Error de dependencia"},{"backendCode":"PIBE-00","httpCode":409,"statusCode":"PIB-00","description":"Error Interno backend"},{"backendCode":"PIBE-01","httpCode":409,"statusCode":"PIB-01","description":"Error Interno backend"}]'
|
||||||
rest-client:
|
rest-client:
|
||||||
payment-file: '{"url":"http://10.135.193.156:8080/RequestPayment/notificationRequestPayment/v1/generate/createRequestPayMasive","timeout":{"connect":10000,"response":10000},"statusSuccess":"00"}'
|
payment-file: '{"url":"http://10.135.193.156:8080/RequestPayment/notificationRequestPayment/v1/generate/createRequestPayMasive","timeout":{"connect":10000,"response":10000},"statusSuccess":"00"}'
|
||||||
@ -72,7 +72,7 @@ data:
|
|||||||
api.read-messages.from-props: 'true'
|
api.read-messages.from-props: 'true'
|
||||||
quarkus.http.port: '8080'
|
quarkus.http.port: '8080'
|
||||||
quarkus.profile: dev
|
quarkus.profile: dev
|
||||||
api.dom-payment-instruction-request.messages.content: '[{"backendCode":"200","httpCode":200,"statusCode":"200","description":"Operacion exitosa"},{"backendCode":"R404","httpCode":404,"statusCode":"404","description":"Datos de validacion no encontrado."},{"backendCode":"503","httpCode":503,"statusCode":"503","description":"Uso interno"},{"backendCode":"422","httpCode":422,"statusCode":"422","description":"Uso interno"},{"backendCode":"500","httpCode":500,"statusCode":"500","description":"Uso interno"},{"backendCode":"100","httpCode":503,"statusCode":"503","description":"VDR13 - OSB Disponible"},{"backendCode":"OSB-382505","httpCode":503,"statusCode":"503","description":"VDR13 - OSB Disponible"},{"backendCode":"OSB-380002","httpCode":503,"statusCode":"503","description":"VDR13 - OSB Disponible"},{"backendCode":"ERROR","httpCode":400,"statusCode":"400","description":"Uso interno"},{"backendCode":"400","httpCode":400,"statusCode":"400","description":"Uso interno"},{"backendCode":"401","httpCode":401,"statusCode":"401","description":"Uso interno"},{"backendCode":"403","httpCode":403,"statusCode":"403","description":"Uso interno"},{"backendCode":"404","httpCode":404,"statusCode":"404","description":"Uso interno"},{"backendCode":"default","httpCode":409,"statusCode":"409","description":"Conflicto"},{"backendCode":"424","httpCode":424,"statusCode":"424","description":"Error de dependencia"},{"backendCode":"VDE01","httpCode":400,"statusCode":"VDE01","description":"VDE01 - Error en dato de entrada obligatorio: %s"},{"backendCode":"VDE02","httpCode":400,"statusCode":"VDE02","description":"VDE02 - Error en valor permitido para campo: %s"},{"backend_code":"204","http_code":"200","status_code":"200","description":"Cliente sin productos","status":"ok"}]'
|
api.dom-payment-instruction-request.messages.content: '[{"backendCode":"200","httpCode":200,"statusCode":"200","description":"Operacion exitosa"},{"backendCode":"R404","httpCode":404,"statusCode":"404","description":"Datos de validacion no encontrado."},{"backendCode":"503","httpCode":503,"statusCode":"503","description":"Uso interno"},{"backendCode":"422","httpCode":422,"statusCode":"422","description":"Uso interno"},{"backendCode":"500","httpCode":500,"statusCode":"500","description":"Uso interno"},{"backendCode":"100","httpCode":503,"statusCode":"503","description":"VDR13 - OSB Disponible"},{"backendCode":"OSB-382505","httpCode":503,"statusCode":"503","description":"VDR13 - OSB Disponible"},{"backendCode":"OSB-380002","httpCode":503,"statusCode":"503","description":"VDR13 - OSB Disponible"},{"backendCode":"ERROR","httpCode":400,"statusCode":"400","description":"Uso interno"},{"backendCode":"400","httpCode":400,"statusCode":"400","description":"Uso interno"},{"backendCode":"401","httpCode":401,"statusCode":"401","description":"Uso interno"},{"backendCode":"403","httpCode":403,"statusCode":"403","description":"Uso interno"},{"backendCode":"404","httpCode":404,"statusCode":"404","description":"Uso interno"},{"backendCode":"default","httpCode":409,"statusCode":"409","description":"Conflicto"},{"backendCode":"424","httpCode":424,"statusCode":"424","description":"Error de dependencia"},{"backendCode":"PIBE-00","httpCode":409,"statusCode":"PIB-00","description":"Error Interno backend"},{"backendCode":"PIBE-01","httpCode":409,"statusCode":"PIB-01","description":"Error Interno backend"}]'
|
||||||
quarkus.log.console.format: '%d{HH:mm:ss.SSS} %-5p [%t] [%X{requestId}] %c{1} - %s%e%n'
|
quarkus.log.console.format: '%d{HH:mm:ss.SSS} %-5p [%t] [%X{requestId}] %c{1} - %s%e%n'
|
||||||
quarkus.http.idle-timeout: 30s
|
quarkus.http.idle-timeout: 30s
|
||||||
quarkus.thread-pool.max-threads: '100'
|
quarkus.thread-pool.max-threads: '100'
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user