private static void addToDigest(InputStream is, MessageDigest digest) throws IOException {
        if (is == null) return;
        byte[] buffer = new byte[MD5_BUFFER_SIZE];
        int i;
        do {
            i = is.read(buffer);
            if (i > 0) {
                digest.update(buffer, 0, i);
            }
        } while(i != -1);
    }
Adds the given path to the digest, or does nothing if path is neither file nor dir

@param path path to add to message digest
@param suffix only files with this suffix are considered
@param digest the {link @MessageDigest} to add the file paths to
@param recursive whether to recursively find children in the paths
@param fullPathNames whether to include the full paths in checksum or only the names
@throws java.io.IOException if adding path to digest fails when reading files from path
config-application-package/src/main/java/com/yahoo/config/model/application/provider/FilesApplicationPackage.java