code: public Optional<Long> maybeGetFileOffsetFor(DataDirectoryKey dataDirKey) {
          Optional<DataDirEntry> dataDir = optHeader
                  .maybeGetDataDirEntry(dataDirKey);
          if (dataDir.isPresent()) {
              long rva = dataDir.get().getVirtualAddress();
              return Optional.of(getFileOffset(rva));
          }
          return Optional.absent();
      }
docs: Returns the file offset of the data directory entry the given key belongs
  to.
  <p>
  Returns absent if data directory doesn't exist.
  
  @param dataDirKey
  the key of the data directory entry
  @return file offset of the rva that is in the data directory entry with
  the given key, absent if file offset can not be determined