code: public LocationScanner getScanner(String scheme) {
          notNullOrEmpty(scheme, "scheme");
          return this.scanners.get(scheme.toLowerCase());
      }
docs: Returns the correct implementation of a {@link LocationScanner}
  depending on the scheme or null of no scanner for this scheme is
  registered.
  
  @param scheme the scheme that should be supported
  @return {@link JarLocationScanner} if scheme is "jar", {@link FileSystemLocationScanner}
  if the scheme is "file" or null if an unknown scheme is given
  @throws IllegalArgumentException in case scheme is null or empty