Index: trunk/src/com/drew/imaging/jpeg/JpegMetadataReader.java
===================================================================
--- trunk/src/com/drew/imaging/jpeg/JpegMetadataReader.java	(revision 10862)
+++ trunk/src/com/drew/imaging/jpeg/JpegMetadataReader.java	(revision 13061)
@@ -1,4 +1,4 @@
 /*
- * Copyright 2002-2016 Drew Noakes
+ * Copyright 2002-2017 Drew Noakes
  *
  *    Licensed under the Apache License, Version 2.0 (the "License");
@@ -41,4 +41,6 @@
 //import com.drew.metadata.jfxx.JfxxReader;
 import com.drew.metadata.jpeg.JpegCommentReader;
+import com.drew.metadata.jpeg.JpegDhtReader;
+import com.drew.metadata.jpeg.JpegDnlReader;
 import com.drew.metadata.jpeg.JpegReader;
 //import com.drew.metadata.photoshop.DuckyReader;
@@ -63,6 +65,8 @@
             //new PhotoshopReader(),
             //new DuckyReader(),
-            new IptcReader()//,
-            //new AdobeJpegReader()
+            new IptcReader(),
+            //new AdobeJpegReader(),
+            new JpegDhtReader(),
+            new JpegDnlReader()
     );
 
Index: trunk/src/com/drew/imaging/jpeg/JpegProcessingException.java
===================================================================
--- trunk/src/com/drew/imaging/jpeg/JpegProcessingException.java	(revision 10862)
+++ trunk/src/com/drew/imaging/jpeg/JpegProcessingException.java	(revision 13061)
@@ -1,4 +1,4 @@
 /*
- * Copyright 2002-2016 Drew Noakes
+ * Copyright 2002-2017 Drew Noakes
  *
  *    Licensed under the Apache License, Version 2.0 (the "License");
Index: trunk/src/com/drew/imaging/jpeg/JpegSegmentData.java
===================================================================
--- trunk/src/com/drew/imaging/jpeg/JpegSegmentData.java	(revision 10862)
+++ trunk/src/com/drew/imaging/jpeg/JpegSegmentData.java	(revision 13061)
@@ -1,4 +1,4 @@
 /*
- * Copyright 2002-2016 Drew Noakes
+ * Copyright 2002-2017 Drew Noakes
  *
  *    Licensed under the Apache License, Version 2.0 (the "License");
@@ -52,4 +52,5 @@
      * @param segmentBytes the byte array holding data for the segment being added
      */
