From 75f23d3d2399a85225543373a7b59015a8b45948 Mon Sep 17 00:00:00 2001 From: Eirik Steira <eirsteir@stud.ntnu.no> Date: Mon, 30 Mar 2020 11:17:45 +0200 Subject: [PATCH] Add ImageAlbumDocument and implemented it in PdfDocument Rename get/createPdfDocument to get/createDocument --- .../java/NTNU/IDATT1002/controllers/ViewAlbum.java | 6 +++--- .../NTNU/IDATT1002/service/ImageAlbumDocument.java | 11 +++++++++++ .../NTNU/IDATT1002/service/ImageAlbumService.java | 6 +++--- src/main/java/NTNU/IDATT1002/service/PdfDocument.java | 6 +++--- .../java/NTNU/IDATT1002/utils/PdfDocumentTest.java | 9 ++------- 5 files changed, 22 insertions(+), 16 deletions(-) create mode 100644 src/main/java/NTNU/IDATT1002/service/ImageAlbumDocument.java diff --git a/src/main/java/NTNU/IDATT1002/controllers/ViewAlbum.java b/src/main/java/NTNU/IDATT1002/controllers/ViewAlbum.java index f30c50d1..d3cc427f 100644 --- a/src/main/java/NTNU/IDATT1002/controllers/ViewAlbum.java +++ b/src/main/java/NTNU/IDATT1002/controllers/ViewAlbum.java @@ -2,9 +2,9 @@ package NTNU.IDATT1002.controllers; import NTNU.IDATT1002.App; import NTNU.IDATT1002.models.ImageAlbum; +import NTNU.IDATT1002.service.ImageAlbumDocument; import NTNU.IDATT1002.service.ImageAlbumService; import NTNU.IDATT1002.service.TagService; -import NTNU.IDATT1002.service.PdfDocument; import javafx.application.HostServices; import javafx.event.ActionEvent; import javafx.fxml.FXML; @@ -374,9 +374,9 @@ public class ViewAlbum implements Initializable { */ public void createPdf(ActionEvent actionEvent) { Long currentAlbumId = App.ex.getChosenAlbumId(); - PdfDocument document = imageAlbumService.getPdfDocument(currentAlbumId); + ImageAlbumDocument document = imageAlbumService.getDocument(currentAlbumId); - displayPdfLink(document.getPdfDocument()); + displayPdfLink(document.getDocument()); } /** diff --git a/src/main/java/NTNU/IDATT1002/service/ImageAlbumDocument.java b/src/main/java/NTNU/IDATT1002/service/ImageAlbumDocument.java new file mode 100644 index 00000000..ac17958f --- /dev/null +++ b/src/main/java/NTNU/IDATT1002/service/ImageAlbumDocument.java @@ -0,0 +1,11 @@ +package NTNU.IDATT1002.service; + +import java.io.File; + +public interface ImageAlbumDocument { + + File getDocument(); + + void createDocument(); + +} diff --git a/src/main/java/NTNU/IDATT1002/service/ImageAlbumService.java b/src/main/java/NTNU/IDATT1002/service/ImageAlbumService.java index dfe03323..d7b8df5a 100644 --- a/src/main/java/NTNU/IDATT1002/service/ImageAlbumService.java +++ b/src/main/java/NTNU/IDATT1002/service/ImageAlbumService.java @@ -107,7 +107,7 @@ public class ImageAlbumService { } - public PdfDocument getPdfDocument(Long currentAlbumId) { + public ImageAlbumDocument getDocument(Long currentAlbumId) { ImageAlbum imageAlbum = getImageAlbumById(currentAlbumId) .orElseThrow(IllegalArgumentException::new); @@ -115,8 +115,8 @@ public class ImageAlbumService { System.getProperty("user.home"), imageAlbum.getTitle()); - PdfDocument document = new PdfDocument(imageAlbum, destinationFile); - document.createPdfDocument(); + ImageAlbumDocument document = new PdfDocument(imageAlbum, destinationFile); + document.createDocument(); logger.info("[x] Saved PDF document to " + destinationFile); return document; diff --git a/src/main/java/NTNU/IDATT1002/service/PdfDocument.java b/src/main/java/NTNU/IDATT1002/service/PdfDocument.java index efb1e398..390aed86 100644 --- a/src/main/java/NTNU/IDATT1002/service/PdfDocument.java +++ b/src/main/java/NTNU/IDATT1002/service/PdfDocument.java @@ -18,7 +18,7 @@ import java.util.Date; * @author Eirik Steira * @version 1.0 22.03.20 */ -public class PdfDocument { +public class PdfDocument implements ImageAlbumDocument { /** * Height ratio satisfying a 16:9 ratio. @@ -48,14 +48,14 @@ public class PdfDocument { this.document = new Document(); } - public File getPdfDocument() { + public File getDocument() { return new File(DESTINATION_FILE); } /** * Create a new pdf document. */ - public void createPdfDocument() { + public void createDocument() { try { generatePdfDocument(); } catch (IOException | DocumentException e) { diff --git a/src/test/java/NTNU/IDATT1002/utils/PdfDocumentTest.java b/src/test/java/NTNU/IDATT1002/utils/PdfDocumentTest.java index f932493e..47fffd80 100644 --- a/src/test/java/NTNU/IDATT1002/utils/PdfDocumentTest.java +++ b/src/test/java/NTNU/IDATT1002/utils/PdfDocumentTest.java @@ -20,13 +20,8 @@ import static org.junit.jupiter.api.Assertions.assertNotNull; class PdfDocumentTest { private static final String PATH_TO_PDF = "src/test/java/tmp/generatedImageAlbumPdf.pdf"; - - private static final String PATH_SEPARATOR = File.pathSeparator; - private ImageAlbum imageAlbum; - private Image image; - private User user; /** @@ -67,9 +62,9 @@ class PdfDocumentTest { * Test that a pdf document is successfully created. */ @Test - void testCreatePdfDocumentCreatesPdfDocument() { + void testCreateDocumentCreatesPdfDocument() { PdfDocument document = new PdfDocument(imageAlbum, PATH_TO_PDF); - document.createPdfDocument(); + document.createDocument(); assertNotNull(document); } -- GitLab