Skip to content

Commit 3c0676d

Browse files
committed
Revert "Bump org.apache.pdfbox:preflight from 2.0.26 to 3.0.0"
This reverts commit d41cba1.
1 parent 91c5b7a commit 3c0676d

File tree

6 files changed

+20
-14
lines changed

6 files changed

+20
-14
lines changed

buildSrc/src/main/kotlin/common-kotlin.gradle.kts

+6
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import com.diffplug.spotless.LineEnding
12
import org.gradle.api.tasks.testing.logging.TestExceptionFormat
23
import org.gradle.api.tasks.testing.logging.TestLogEvent
34
import java.net.URI
@@ -34,6 +35,7 @@ tasks.withType<Test> {
3435
}
3536
}
3637

38+
3739
group = "no.nav.dagpenger"
3840

3941
val sourcesJar by tasks.registering(Jar::class) {
@@ -62,6 +64,9 @@ publishing {
6264
}
6365
}
6466

67+
68+
69+
6570
configure<com.diffplug.gradle.spotless.SpotlessExtension> {
6671
kotlin {
6772
ktlint()
@@ -72,3 +77,4 @@ configure<com.diffplug.gradle.spotless.SpotlessExtension> {
7277
ktlint()
7378
}
7479
}
80+

image-utils/build.gradle.kts

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ plugins {
33
}
44

55
dependencies {
6-
implementation("org.apache.pdfbox:preflight:3.0.0")
6+
implementation("org.apache.pdfbox:preflight:2.0.26")
77
implementation("org.apache.pdfbox:pdfbox:2.0.26")
88
implementation("org.apache.tika:tika-core:2.9.1")
99
implementation("org.imgscalr:imgscalr-lib:4.2")

image-utils/src/main/kotlin/no/nav/dagpenger/pdf/Pdf.kt

+6-7
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
11
package no.nav.dagpenger.pdf
22

33
import no.nav.dagpenger.io.Detect.isPdf
4-
import org.apache.pdfbox.Loader
5-
import org.apache.pdfbox.io.IOUtils
6-
import org.apache.pdfbox.io.RandomAccessReadBuffer
4+
import org.apache.pdfbox.io.MemoryUsageSetting
75
import org.apache.pdfbox.multipdf.PDFMergerUtility
86
import org.apache.pdfbox.multipdf.Splitter
97
import org.apache.pdfbox.pdmodel.PDDocument
108
import org.apache.pdfbox.rendering.PDFRenderer
119
import java.awt.image.BufferedImage
10+
import java.io.ByteArrayInputStream
1211
import java.io.ByteArrayOutputStream
1312
import java.io.Closeable
1413
import java.io.InputStream
@@ -19,7 +18,7 @@ sealed class PDFDocument constructor(val document: PDDocument) : Closeable {
1918
companion object {
2019
fun load(bytes: ByteArray): PDFDocument {
2120
return try {
22-
ValidPDFDocument(Loader.loadPDF(bytes))
21+
ValidPDFDocument(PDDocument.load(bytes))
2322
} catch (e: Exception) {
2423
InvalidPDFDocument(e)
2524
}
@@ -28,7 +27,7 @@ sealed class PDFDocument constructor(val document: PDDocument) : Closeable {
2827
fun load(inputStream: InputStream): PDFDocument {
2928
return try {
3029
inputStream.buffered().use { buffered ->
31-
ValidPDFDocument(Loader.loadPDF(RandomAccessReadBuffer(buffered)))
30+
ValidPDFDocument(PDDocument.load(buffered))
3231
}
3332
} catch (e: Exception) {
3433
InvalidPDFDocument(e)
@@ -41,8 +40,8 @@ sealed class PDFDocument constructor(val document: PDDocument) : Closeable {
4140
return ByteArrayOutputStream().use { os ->
4241
PDFMergerUtility().also {
4342
it.destinationStream = os
44-
it.addSources(pages.map { page -> RandomAccessReadBuffer(page) })
45-
it.mergeDocuments(IOUtils.createMemoryOnlyStreamCache())
43+
it.addSources(pages.map { page -> ByteArrayInputStream(page) })
44+
it.mergeDocuments(MemoryUsageSetting.setupMainMemoryOnly())
4645
}
4746
load(os.toByteArray())
4847
}

image-utils/src/main/kotlin/no/nav/dagpenger/pdf/PdfWatermarker.kt

+3-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package no.nav.dagpenger.pdf
22

33
import no.nav.dagpenger.io.Detect.isPdf
4-
import org.apache.pdfbox.Loader
54
import org.apache.pdfbox.cos.COSDictionary
65
import org.apache.pdfbox.cos.COSName
76
import org.apache.pdfbox.pdmodel.PDDocument
@@ -11,9 +10,9 @@ import org.apache.pdfbox.pdmodel.PDResources
1110
import org.apache.pdfbox.pdmodel.common.PDRectangle
1211
import org.apache.pdfbox.pdmodel.font.PDFont
1312
import org.apache.pdfbox.pdmodel.font.PDType1Font
14-
import org.apache.pdfbox.pdmodel.font.Standard14Fonts
1513
import org.apache.pdfbox.pdmodel.graphics.state.PDExtendedGraphicsState
1614
import java.awt.Color
15+
import java.io.ByteArrayInputStream
1716
import java.io.ByteArrayOutputStream
1817
import java.io.IOException
1918
import java.time.LocalDateTime
@@ -38,7 +37,7 @@ object PdfWatermarker {
3837
private const val DEFAULT_BACKGROUND_OPACITY = 1.0f
3938
private const val BORDER_WIDTH = 1f
4039
private const val HEIGHT = 22f
41-
private val FONT: PDFont = PDType1Font(Standard14Fonts.FontName.HELVETICA)
40+
private val FONT: PDFont = PDType1Font.HELVETICA
4241
private const val FONT_SIZE = 6
4342

4443
private fun removePermissions(pdfDocument: PDDocument) {
@@ -170,7 +169,7 @@ object PdfWatermarker {
170169
): ByteArray {
171170
require(bytes.isPdf()) { "Kan kun vannmerke PDF-filer." }
172171

173-
return Loader.loadPDF(bytes).use { pdfDocument ->
172+
return PDDocument.load(ByteArrayInputStream(bytes)).use { pdfDocument ->
174173
applyOn(pdfDocument, ident, includeDate)
175174
}
176175
}

image-utils/src/test/kotlin/no/nav/dagpenger/test/IOUtils.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package no.nav.dagpenger.pdf
22

3-
import org.apache.pdfbox.Loader
3+
import org.apache.pdfbox.pdmodel.PDDocument
44
import org.apache.pdfbox.text.PDFTextStripper
55
import java.io.BufferedInputStream
66
import java.io.BufferedOutputStream
@@ -18,7 +18,7 @@ internal fun String.fileAsBufferedInputStream(): BufferedInputStream = this.file
1818
internal fun String.fileAsByteArray(): ByteArray = this.fileAsInputStream().use { it.readAllBytes() }
1919

2020
internal fun ByteArray.extractText(): String {
21-
return Loader.loadPDF(this).use {
21+
return PDDocument.load(this).use {
2222
PDFTextStripper().getText(it)
2323
}
2424
}

settings.gradle.kts

+2
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ include("pdl-klient")
1010
include("image-utils")
1111
include("oauth2-klient")
1212

13+
1314
dependencyResolutionManagement {
1415
repositories {
1516
maven("https://github-package-registry-mirror.gc.nav.no/cached/maven-release")
@@ -20,3 +21,4 @@ dependencyResolutionManagement {
2021
}
2122
}
2223
}
24+

0 commit comments

Comments
 (0)