getDigest function

Future<ApacuanaSuccess<Map<String, dynamic>>> getDigest(
  1. Map<String, dynamic> signData
)

Obtiene el digest necesario para firmar un documento.

Implementation

Future<ApacuanaSuccess<Map<String, dynamic>>> getDigest(
  Map<String, dynamic> signData, // signData: {cert, signatureId?, document?}
) async {
  // Validaciones de entrada
  validateGetDigestData(signData);

  final cfg = getConfig();
  final typeStr = cfg.integrationType;
  final typeEnum = IntegrationType.fromValue(typeStr);

  if (typeEnum == IntegrationType.onboarding ||
      typeStr == INTEGRATION_TYPE['ONBOARDING']) {
    return _getDigestToSignOnBoarding(signData);
  }
  if (typeEnum == IntegrationType.onPremise ||
      typeStr == INTEGRATION_TYPE['ONPREMISE']) {
    return _getDigestToSignOnPremise(signData);
  }

  throw ApacuanaAPIError(
    'Document retrieval is not supported for an unknown integration type: $typeStr',
    statusCode: 501,
    errorCode: 'NOT_IMPLEMENTED',
  );
}