docs: private void readCNDA(SequentialReader reader) throws IOException
      {
          if (this.type.compareTo("CNDA") == 0) {
              // From JpegMetadataReader
              JpegSegmentMetadataReader exifReader = new ExifReader();
              InputStream exifStream = new ByteArrayInputStream(reader.getBytes((int) this.size));
              Set<JpegSegmentType> segmentTypes = new HashSet<JpegSegmentType>();
              for (JpegSegmentType type : exifReader.getSegmentTypes()) {
                  segmentTypes.add(type);
              }
              JpegSegmentData segmentData;
              try {
                  segmentData = JpegSegmentReader.readSegments(new StreamReader(exifStream), segmentTypes);
              } catch (JpegProcessingException e) {
                  return;
              }
  
              // TODO should we keep all extracted metadata here?
              Metadata metadata = new Metadata();
              for (JpegSegmentType segmentType : exifReader.getSegmentTypes()) {
                  exifReader.readJpegSegments(segmentData.getSegments(segmentType), metadata, segmentType);
              }
  
              Directory directory = metadata.getFirstDirectoryOfType(ExifIFD0Directory.class);
              if (directory != null) {
                  for (Tag tag : directory.getTags()) {
                      if (tag.getTagType() == ExifDirectoryBase.TAG_DATETIME) {
                          dateTime = tag.getDescription();
                      }
                  }
              }
          }
      }