+    @SuppressWarnings({"MismatchedQueryAndUpdateOfCollection"})
     public void addSegment(byte segmentType, @NotNull byte[] segmentBytes)
     {
@@ -206,4 +207,5 @@
      * @param occurrence  the zero-based index of the segment occurrence to remove.
      */
+    @SuppressWarnings({"MismatchedQueryAndUpdateOfCollection"})
     public void removeSegmentOccurrence(@NotNull JpegSegmentType segmentType, int occurrence)
     {
@@ -218,4 +220,5 @@
      * @param occurrence  the zero-based index of the segment occurrence to remove.
      */
+    @SuppressWarnings({"MismatchedQueryAndUpdateOfCollection"})
     public void removeSegmentOccurrence(byte segmentType, int occurrence)
     {
Index: trunk/src/com/drew/imaging/jpeg/JpegSegmentMetadataReader.java
===================================================================
--- trunk/src/com/drew/imaging/jpeg/JpegSegmentMetadataReader.java	(revision 10862)
+++ trunk/src/com/drew/imaging/jpeg/JpegSegmentMetadataReader.java	(revision 13061)
@@ -13,5 +13,5 @@
      */
     @NotNull
-    public Iterable<JpegSegmentType> getSegmentTypes();
+    Iterable<JpegSegmentType> getSegmentTypes();
 
     /**
@@ -23,4 +23,4 @@
      * @param segmentType The {@link JpegSegmentType} being read.
      */
-    public void readJpegSegments(@NotNull final Iterable<byte[]> segments, @NotNull final Metadata metadata, @NotNull final JpegSegmentType segmentType);
+    void readJpegSegments(@NotNull final Iterable<byte[]> segments, @NotNull final Metadata metadata, @NotNull final JpegSegmentType segmentType);
 }
Index: trunk/src/com/drew/imaging/jpeg/JpegSegmentReader.java
===================================================================
--- trunk/src/com/drew/imaging/jpeg/JpegSegmentReader.java	(revision 10862)
+++ trunk/src/com/drew/imaging/jpeg/JpegSegmentReader.java	(revision 13061)
@@ -1,4 +1,4 @@
 /*
- * Copyright 2002-2016 Drew Noakes
+ * Copyright 2002-2017 Drew Noakes
  *
  *    Licensed under the Apache License, Version 2.0 (the "License");
Index: trunk/src/com/drew/imaging/jpeg/JpegSegmentType.java
===================================================================
--- trunk/src/com/drew/imaging/jpeg/JpegSegmentType.java	(revision 10862)
+++ trunk/src/com/drew/imaging/jpeg/JpegSegmentType.java	(revision 13061)
@@ -1,4 +1,4 @@
 /*
- * Copyright 2002-2016 Drew Noakes
+ * Copyright 2002-2017 Drew Noakes
  *
  *    Licensed under the Apache License, Version 2.0 (the "License");
@@ -93,17 +93,32 @@
     DQT((byte)0xDB, false),
 
+    /** Define Number of Lines segment identifier. */
+    DNL((byte)0xDC, false),
+
+    /** Define Restart Interval segment identifier. */
+    DRI((byte)0xDD, false),
+
+    /** Define Hierarchical Progression segment identifier. */
+    DHP((byte)0xDE, false),
+
+    /** EXPand reference component(s) segment identifier. */
+    EXP((byte)0xDF, false),
+
     /** Define Huffman Table segment identifier. */
     DHT((byte)0xC4, false),
 
-    /** Start-of-Frame (0) segment identifier. */
+    /** Define Arithmetic Coding conditioning segment identifier. */
+    DAC((byte)0xCC, false),
+
+    /** Start-of-Frame (0) segment identifier for Baseline DCT. */
     SOF0((byte)0xC0, true),
 
-    /** Start-of-Frame (1) segment identifier. */
+    /** Start-of-Frame (1) segment identifier for Extended sequential DCT. */
     SOF1((byte)0xC1, true),
 
-    /** Start-of-Frame (2) segment identifier. */
+    /** Start-of-Frame (2) segment identifier for Progressive DCT. */
     SOF2((byte)0xC2, true),
 
-    /** Start-of-Frame (3) segment identifier. */
+    /** Start-of-Frame (3) segment identifier for Lossless (sequential). */
     SOF3((byte)0xC3, true),
 
@@ -111,23 +126,23 @@
 //    SOF4((byte)0xC4, true),
 
-    /** Start-of-Frame (5) segment identifier. */
+    /** Start-of-Frame (5) segment identifier for Differential sequential DCT. */
     SOF5((byte)0xC5, true),
 
-    /** Start-of-Frame (6) segment identifier. */
+    /** Start-of-Frame (6) segment identifier for Differential progressive DCT. */
     SOF6((byte)0xC6, true),
 
-    /** Start-of-Frame (7) segment identifier. */
+    /** Start-of-Frame (7) segment identifier for Differential lossless (sequential). */
     SOF7((byte)0xC7, true),
 
-    /** Start-of-Frame (8) segment identifier. */
-    SOF8((byte)0xC8, true),
+    /** Reserved for JPEG extensions. */
+    JPG((byte)0xC8, true),
 
-    /** Start-of-Frame (9) segment identifier. */
+    /** Start-of-Frame (9) segment identifier for Extended sequential DCT. */
     SOF9((byte)0xC9, true),
 
-    /** Start-of-Frame (10) segment identifier. */
+    /** Start-of-Frame (10) segment identifier for Progressive DCT. */
     SOF10((byte)0xCA, true),
 
-    /** Start-of-Frame (11) segment identifier. */
+    /** Start-of-Frame (11) segment identifier for Lossless (sequential). */
     SOF11((byte)0xCB, true),
 
@@ -135,14 +150,14 @@
 //    SOF12((byte)0xCC, true),
 
-    /** Start-of-Frame (13) segment identifier. */
+    /** Start-of-Frame (13) segment identifier for Differential sequential DCT. */
     SOF13((byte)0xCD, true),
 
-    /** Start-of-Frame (14) segment identifier. */
+    /** Start-of-Frame (14) segment identifier for Differential progressive DCT. */
     SOF14((byte)0xCE, true),
 
-    /** Start-of-Frame (15) segment identifier. */
+    /** Start-of-Frame (15) segment identifier for Differential lossless (sequential). */
     SOF15((byte)0xCF, true),
 
-    /** JPEG comment segment identifier. */
+    /** JPEG comment segment identifier for comments. */
     COM((byte)0xFE, true);
 
Index: trunk/src/com/drew/imaging/jpeg/package-info.java
===================================================================
--- trunk/src/com/drew/imaging/jpeg/package-info.java	(revision 13061)
+++ trunk/src/com/drew/imaging/jpeg/package-info.java	(revision 13061)
@@ -0,0 +1,4 @@
+/**
+ * Contains classes for working with JPEG files.
+ */
+package com.drew.imaging.jpeg;
Index: trunk/src/com/drew/imaging/jpeg/package.html
===================================================================
--- trunk/src/com/drew/imaging/jpeg/package.html	(revision 10862)
+++ 	(revision )
@@ -1,33 +1,0 @@
-<!--
-  ~ Copyright 2002-2016 Drew Noakes
-  ~
-  ~    Licensed under the Apache License, Version 2.0 (the "License");
-  ~    you may not use this file except in compliance with the License.
-  ~    You may obtain a copy of the License at
-  ~
-  ~        http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~    Unless required by applicable law or agreed to in writing, software
-  ~    distributed under the License is distributed on an "AS IS" BASIS,
-  ~    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~    See the License for the specific language governing permissions and
-  ~    limitations under the License.
-  ~
-  ~ More information about this project is available at:
-  ~
-  ~    https://drewnoakes.com/code/exif/
-  ~    https://github.com/drewnoakes/metadata-extractor
-  -->
-
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<html>
-<head>
-</head>
-<body bgcolor="white">
-
-Contains classes for working with JPEG files.
-
-<!-- Put @see and @since tags down here. -->
-
-</body>
-</html>
