code: static String performUrlMatch(String uri, Collection<String> urlPatterns) {
          String match = null;
          String longestUrlPattern = null;
          for (String urlPattern : urlPatterns) {
              if (URLMatchingUtils.isExactMatch(uri, urlPattern)) {
                  return urlPattern;
              } else if (URLMatchingUtils.isPathNameMatch(uri, urlPattern)) {
                  longestUrlPattern = URLMatchingUtils.getLongestUrlPattern(longestUrlPattern, urlPattern);
              } else if (URLMatchingUtils.isExtensionMatch(uri, urlPattern)) {
                  match = urlPattern;
              }
          }
          if (longestUrlPattern != null) {
              match = longestUrlPattern;
          }
          return match;
      }
docs: Gets the match for the resource name.
  <pre>
  To perform a URL match,
  1. For each URL pattern determine if the resource matches it
  2. Construct the match object
  
  Exact match has first priority. The longest path match has second priority. The extension match has last priority.
  </pre>
  
  @param uriName
  @return