From 81de29f6d90cc68a0cbcb0d6040be2e9abb553cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lars=20Brodin=20=C3=98stby?= <larsbost@stud.ntnu.no> Date: Fri, 17 Apr 2020 11:52:06 +0200 Subject: [PATCH 1/6] Auto stash before rebase of "origin/dev" --- .../java/NTNU/IDATT1002/models/Metadata.java | 43 +++++++++++++------ .../NTNU/IDATT1002/service/ImageService.java | 4 ++ .../IDATT1002/utils/MetaDataExtractor.java | 21 +++++++++ src/main/resources/META-INF/persistence.xml | 1 + 4 files changed, 57 insertions(+), 12 deletions(-) diff --git a/src/main/java/NTNU/IDATT1002/models/Metadata.java b/src/main/java/NTNU/IDATT1002/models/Metadata.java index e8877120..7d01604d 100644 --- a/src/main/java/NTNU/IDATT1002/models/Metadata.java +++ b/src/main/java/NTNU/IDATT1002/models/Metadata.java @@ -1,6 +1,7 @@ package NTNU.IDATT1002.models; +import java.util.ArrayList; import javax.persistence.*; /** @@ -58,6 +59,10 @@ public class Metadata { @Column(name = "filedimension") private String fileDimension; + + @Column(name = "allMetadata") + private String allMetadataList; + public Metadata() { } @@ -94,6 +99,10 @@ public class Metadata { return camera; } + public String getAllMetadataList(){ + return allMetadataList; + } + public void setCamera(String camera) { this.camera = camera; } @@ -178,21 +187,31 @@ public class Metadata { this.fileDimension = fileDimension; } + public void setAllMetadataList(String allMetadataList){ + this.allMetadataList = allMetadataList; + } + @Override public String toString() { + /* String allData = " "; + for (int i = 0; i < allMetadataList.size(); i++){ + allData += allMetadataList.get(i); + }*/ + return "Metadata{" + - ", metadataId=" + metadataId + - ", camera='" + camera + '\'' + - ", lens='" + lens + '\'' + - ", aperture='" + aperture + '\'' + - ", shutterSpeed='" + shutterSpeed + '\'' + - ", ISO='" + ISO + '\'' + - ", focalLength='" + focalLength + '\'' + - ", fileType='" + fileType + '\'' + - ", photoDate='" + photoDate + '\'' + - ", fileSize='" + fileSize + '\'' + - ", fileDimension='" + fileDimension + '\'' + - '}'; + "\nmetadataId=" + metadataId + + "\ncamera='" + camera + '\'' + + "\nlens='" + lens + '\'' + + "\naperture='" + aperture + '\'' + + "\nshutterSpeed='" + shutterSpeed + '\'' + + "\nISO='" + ISO + '\'' + + "\nfocalLength='" + focalLength + '\'' + + "\nfileType='" + fileType + '\'' + + "\nphotoDate='" + photoDate + '\'' + + "\nfileSize='" + fileSize + '\'' + + "\nfileDimension='" + fileDimension + '\'' + + '}'; /* + + " \n\n All the extra stuff that I dont know what to do with yet" + allData;*/ } } diff --git a/src/main/java/NTNU/IDATT1002/service/ImageService.java b/src/main/java/NTNU/IDATT1002/service/ImageService.java index af5347fa..adaf617c 100644 --- a/src/main/java/NTNU/IDATT1002/service/ImageService.java +++ b/src/main/java/NTNU/IDATT1002/service/ImageService.java @@ -52,6 +52,7 @@ public class ImageService { Image image = new Image(); Metadata metadata = new Metadata(); metadata.setImage(image); + metadata.setAllMetadataList(MetaDataExtractor.getAllMetadata(file)); image.setMetadata(metadata); metadata.setGeoLocation(geoLocation); @@ -65,6 +66,9 @@ public class ImageService { image.setUser(user); image.setPath(file.getPath()); image.addTags((ArrayList<Tag>) tagService.getOrCreateTags(tags)); + System.out.println("yeet\n"); + System.out.println(MetaDataExtractor.getAllMetadata(file)); + System.out.println("\nferdig da bro"); return imageRepository.save(image); } diff --git a/src/main/java/NTNU/IDATT1002/utils/MetaDataExtractor.java b/src/main/java/NTNU/IDATT1002/utils/MetaDataExtractor.java index fa7c48a0..89bda65b 100644 --- a/src/main/java/NTNU/IDATT1002/utils/MetaDataExtractor.java +++ b/src/main/java/NTNU/IDATT1002/utils/MetaDataExtractor.java @@ -358,4 +358,25 @@ public class MetaDataExtractor { textToClean = textToClean.substring(0, textToClean.length()-2); return textToClean; } + + /** + * Method for getting all metadata from an image + * @param file that will be checked + * @return metadata or an empty string if nothing was found + */ + public static String getAllMetadata(File file){ + String allMetadata = " "; + System.out.println("yeet"); + try { + Metadata metadata = ImageMetadataReader.readMetadata(file); + for (Directory directory : metadata.getDirectories()) { + for (Tag tag : directory.getTags()) { + allMetadata += tag + " "; + } + } + } catch (IOException | ImageProcessingException | NullPointerException e) { + logger.error("[x] Could not get information from file"); + } + return allMetadata; + } } diff --git a/src/main/resources/META-INF/persistence.xml b/src/main/resources/META-INF/persistence.xml index 7ff7ec01..d79ec1ca 100644 --- a/src/main/resources/META-INF/persistence.xml +++ b/src/main/resources/META-INF/persistence.xml @@ -23,6 +23,7 @@ <property name="hibernate.temp.use_jdbc_metadata_defaults" value="false"/> <property name="hibernate.format_sql" value="true"/> <property name="hibernate.use_sql_comments" value="true"/> + <property name="hibernate.hbm2ddl.auto" value="update" /> </properties> </persistence-unit> -- GitLab From 7b7134bb99ef9af989721d5e946bc65e2f83620c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lars=20Brodin=20=C3=98stby?= <larsbost@stud.ntnu.no> Date: Fri, 17 Apr 2020 13:45:48 +0200 Subject: [PATCH 2/6] Add method to extract all metadata --- src/main/java/NTNU/IDATT1002/models/Metadata.java | 10 +++++----- src/main/java/NTNU/IDATT1002/service/ImageService.java | 5 +---- .../java/NTNU/IDATT1002/utils/MetaDataExtractor.java | 2 +- src/main/resources/META-INF/persistence.xml | 1 - 4 files changed, 7 insertions(+), 11 deletions(-) diff --git a/src/main/java/NTNU/IDATT1002/models/Metadata.java b/src/main/java/NTNU/IDATT1002/models/Metadata.java index 7d01604d..dbade864 100644 --- a/src/main/java/NTNU/IDATT1002/models/Metadata.java +++ b/src/main/java/NTNU/IDATT1002/models/Metadata.java @@ -61,7 +61,7 @@ public class Metadata { @Column(name = "allMetadata") - private String allMetadataList; + private String allMetadata; public Metadata() { } @@ -99,8 +99,8 @@ public class Metadata { return camera; } - public String getAllMetadataList(){ - return allMetadataList; + public String getAllMetadata(){ + return allMetadata; } public void setCamera(String camera) { @@ -187,8 +187,8 @@ public class Metadata { this.fileDimension = fileDimension; } - public void setAllMetadataList(String allMetadataList){ - this.allMetadataList = allMetadataList; + public void setAllMetadata(String allMetadata){ + this.allMetadata = allMetadata; } @Override diff --git a/src/main/java/NTNU/IDATT1002/service/ImageService.java b/src/main/java/NTNU/IDATT1002/service/ImageService.java index adaf617c..2bdf265b 100644 --- a/src/main/java/NTNU/IDATT1002/service/ImageService.java +++ b/src/main/java/NTNU/IDATT1002/service/ImageService.java @@ -52,7 +52,7 @@ public class ImageService { Image image = new Image(); Metadata metadata = new Metadata(); metadata.setImage(image); - metadata.setAllMetadataList(MetaDataExtractor.getAllMetadata(file)); + metadata.setAllMetadata(MetaDataExtractor.getAllMetadata(file)); image.setMetadata(metadata); metadata.setGeoLocation(geoLocation); @@ -66,9 +66,6 @@ public class ImageService { image.setUser(user); image.setPath(file.getPath()); image.addTags((ArrayList<Tag>) tagService.getOrCreateTags(tags)); - System.out.println("yeet\n"); - System.out.println(MetaDataExtractor.getAllMetadata(file)); - System.out.println("\nferdig da bro"); return imageRepository.save(image); } diff --git a/src/main/java/NTNU/IDATT1002/utils/MetaDataExtractor.java b/src/main/java/NTNU/IDATT1002/utils/MetaDataExtractor.java index 89bda65b..006d71c0 100644 --- a/src/main/java/NTNU/IDATT1002/utils/MetaDataExtractor.java +++ b/src/main/java/NTNU/IDATT1002/utils/MetaDataExtractor.java @@ -371,7 +371,7 @@ public class MetaDataExtractor { Metadata metadata = ImageMetadataReader.readMetadata(file); for (Directory directory : metadata.getDirectories()) { for (Tag tag : directory.getTags()) { - allMetadata += tag + " "; + allMetadata += tag + " #"; } } } catch (IOException | ImageProcessingException | NullPointerException e) { diff --git a/src/main/resources/META-INF/persistence.xml b/src/main/resources/META-INF/persistence.xml index d79ec1ca..7ff7ec01 100644 --- a/src/main/resources/META-INF/persistence.xml +++ b/src/main/resources/META-INF/persistence.xml @@ -23,7 +23,6 @@ <property name="hibernate.temp.use_jdbc_metadata_defaults" value="false"/> <property name="hibernate.format_sql" value="true"/> <property name="hibernate.use_sql_comments" value="true"/> - <property name="hibernate.hbm2ddl.auto" value="update" /> </properties> </persistence-unit> -- GitLab From 8d3aca9cdd7ff472078d3f3611a4ad176141168c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lars=20Brodin=20=C3=98stby?= <larsbost@stud.ntnu.no> Date: Fri, 17 Apr 2020 13:47:48 +0200 Subject: [PATCH 3/6] Update Metadata.java --- src/main/java/NTNU/IDATT1002/models/Metadata.java | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/main/java/NTNU/IDATT1002/models/Metadata.java b/src/main/java/NTNU/IDATT1002/models/Metadata.java index dbade864..b77c43fb 100644 --- a/src/main/java/NTNU/IDATT1002/models/Metadata.java +++ b/src/main/java/NTNU/IDATT1002/models/Metadata.java @@ -193,10 +193,7 @@ public class Metadata { @Override public String toString() { - /* String allData = " "; - for (int i = 0; i < allMetadataList.size(); i++){ - allData += allMetadataList.get(i); - }*/ + return "Metadata{" + "\nmetadataId=" + metadataId + @@ -210,8 +207,7 @@ public class Metadata { "\nphotoDate='" + photoDate + '\'' + "\nfileSize='" + fileSize + '\'' + "\nfileDimension='" + fileDimension + '\'' + - '}'; /* + - " \n\n All the extra stuff that I dont know what to do with yet" + allData;*/ + '}'; } } -- GitLab From 3d82da8c405575831f7e1f69decad465d63ca9a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lars=20Brodin=20=C3=98stby?= <larsbost@stud.ntnu.no> Date: Fri, 17 Apr 2020 13:48:33 +0200 Subject: [PATCH 4/6] Update MetaDataExtractor.java --- src/main/java/NTNU/IDATT1002/utils/MetaDataExtractor.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/main/java/NTNU/IDATT1002/utils/MetaDataExtractor.java b/src/main/java/NTNU/IDATT1002/utils/MetaDataExtractor.java index 006d71c0..2c641054 100644 --- a/src/main/java/NTNU/IDATT1002/utils/MetaDataExtractor.java +++ b/src/main/java/NTNU/IDATT1002/utils/MetaDataExtractor.java @@ -366,7 +366,6 @@ public class MetaDataExtractor { */ public static String getAllMetadata(File file){ String allMetadata = " "; - System.out.println("yeet"); try { Metadata metadata = ImageMetadataReader.readMetadata(file); for (Directory directory : metadata.getDirectories()) { -- GitLab From 1e5cc6987d2859f42552d6d93d6ad538c7a63cc5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lars=20Brodin=20=C3=98stby?= <larsbost@stud.ntnu.no> Date: Fri, 17 Apr 2020 14:44:23 +0200 Subject: [PATCH 5/6] Update Metadata.java --- src/main/java/NTNU/IDATT1002/models/Metadata.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/NTNU/IDATT1002/models/Metadata.java b/src/main/java/NTNU/IDATT1002/models/Metadata.java index b77c43fb..d9bebbc6 100644 --- a/src/main/java/NTNU/IDATT1002/models/Metadata.java +++ b/src/main/java/NTNU/IDATT1002/models/Metadata.java @@ -59,7 +59,7 @@ public class Metadata { @Column(name = "filedimension") private String fileDimension; - + @Lob @Column(name = "allMetadata") private String allMetadata; -- GitLab From f7c6e41aed684e811f137f40429a6c17bdc25f38 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lars=20Brodin=20=C3=98stby?= <larsbost@stud.ntnu.no> Date: Fri, 17 Apr 2020 17:33:09 +0200 Subject: [PATCH 6/6] various fixes to misc metadata --- .../java/NTNU/IDATT1002/models/Metadata.java | 35 +++++++++---------- .../NTNU/IDATT1002/service/ImageService.java | 2 +- .../IDATT1002/utils/MetaDataExtractor.java | 18 ++++++---- 3 files changed, 29 insertions(+), 26 deletions(-) diff --git a/src/main/java/NTNU/IDATT1002/models/Metadata.java b/src/main/java/NTNU/IDATT1002/models/Metadata.java index d9bebbc6..884732f0 100644 --- a/src/main/java/NTNU/IDATT1002/models/Metadata.java +++ b/src/main/java/NTNU/IDATT1002/models/Metadata.java @@ -1,7 +1,6 @@ package NTNU.IDATT1002.models; -import java.util.ArrayList; import javax.persistence.*; /** @@ -60,8 +59,8 @@ public class Metadata { private String fileDimension; @Lob - @Column(name = "allMetadata") - private String allMetadata; + @Column(name = "miscMetadata") + private String miscMetadata; public Metadata() { } @@ -99,8 +98,8 @@ public class Metadata { return camera; } - public String getAllMetadata(){ - return allMetadata; + public String getMiscMetadata(){ + return miscMetadata; } public void setCamera(String camera) { @@ -187,8 +186,8 @@ public class Metadata { this.fileDimension = fileDimension; } - public void setAllMetadata(String allMetadata){ - this.allMetadata = allMetadata; + public void setMiscMetadata(String miscMetadata){ + this.miscMetadata = miscMetadata; } @Override @@ -196,17 +195,17 @@ public class Metadata { return "Metadata{" + - "\nmetadataId=" + metadataId + - "\ncamera='" + camera + '\'' + - "\nlens='" + lens + '\'' + - "\naperture='" + aperture + '\'' + - "\nshutterSpeed='" + shutterSpeed + '\'' + - "\nISO='" + ISO + '\'' + - "\nfocalLength='" + focalLength + '\'' + - "\nfileType='" + fileType + '\'' + - "\nphotoDate='" + photoDate + '\'' + - "\nfileSize='" + fileSize + '\'' + - "\nfileDimension='" + fileDimension + '\'' + + ", metadataId=" + metadataId + + ", camera='" + camera + '\'' + + ", lens='" + lens + '\'' + + ", aperture='" + aperture + '\'' + + ", shutterSpeed='" + shutterSpeed + '\'' + + ", ISO='" + ISO + '\'' + + ", focalLength='" + focalLength + '\'' + + ", fileType='" + fileType + '\'' + + ", photoDate='" + photoDate + '\'' + + ", fileSize='" + fileSize + '\'' + + ", fileDimension='" + fileDimension + '\'' + '}'; } diff --git a/src/main/java/NTNU/IDATT1002/service/ImageService.java b/src/main/java/NTNU/IDATT1002/service/ImageService.java index 2bdf265b..cfaa2c64 100644 --- a/src/main/java/NTNU/IDATT1002/service/ImageService.java +++ b/src/main/java/NTNU/IDATT1002/service/ImageService.java @@ -52,7 +52,7 @@ public class ImageService { Image image = new Image(); Metadata metadata = new Metadata(); metadata.setImage(image); - metadata.setAllMetadata(MetaDataExtractor.getAllMetadata(file)); + metadata.setMiscMetadata(MetaDataExtractor.getMiscMetadata(file)); image.setMetadata(metadata); metadata.setGeoLocation(geoLocation); diff --git a/src/main/java/NTNU/IDATT1002/utils/MetaDataExtractor.java b/src/main/java/NTNU/IDATT1002/utils/MetaDataExtractor.java index 2c641054..1d7fa3e3 100644 --- a/src/main/java/NTNU/IDATT1002/utils/MetaDataExtractor.java +++ b/src/main/java/NTNU/IDATT1002/utils/MetaDataExtractor.java @@ -324,7 +324,7 @@ public class MetaDataExtractor { } return fileDimension; } - + public static void setMetadata(NTNU.IDATT1002.models.Metadata metadata, File file) { metadata.setCamera(getCamera(file)); metadata.setLens(getLens(file)); @@ -360,22 +360,26 @@ public class MetaDataExtractor { } /** - * Method for getting all metadata from an image + * Method for getting all the misceleneous metadata from an image * @param file that will be checked * @return metadata or an empty string if nothing was found */ - public static String getAllMetadata(File file){ - String allMetadata = " "; + public static String getMiscMetadata(File file){ + + StringBuilder miscMetadata = new StringBuilder(" "); + try { Metadata metadata = ImageMetadataReader.readMetadata(file); for (Directory directory : metadata.getDirectories()) { for (Tag tag : directory.getTags()) { - allMetadata += tag + " #"; + if(!(getMetadata(file).contains( cleanUpTags(tag.toString(), directory)))){ + miscMetadata.append(tag).append(" #"); + } } } } catch (IOException | ImageProcessingException | NullPointerException e) { - logger.error("[x] Could not get information from file"); + logger.error("[x] Could not get information from file", e); } - return allMetadata; + return miscMetadata.toString(); } } -- GitLab