package com.escolapios.fctmongo.util; // 👈 Paquete actualizado a tu estructura de Mongo

import java.nio.file.*;

public class PdfConverter {

    public static Path convertirDocxAPdf(Path docxPath) {
        try {
            // Lanza el proceso headless de LibreOffice para transformar el Word resultante en PDF
            ProcessBuilder pb = new ProcessBuilder(
                    "C:\\Program Files\\LibreOffice\\program\\soffice.exe",
                    "--headless",
                    "--convert-to",
                    "pdf",
                    "--outdir",
                    docxPath.getParent().toString(),
                    docxPath.toString()
            );            
            pb.redirectErrorStream(true);

            Process process = pb.start();
            int exitCode = process.waitFor();

            if (exitCode != 0) {
                throw new RuntimeException("Error convirtiendo a PDF de LibreOffice. Código de salida: " + exitCode);
            }

            // Retorna la ruta física del nuevo archivo .pdf generado en disco
            return Paths.get(
                    docxPath.toString().replace(".docx", ".pdf")
            );

        } catch (Exception e) {
            throw new RuntimeException("Fallo crítico en el hilo de ejecución del PdfConverter", e);
        }
    }
}
