diff -r fca460b63839 -r 91fb907a8732 jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFImageReadParam.java
--- a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFImageReadParam.java Mon Dec 12 20:54:41 2016 -0800
+++ b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFImageReadParam.java Tue Dec 13 12:02:37 2016 -0800
@@ -46,6 +46,10 @@
* {@code ExifParentTIFFTagSet}, and {@code GeoTIFFTagSet}
* are included.
*
+ *
Forcing reading of fields corresponding to {@code TIFFTag}s
+ * not in any of the allowed {@code TIFFTagSet}s may be effected via
+ * {@link #setReadUnknownTags setReadUnknownTags}.
+ *
* @since 9
*/
public final class TIFFImageReadParam extends ImageReadParam {
@@ -53,6 +57,8 @@
private final List allowedTagSets =
new ArrayList(4);
+ private boolean readUnknownTags = false;
+
/**
* Constructs a {@code TIFFImageReadParam}. Tags defined by
* the {@code TIFFTagSet}s {@code BaselineTIFFTagSet},
@@ -117,4 +123,27 @@
public List getAllowedTagSets() {
return allowedTagSets;
}
+
+ /**
+ * Set whether to read fields corresponding to {@code TIFFTag}s not in
+ * the allowed {@code TIFFTagSet}s. The default setting is {@code false}.
+ * If the TIFF {@code ImageReader} is ignoring metadata, then a setting
+ * of {@code true} is overridden as all metadata are ignored except those
+ * essential to reading the image itself.
+ *
+ * @param readUnknownTags Whether to read fields of unrecognized tags
+ */
+ public void setReadUnknownTags(boolean readUnknownTags) {
+ this.readUnknownTags = readUnknownTags;
+ }
+
+ /**
+ * Retrieve the setting of whether to read fields corresponding to unknown
+ * {@code TIFFTag}s.
+ *
+ * @return Whether to read fields of unrecognized tags
+ */
+ public boolean getReadUnknownTags() {
+ return readUnknownTags;
+ }
}