Skip to content

Commit

Permalink
chore: Upgrade pdfbox to 3.0 (#656)
Browse files Browse the repository at this point in the history
  • Loading branch information
juliette-derancourt authored Nov 27, 2023
1 parent 5d851c6 commit a220b55
Show file tree
Hide file tree
Showing 12 changed files with 17 additions and 61 deletions.
4 changes: 2 additions & 2 deletions dossierfacile-api-tenant/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
<lombok.version>1.18.30</lombok.version>
<dossierfacile.common.version>0.0.1-SNAPSHOT</dossierfacile.common.version>
<junit-jupiter.version>5.9.1</junit-jupiter.version>
<pdfbox.tools.version>2.0.27</pdfbox.tools.version>
<pdfbox.tools.version>3.0.0</pdfbox.tools.version>
<springdoc.version>1.7.0</springdoc.version>
</properties>

Expand Down Expand Up @@ -142,7 +142,7 @@
<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>pdfbox-tools</artifactId>
<version>2.0.23</version>
<version>${pdfbox.tools.version}</version>
</dependency>
<dependency>
<groupId>org.apache.pdfbox</groupId>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
package fr.dossierfacile.api.front.util;

import lombok.AllArgsConstructor;
import org.apache.pdfbox.Loader;
import org.apache.pdfbox.io.MemoryUsageSetting;
import org.apache.pdfbox.io.RandomAccessReadBuffer;
import org.apache.pdfbox.multipdf.PDFMergerUtility;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.springframework.web.multipart.MultipartFile;
Expand Down Expand Up @@ -45,15 +47,15 @@ private Optional<PDDocument> mergePdfFiles(List<MultipartFile> pdfFiles) throws
pdfMerger.setDestinationStream(outputStream);

for (MultipartFile pdfFile : pdfFiles) {
pdfMerger.addSource(pdfFile.getInputStream());
pdfMerger.addSource(new RandomAccessReadBuffer(pdfFile.getInputStream()));
}
pdfMerger.mergeDocuments(MemoryUsageSetting.setupMainMemoryOnly());
pdfMerger.mergeDocuments(MemoryUsageSetting.setupMainMemoryOnly().streamCache);

if (outputStream.size() <= 0) {
return Optional.empty();
}

try (PDDocument document = PDDocument.load(outputStream.toByteArray())) {
try (PDDocument document = Loader.loadPDF(outputStream.toByteArray())) {
return Optional.of(document);
}
}
Expand Down
16 changes: 0 additions & 16 deletions dossierfacile-bo/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@
<lombok.version>1.18.30</lombok.version>
<dossierfacile.common.version>0.0.1-SNAPSHOT</dossierfacile.common.version>
<thymeleaf.version>3.0.15.RELEASE</thymeleaf.version>
<pdfbox.tools.version>2.0.27</pdfbox.tools.version>
<commonmark.version>0.21.0</commonmark.version>
</properties>

Expand All @@ -50,11 +49,6 @@
<artifactId>nimbus-jose-jwt</artifactId>
<version>7.9</version>
</dependency>
<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>pdfbox</artifactId>
<version>${pdfbox.tools.version}</version>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-core</artifactId>
Expand Down Expand Up @@ -193,16 +187,6 @@
<artifactId>metadata-extractor</artifactId>
<version>2.18.0</version>
</dependency>
<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>pdfbox-tools</artifactId>
<version>${pdfbox.tools.version}</version>
</dependency>
<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>jbig2-imageio</artifactId>
<version>3.0.3</version>
</dependency>
<dependency>
<groupId>com.github.jai-imageio</groupId>
<artifactId>jai-imageio-core</artifactId>
Expand Down
15 changes: 0 additions & 15 deletions dossierfacile-bo/src/main/java/fr/gouv/bo/model/FileForm.java

This file was deleted.

17 changes: 0 additions & 17 deletions dossierfacile-bo/src/main/java/fr/gouv/bo/model/PdfMergeModel.java

This file was deleted.

1 change: 0 additions & 1 deletion dossierfacile-bo/src/main/resources/application.properties
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.starttls.required=true
spring.profiles.active=
google.token.storage.path=
pdfbox.encrypt.password=
spring.main.allow-bean-definition-overriding=true
time.reprocess.application.minutes=5
spring.liquibase.change-log=classpath:db/changelog/databaseChangeLog.xml
Expand Down
2 changes: 1 addition & 1 deletion dossierfacile-common-library/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@
<maven.compiler.source>${java.version}</maven.compiler.source>
<maven.compiler.target>${java.version}</maven.compiler.target>
<lombok.version>1.18.30</lombok.version>
<pdfbox.tools.version>2.0.27</pdfbox.tools.version>
<pdfbox.tools.version>3.0.0</pdfbox.tools.version>
<junit-jupiter.version>5.9.2</junit-jupiter.version>
<gson.version>2.10.1</gson.version>
<sentry.version>6.25.0</sentry.version>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.io.FilenameUtils;
import org.apache.pdfbox.Loader;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.rendering.ImageType;
import org.apache.pdfbox.rendering.PDFRenderer;
Expand Down Expand Up @@ -80,7 +81,7 @@ public StorageFile generatePreview(InputStream fileInputStream, String originalN
BufferedImage preview;
if ("pdf".equalsIgnoreCase(imageExtension)) {
long startTime = System.currentTimeMillis();
try (PDDocument document = PDDocument.load(fileInputStream)) {
try (PDDocument document = Loader.loadPDF(fileInputStream.readAllBytes())) {
PDFRenderer pdfRenderer = new PDFRenderer(document);
BufferedImage bufferedImage = pdfRenderer.renderImageWithDPI(0, 200, ImageType.RGB);
preview = resizeImage(bufferedImage);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import io.sentry.Sentry;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.io.FilenameUtils;
import org.apache.pdfbox.Loader;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.springframework.http.MediaType;
import org.springframework.web.multipart.MultipartFile;
Expand Down Expand Up @@ -35,7 +36,7 @@ public static int countNumberOfPagesOfPdfDocument(MultipartFile multipartFile) {
return 1;
}

try (PDDocument document = PDDocument.load(multipartFile.getInputStream())) {
try (PDDocument document = Loader.loadPDF(multipartFile.getInputStream().readAllBytes())) {
return document.getNumberOfPages();
} catch (IOException e) {
log.error("Problem reading number of pages of document");
Expand Down
2 changes: 1 addition & 1 deletion dossierfacile-process-file/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
<properties>
<java.version>19</java.version>
<lombok.version>1.18.30</lombok.version>
<pdfbox.tools.version>2.0.27</pdfbox.tools.version>
<pdfbox.tools.version>3.0.0</pdfbox.tools.version>
<jbig2.imageio.version>3.0.3</jbig2.imageio.version>
<jai-imageio-jpeg2000.version>1.4.0</jai-imageio-jpeg2000.version>
<jai-imageio-core.version>1.4.0</jai-imageio-core.version>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import fr.dossierfacile.common.service.interfaces.FileStorageService;
import fr.dossierfacile.process.file.barcode.qrcode.QrCode;
import fr.dossierfacile.process.file.barcode.twoddoc.TwoDDocRawContent;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.Loader;

import javax.imageio.ImageIO;
import java.io.IOException;
Expand All @@ -25,7 +25,7 @@ public abstract class InMemoryFile implements AutoCloseable {
public static InMemoryFile download(File file, FileStorageService fileStorageService) throws IOException {
try (InputStream inputStream = fileStorageService.download(file.getStorageFile())) {
if (isPdf(file)) {
return new InMemoryPdfFile(PDDocument.load(inputStream));
return new InMemoryPdfFile(Loader.loadPDF(inputStream.readAllBytes()));
}
return new InMemoryImageFile(ImageIO.read(inputStream));
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package fr.dossierfacile.process.file;

import fr.dossierfacile.process.file.barcode.InMemoryPdfFile;
import org.apache.pdfbox.Loader;
import org.apache.pdfbox.pdmodel.PDDocument;

import javax.imageio.ImageIO;
Expand All @@ -23,7 +24,7 @@ public static InMemoryPdfFile getPdfFile(String fileName) throws IOException {

public static PDDocument getPdfBoxDocument(String fileName) throws IOException {
try (InputStream inputStream = getFileAsStream(fileName)) {
return PDDocument.load(inputStream);
return Loader.loadPDF(inputStream.readAllBytes());
}
}

Expand Down

0 comments on commit a220b55

Please sign in to comment.