import com.aspose.pdf.cloud.sdk.Api.PdfApi;
import com.aspose.pdf.cloud.sdk.Model.UploadFileResponse;
import com.aspose.pdf.cloud.sdk.Model.FileResponse;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class PdfTasks {

    public static void convertEpubToPdf() throws IOException {
        // Initialize API with credentials
        PdfApi pdfApi = new PdfApi("secret", "ID");
        String documentName = "Sample.epub";

        // Upload the EPUB file
        FileInputStream fileInputStream = new FileInputStream(new File(documentName));
        UploadFileResponse uploadResult = pdfApi.uploadFile(documentName, fileInputStream);

        // Convert EPUB to PDF
        FileResponse response = pdfApi.getEpubInStorageToPdf(documentName);

        // Save the output PDF
        try (FileOutputStream fileOutputStream = new FileOutputStream(new File("output.pdf"))) {
            response.getFileStream().transferTo(fileOutputStream);
        }
    }

    public static void main(String[] args) {
        try {
            convertEpubToPdf();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}