RepoDownloadModule
Sub-módulo para descarga de documentos del repositorio de Shori.
Proporciona múltiples estrategias de descarga: por ID, por versión específica
y en formato exportado. Se accede a través de client.repo().download().
Los archivos se descargan en una subcarpeta única dentro de la ruta configurada
con ShoriClient.builder().downloadPath("/ruta"). Si no se configura,
se usa la carpeta temporal del sistema operativo.
Descargar por ID
File doc = client.repo().download().byDocument(
GetDocumentByIdRequest.builder()
.documentId("doc-uuid")
.fileName("contrato.pdf")
.build()
);
Descargar versión específica
File doc = client.repo().download().byDocumentAndVersion(
DownloadByDocumentAndVersionRequest.builder()
.documentId("doc-uuid")
.versionId("version-uuid")
.fileName("contrato-v2.pdf")
.build()
);
Descargar versión exportada (PDF)
File pdf = client.repo().download().exportDocument(
GetDocumentByIdRequest.builder()
.documentId("doc-uuid")
.fileName("documento-exportado.pdf")
.build()
);
Metodos
byDocument(GetDocumentByIdRequest request)
Descarga un documento del repositorio al disco local por su UUID.
El archivo se guarda en una subcarpeta única dentro de la ruta de descarga configurada, evitando conflictos entre descargas concurrentes.
File documento = client.repo().download().byDocument(
GetDocumentByIdRequest.builder()
.documentId("a1b2c3d4-e5f6-7890-abcd-ef1234567890")
.fileName("contrato-firmado.pdf")
.build()
);
byte[] contenido = Files.readAllBytes(documento.toPath());
Parametros:
request— request con el UUID del documento y el nombre de archivo a usar
Retorna: File con el documento descargado en disco
Lanza:
ResourceNotFoundException— si el documento no existe (HTTP 404)ApiException— si hay error al descargarlo
byDocumentAndVersion(DownloadByDocumentAndVersionRequest request)
Descarga un documento por su ID y número de versión específico.
File archivo = client.repo().download().byDocumentAndVersion(
DownloadByDocumentAndVersionRequest.builder()
.documentId("doc-uuid")
.versionId("version-uuid")
.fileName("contrato-v2.pdf")
.build()
);
System.out.println("Descargado en: " + archivo.getAbsolutePath());
Parametros:
request— datos de la descarga:documentId,versionIdyfileName
Retorna: File con el archivo descargado listo para usar
Lanza:
ResourceNotFoundException— si el documento o la versión no existen (HTTP 404)ApiException— si hay error en el servidor
exportDocument(GetDocumentByIdRequest request)
Descarga la versión exportada de un documento (generalmente PDF generado por Shori).
El endpoint de exportación genera una versión del documento en formato descargable a partir del ID del documento original.
File exportado = client.repo().download().exportDocument(
GetDocumentByIdRequest.builder()
.documentId("doc-uuid")
.fileName("documento-exportado.pdf")
.build()
);
System.out.println("Exportado en: " + exportado.getAbsolutePath());
Parametros:
request— datos de la descarga:documentIdyfileName
Retorna: File con el documento exportado listo para usar
Lanza:
ResourceNotFoundException— si el documento no existe (HTTP 404)ApiException— si hay error en el servidor al generar la exportación