legacy/src/main/java/thredds/catalog/InvCatalog.java
public URI resolveUri(String uriString) throws URISyntaxException {
    URI want = new URI(uriString);

    if ((baseURI == null) || want.isAbsolute())
      return want;

    // gotta deal with file ourself
    String scheme = baseURI.getScheme();
    if ((scheme != null) && scheme.equals("file")) { // LOOK at ucar.nc2.util.NetworkUtils.resolve
      String baseString = baseURI.toString();
      if ((uriString.length() > 0) && (uriString.charAt(0) == '#'))
        return new URI(baseString + uriString);
      int pos = baseString.lastIndexOf('/');
      if (pos > 0) {
        String r = baseString.substring(0, pos + 1) + uriString;
        return new URI(r);
      }
    }

    //otherwise let the URI class resolve it
    return baseURI.resolve(want);
  }
public URI resolveUri(String uriString) throws URISyntaxException {
    URI want = new URI(uriString);

    if ((baseURI == null) || want.isAbsolute())
      return want;

    // gotta deal with file ourself
    String scheme = baseURI.getScheme();
    if ((scheme != null) && scheme.equals("file")) { // LOOK at ucar.nc2.util.NetworkUtils.resolve
      String baseString = baseURI.toString();
      if ((uriString.length() > 0) && (uriString.charAt(0) == '#'))
        return new URI(baseString + uriString);
      int pos = baseString.lastIndexOf('/');
      if (pos > 0) {
        String r = baseString.substring(0, pos + 1) + uriString;
        return new URI(r);
      }
    }

    //otherwise let the URI class resolve it
    return baseURI.resolve(want);
  }
public URI resolveUri ( String uriString ) throws URISyntaxException { URI want = new URI ( uriString ) ; if ( ( baseURI == null ) || want . isAbsolute ( ) ) return want ; // gotta deal with file ourself String scheme = baseURI . getScheme ( ) ; if ( ( scheme != null ) && scheme . equals ( "file" ) ) { // LOOK at ucar.nc2.util.NetworkUtils.resolve String baseString = baseURI . toString ( ) ; if ( ( uriString . length ( ) > 0 ) && ( uriString . charAt ( 0 ) == ' ' ) ) return new URI ( baseString + uriString ) ; int pos = baseString . lastIndexOf ( ' ' ) ; if ( pos > 0 ) { String r = baseString . substring ( 0 , pos + 1 ) + uriString ; return new URI ( r ) ; } } //otherwise let the URI class resolve it return baseURI . resolve ( want ) ; }
Resolve reletive URIs, using the catalog's base URI. If the uriString is not reletive, then
no resolution is done. This also allows baseURI to be a file: scheme.

@param uriString any url, reletive or absolute
@return resolved url string, or null on error
@throws URISyntaxException if uriString violates RFC 2396
@see java.net.URI#resolve
Resolve reletive URIs using the catalog s base URI . If the uriString is not reletive then no resolution is done . This also allows baseURI to be a file : scheme .