validateRequest static method
Implementation
static ATHMovilException? validateRequest(ATHMovilPayment athMovilPayment) {
_exception = null;
if (!validatePurchaseDataDouble(athMovilPayment.subtotal, 0.0)) {
_exception = ATHMovilException(
exceptionMessage: ConstantsUtil.ATHM_SUBTOTAL_ERROR_MESSAGE,
exceptionTitle: ConstantsUtil.ATHM_REQUEST_EXCEPTION_TITLE);
} else if (!validatePurchaseDataDouble(athMovilPayment.tax, 0.0)) {
_exception = ATHMovilException(
exceptionMessage: ConstantsUtil.ATHM_TAX_NULL_ERROR_MESSAGE,
exceptionTitle: ConstantsUtil.ATHM_REQUEST_EXCEPTION_TITLE);
} else if (athMovilPayment.businessToken == null ||
athMovilPayment.businessToken!.trim().isEmpty) {
_exception = ATHMovilException(
exceptionMessage: ConstantsUtil.ATHM_BUSINESS_TOKEN_MESSAGE,
exceptionTitle: ConstantsUtil.ATHM_REQUEST_EXCEPTION_TITLE);
} else if (athMovilPayment.total == null ||
!validatePurchaseDataDouble(athMovilPayment.total, 1.0)) {
_exception = ATHMovilException(
exceptionMessage: ConstantsUtil.ATHM_TOTAL_ERROR_MESSAGE,
exceptionTitle: ConstantsUtil.ATHM_REQUEST_EXCEPTION_TITLE);
} else if (!validatePurchaseDataString(athMovilPayment.callbackSchema)) {
_exception = ATHMovilException(
exceptionMessage: ConstantsUtil.ATHM_SCHEMA_ERROR_MESSAGE,
exceptionTitle: ConstantsUtil.ATHM_REQUEST_EXCEPTION_TITLE);
} else if (!validatePurchaseDataString(athMovilPayment.businessToken)) {
_exception = ATHMovilException(
exceptionMessage: ConstantsUtil.ATHM_NULL_PUBLICTOKEN_ERROR_MESSAGE,
exceptionTitle: ConstantsUtil.ATHM_REQUEST_EXCEPTION_TITLE);
} else if ((athMovilPayment.metadata1 != null &&
athMovilPayment.metadata1!.isNotEmpty) &&
athMovilPayment.metadata1!.length > 40) {
_exception = ATHMovilException(
exceptionMessage: ConstantsUtil.ATHM_METADATA1_ERROR_MESSAGE,
exceptionTitle: ConstantsUtil.ATHM_REQUEST_EXCEPTION_TITLE);
} else if ((athMovilPayment.metadata2 != null &&
athMovilPayment.metadata2!.isNotEmpty) &&
athMovilPayment.metadata2!.length > 40) {
_exception = ATHMovilException(
exceptionMessage: ConstantsUtil.ATHM_METADATA2_ERROR_MESSAGE,
exceptionTitle: ConstantsUtil.ATHM_REQUEST_EXCEPTION_TITLE);
} else if ((athMovilPayment.timeout != null) &&
(athMovilPayment.timeout! > 0 && athMovilPayment.timeout! < 60 ||
athMovilPayment.timeout! > 600)) {
_exception = ATHMovilException(
exceptionMessage: ConstantsUtil.ATHM_METADATA2_ERROR_MESSAGE,
exceptionTitle: ConstantsUtil.ATHM_REQUEST_EXCEPTION_TITLE);
}
validatePurchaseItemsData(athMovilPayment);
return _exception;
}