docs: @Override
      public FetchStatus checkFilter(URI uri) {
          if (uri == null) {
              return FetchStatus.OUT_OF_SCOPE;
          }
  
          String otherScheme = normalisedScheme(uri.getRawScheme());
          if (port != normalisedPort(otherScheme, uri.getPort())) {
              return FetchStatus.OUT_OF_SCOPE;
          }
  
          if (!scheme.equals(otherScheme)) {
              return FetchStatus.OUT_OF_SCOPE;
          }
  
          if (!hasSameHost(uri)) {
              return FetchStatus.OUT_OF_SCOPE;
          }
  
          if (!startsWith(uri.getRawPath(), path)) {
              return FetchStatus.OUT_OF_SCOPE;
          }
  
          return FetchStatus.VALID;
      }