diff --git a/config/pmd/pmd.xml b/config/pmd/pmd.xml
index 6c558c0..7537e1c 100644
--- a/config/pmd/pmd.xml
+++ b/config/pmd/pmd.xml
@@ -14,6 +14,7 @@
+
diff --git a/ocr-service-v1/ocr-service-api/build.gradle.kts b/ocr-service-v1/ocr-service-api/build.gradle.kts
index 72a5322..9ac0636 100644
--- a/ocr-service-v1/ocr-service-api/build.gradle.kts
+++ b/ocr-service-v1/ocr-service-api/build.gradle.kts
@@ -1,7 +1,7 @@
plugins {
`maven-publish`
id("com.iqser.red.service.java-conventions")
- id("io.freefair.lombok") version "8.2.2"
+ id("io.freefair.lombok") version "8.4"
}
publishing {
diff --git a/ocr-service-v1/ocr-service-processor/build.gradle.kts b/ocr-service-v1/ocr-service-processor/build.gradle.kts
index 580cc9b..a25a609 100644
--- a/ocr-service-v1/ocr-service-processor/build.gradle.kts
+++ b/ocr-service-v1/ocr-service-processor/build.gradle.kts
@@ -1,6 +1,6 @@
plugins {
id("com.iqser.red.service.java-conventions")
- id("io.freefair.lombok") version "8.2.2"
+ id("io.freefair.lombok") version "8.4"
}
configurations {
diff --git a/ocr-service-v1/ocr-service-processor/src/main/java/com/knecon/fforesight/service/ocr/processor/service/fonts/Type0FontMetricsFactory.java b/ocr-service-v1/ocr-service-processor/src/main/java/com/knecon/fforesight/service/ocr/processor/service/fonts/Type0FontMetricsFactory.java
index 9e787ad..059daed 100644
--- a/ocr-service-v1/ocr-service-processor/src/main/java/com/knecon/fforesight/service/ocr/processor/service/fonts/Type0FontMetricsFactory.java
+++ b/ocr-service-v1/ocr-service-processor/src/main/java/com/knecon/fforesight/service/ocr/processor/service/fonts/Type0FontMetricsFactory.java
@@ -44,6 +44,8 @@ public class Type0FontMetricsFactory implements FontMetricsFactory {
@SneakyThrows
+ @SuppressWarnings("PMD.CloseResource")
+ // Todo i think this is not ok to never close the font...
private static Type0FontMetricsFactory createFromResource(String resourcePath, PDDocument document) {
try (var in = Thread.currentThread().getContextClassLoader().getResourceAsStream(resourcePath); var buffer = new RandomAccessReadBuffer(in)) {
diff --git a/ocr-service-v1/ocr-service-processor/src/main/java/com/knecon/fforesight/service/ocr/processor/service/threads/ImageProcessingThread.java b/ocr-service-v1/ocr-service-processor/src/main/java/com/knecon/fforesight/service/ocr/processor/service/threads/ImageProcessingThread.java
index bc47241..8825b45 100644
--- a/ocr-service-v1/ocr-service-processor/src/main/java/com/knecon/fforesight/service/ocr/processor/service/threads/ImageProcessingThread.java
+++ b/ocr-service-v1/ocr-service-processor/src/main/java/com/knecon/fforesight/service/ocr/processor/service/threads/ImageProcessingThread.java
@@ -107,6 +107,7 @@ public class ImageProcessingThread extends Thread {
}
+ @SuppressWarnings("PMD.CompareObjectsWithEquals")
private OcrImage processRenderedPageImageFile(RenderedPageImageFile renderedPageImageFile) {
Pix pix = processPix(renderedPageImageFile.asPix(), settings.getDpi(), settings.getDpi());
@@ -127,7 +128,7 @@ public class ImageProcessingThread extends Thread {
return ocrImage;
}
-
+ @SuppressWarnings("PMD.CompareObjectsWithEquals")
private OcrImage processExtractedImage(ExtractedImage extractedImage) {
float imageDPI = Math.abs(extractedImage.image().getWidth() / (extractedImage.ctm().getScalingFactorX() / 72));
diff --git a/ocr-service-v1/ocr-service-processor/src/main/java/com/knecon/fforesight/service/ocr/processor/utils/PdfDraw.java b/ocr-service-v1/ocr-service-processor/src/main/java/com/knecon/fforesight/service/ocr/processor/utils/PdfDraw.java
index d33919e..017781e 100644
--- a/ocr-service-v1/ocr-service-processor/src/main/java/com/knecon/fforesight/service/ocr/processor/utils/PdfDraw.java
+++ b/ocr-service-v1/ocr-service-processor/src/main/java/com/knecon/fforesight/service/ocr/processor/utils/PdfDraw.java
@@ -17,58 +17,57 @@ public class PdfDraw {
@SneakyThrows
public static void drawGrid(ElementWriter writer, Page page) {
- ElementBuilder eb = new ElementBuilder();
- double dX = 15;
- double dY = 15;
- int nRows = (int) (page.getPageHeight() / dY) + 1;
- int nCols = (int) (page.getPageWidth() / dX) + 1;
- for (int row = 0; row < nRows; ++row) {
- for (int col = 0; col < nCols; ++col) {
- Element cell = eb.createRect(col * dX, row * dY, dX, dY);
- cell.setPathStroke(true);
- cell.getGState().setLineWidth(1);
- cell.getGState().setStrokeOpacity(0.1);
- cell.getGState().setStrokeColorSpace(ColorSpace.createDeviceRGB());
- if (row == 0 && col == 0) {
- cell.getGState().setStrokeColor(new ColorPt(0, 0, 1));
- cell.setPathFill(true);
- cell.getGState().setFillOpacity(0.8);
- cell.getGState().setFillColorSpace(ColorSpace.createDeviceRGB());
- cell.getGState().setFillColor(new ColorPt(0, 0, 1));
- } else {
- cell.setPathFill(false);
- cell.getGState().setStrokeColor(new ColorPt(0.1, 0.1, 0.1));
+ try (var eb = new ElementBuilder()) {
+ double dX = 15;
+ double dY = 15;
+ int nRows = (int) (page.getPageHeight() / dY) + 1;
+ int nCols = (int) (page.getPageWidth() / dX) + 1;
+ for (int row = 0; row < nRows; ++row) {
+ for (int col = 0; col < nCols; ++col) {
+ Element cell = eb.createRect(col * dX, row * dY, dX, dY);
+ cell.setPathStroke(true);
+ cell.getGState().setLineWidth(1);
+ cell.getGState().setStrokeOpacity(0.1);
+ cell.getGState().setStrokeColorSpace(ColorSpace.createDeviceRGB());
+ if (row == 0 && col == 0) {
+ cell.getGState().setStrokeColor(new ColorPt(0, 0, 1));
+ cell.setPathFill(true);
+ cell.getGState().setFillOpacity(0.8);
+ cell.getGState().setFillColorSpace(ColorSpace.createDeviceRGB());
+ cell.getGState().setFillColor(new ColorPt(0, 0, 1));
+ } else {
+ cell.setPathFill(false);
+ cell.getGState().setStrokeColor(new ColorPt(0.1, 0.1, 0.1));
+ }
+ writer.writePlacedElement(cell);
}
- writer.writePlacedElement(cell);
}
}
- eb.destroy();
}
@SneakyThrows
public static void drawRectCollection(ElementWriter writer, RectCollection rectCollection) {
- ColorPt colorPt = new ColorPt(1, 0, 0);
- ElementBuilder eb = new ElementBuilder();
- for (int i = 0; i < rectCollection.getNumRects(); ++i) {
- Rect r = rectCollection.getRectAt(i);
- Element rect = eb.createRect(r.getX1(), r.getY1(), r.getWidth(), r.getHeight());
+ try (var colorPt = new ColorPt(1, 0, 0); var eb = new ElementBuilder()) {
+ for (int i = 0; i < rectCollection.getNumRects(); ++i) {
+ try(var r = rectCollection.getRectAt(i)) {
+ Element rect = eb.createRect(r.getX1(), r.getY1(), r.getWidth(), r.getHeight());
- rect.setPathStroke(true);
- rect.getGState().setLineWidth(5);
- rect.getGState().setStrokeColorSpace(ColorSpace.createDeviceRGB());
- rect.getGState().setStrokeColor(colorPt);
+ rect.setPathStroke(true);
+ rect.getGState().setLineWidth(5);
+ rect.getGState().setStrokeColorSpace(ColorSpace.createDeviceRGB());
+ rect.getGState().setStrokeColor(colorPt);
- rect.setPathFill(true);
- rect.getGState().setFillColorSpace(ColorSpace.createDeviceRGB());
- rect.getGState().setFillColor(colorPt);
- rect.getGState().setFillOpacity(0.5);
+ rect.setPathFill(true);
+ rect.getGState().setFillColorSpace(ColorSpace.createDeviceRGB());
+ rect.getGState().setFillColor(colorPt);
+ rect.getGState().setFillOpacity(0.5);
- writer.writePlacedElement(rect);
+ writer.writePlacedElement(rect);
+ }
+ }
}
- colorPt.destroy();
- eb.destroy();
}
}
diff --git a/ocr-service-v1/ocr-service-server/build.gradle.kts b/ocr-service-v1/ocr-service-server/build.gradle.kts
index 942051d..3b15526 100644
--- a/ocr-service-v1/ocr-service-server/build.gradle.kts
+++ b/ocr-service-v1/ocr-service-server/build.gradle.kts
@@ -6,7 +6,7 @@ plugins {
id("org.springframework.boot") version "3.1.5"
id("io.spring.dependency-management") version "1.1.3"
id("org.sonarqube") version "4.3.0.3225"
- id("io.freefair.lombok") version "8.2.2"
+ id("io.freefair.lombok") version "8.4"
}
configurations {