code: @Override
    public Token<?> addDelegationTokens(
        Configuration conf, Credentials creds, String renewer, String url) throws Exception {
      if (!url.startsWith(SCHEME)) {
        url = SCHEME + "://" + url;
      }
      FileSystem fs = FileSystem.get(URI.create(url), conf);
      Token<?> token = fs.getDelegationToken(renewer);
      if (token == null) {
        throw new DelegationTokenIOException("Filesystem not generating Delegation Tokens: " + url);
      }
      creds.addToken(token.getService(), token);
      return token;
    }
docs: Returns Token object via FileSystem, null if bad argument.
  
  @param conf - a Configuration object used with FileSystem.get()
  @param creds - a Credentials object to which token(s) will be added
  @param renewer - the renewer to send with the token request
  @param url - the URL to which the request is sent
  @return a Token, or null if fetch fails.