public BindingMatch<T> match(URI uri) {
        for (Map.Entry<UriPattern, T> entry : bindings) {
            UriPattern pattern = entry.getKey();
            UriPattern.Match match = pattern.match(uri);
            if (match != null) {
                return new BindingMatch<>(match, entry.getValue(), pattern);
            }
        }
        return null;
    }
<p>Resolves the binding that best matches (see commentary on {@link BindingRepository#bind(String, Object)}) the
given {@link URI}, and returns a {@link BindingMatch} object that describes the match and contains the
matched target. If there is no binding that matches the given URI, this method returns null.</p>

@param uri The URI to match against the bindings in this set.
@return A {@link BindingMatch} object describing the match found, or null if not found.
jdisc_core/src/main/java/com/yahoo/jdisc/application/BindingSet.java