Revision 5a407e53
Added by Andreas Müller over 3 years ago
app-import/src/main/java/eu/etaxonomy/cdm/io/greece/ImageImportTest.java | ||
---|---|---|
11 | 11 |
import java.io.File; |
12 | 12 |
import java.io.IOException; |
13 | 13 |
import java.net.URI; |
14 |
import java.util.ArrayList;
|
|
14 |
import java.util.List; |
|
15 | 15 |
|
16 |
import org.apache.commons.imaging.ImageReadException; |
|
17 |
import org.apache.commons.imaging.Imaging; |
|
18 |
import org.apache.commons.imaging.common.GenericImageMetadata.GenericImageMetadataItem; |
|
19 |
import org.apache.commons.imaging.common.ImageMetadata; |
|
20 |
import org.apache.commons.imaging.common.ImageMetadata.ImageMetadataItem; |
|
16 | 21 |
import org.apache.http.HttpException; |
17 | 22 |
import org.apache.log4j.Logger; |
18 |
import org.apache.sanselan.ImageReadException; |
|
19 |
import org.apache.sanselan.Sanselan; |
|
20 |
import org.apache.sanselan.common.IImageMetadata; |
|
21 |
import org.apache.sanselan.common.ImageMetadata.Item; |
|
22 | 23 |
import org.joda.time.DateTime; |
23 | 24 |
import org.joda.time.DateTimeZone; |
24 | 25 |
import org.joda.time.format.DateTimeFormat; |
... | ... | |
74 | 75 |
|
75 | 76 |
//image metadata |
76 | 77 |
File imageFile = new File(""); |
77 |
IImageMetadata metadata;
|
|
78 |
ImageMetadata metadata; |
|
78 | 79 |
try { |
79 |
metadata = Sanselan.getMetadata(uri.toURL().openStream(), null); |
|
80 |
ArrayList<?> items = metadata.getItems(); |
|
81 |
for (Object object : items){ |
|
82 |
Item item = (Item) object; |
|
83 |
System.out.println(item.getKeyword() + ": " + item.getText()); |
|
84 |
String value = removeQuots(item.getText()); |
|
85 |
if("Image Description".equalsIgnoreCase(item.getKeyword())){ |
|
86 |
// media.putDescription(Language.DEFAULT(), item.getText()); |
|
87 |
}else if ("date time original".equalsIgnoreCase(item.getKeyword())){ |
|
88 |
DateTimeFormatter f = DateTimeFormat.forPattern("yyyy:MM:dd HH:mm:ss"); |
|
89 |
DateTime created = f.withZone(DateTimeZone.forID("Europe/Athens")).parseDateTime(value); |
|
90 |
System.out.println(created); |
|
91 |
|
|
80 |
metadata = Imaging.getMetadata(uri.toURL().openStream(), null); |
|
81 |
List<? extends ImageMetadataItem> items = metadata.getItems(); |
|
82 |
for (ImageMetadataItem metadataItem : items){ |
|
83 |
if (metadataItem instanceof GenericImageMetadataItem){ |
|
84 |
GenericImageMetadataItem item = (GenericImageMetadataItem) metadataItem; |
|
85 |
// System.out.println(item.getKeyword() + ": " + item.getText()); |
|
86 |
String value = removeQuots(item.getText()); |
|
87 |
if("Image Description".equalsIgnoreCase(item.getKeyword())){ |
|
88 |
// media.putDescription(Language.DEFAULT(), item.getText()); |
|
89 |
}else if ("date time original".equalsIgnoreCase(item.getKeyword())){ |
|
90 |
DateTimeFormatter f = DateTimeFormat.forPattern("yyyy:MM:dd HH:mm:ss"); |
|
91 |
DateTime created = f.withZone(DateTimeZone.forID("Europe/Athens")).parseDateTime(value); |
|
92 |
System.out.println(created); |
|
93 |
} |
|
94 |
}else{ |
|
95 |
throw new IllegalStateException("Unsupported ImageMetadataItem type: " + metadataItem.getClass().getName()); |
|
92 | 96 |
} |
93 | 97 |
} |
94 | 98 |
} catch (ImageReadException | IOException e1) { |
Also available in: Unified diff
update image imports to new apache commons imaging