class_docstr: So we could provide handling for URLs with corresponding credentials
  and specific (reusable) downloader.  Internally it contains
  Providers and interfaces them based on a given URL.  Each provider
  in turn takes care about associated with it Downloader.
class_docstr_tok: ["So","we","could","provide","handling","for","URLs","with","corresponding","credentials","and","specific","(","reusable",")","downloader",".","Internally","it","contains","Providers","and","interfaces","them","based","on","a","given","URL",".","Each","provider","in","turn","takes","care","about","associated","with","it","Downloader","."]
code: def get_status(self, url, *args, **kwargs):
      return (
          self.get_provider(url)
          .get_downloader(url)
          .get_status(url, *args, **kwargs)
      )
  
imports: from glob import glob
  from logging import getLogger
  import re
  from os.path import dirname, abspath, join
  from urllib.parse import urlparse
  from .base import NoneAuthenticator, NotImplementedAuthenticator
  from .http import HTMLFormAuthenticator, HTTPAnonBearerTokenAuthenticator, HTTPAuthAuthenticator, HTTPBasicAuthAuthenticator, HTTPDigestAuthAuthenticator, HTTPBearerTokenAuthenticator, HTTPDownloader
  from .s3 import S3Authenticator, S3Downloader
  from .shub import SHubDownloader
  from configparser import ConfigParser
  from datalad.support.external_versions import external_versions
  from datalad.support.network import RI
  from datalad.support import path
  from datalad.utils import auto_repr, ensure_list_from_str, get_dataset_root, Path
  from ..interface.common_cfg import dirs
  from datalad.downloaders import CREDENTIAL_TYPES
label_desc: Use image node_id 18 for calling the Providers obj's underlying member method code with example usage: obj.get_status(url) and returns: self