docs: def _format_url(handler, host=None, core_name=None, extra=None):
      '''
      PRIVATE METHOD
      Formats the URL based on parameters, and if cores are used or not
  
      handler : str
          The request handler to hit.
      host : str (None)
          The solr host to query. __opts__['host'] is default
      core_name : str (None)
          The name of the solr core if using cores. Leave this blank if you
          are not using cores or if you want to check all cores.
      extra : list<str> ([])
          A list of name value pairs in string format. e.g. ['name=value']
  
      Return: str
          Fully formatted URL (http://<host>:<port>/solr/<handler>?wt=json&<extra>)
      '''
      extra = [] if extra is None else extra
      if _get_none_or_value(host) is None or host == 'None':
          host = __salt__['config.option']('solr.host')
      port = __salt__['config.option']('solr.port')
      baseurl = __salt__['config.option']('solr.baseurl')
      if _get_none_or_value(core_name) is None:
          if not extra:
              return "http://{0}:{1}{2}/{3}?wt=json".format(
                      host, port, baseurl, handler)
          else:
              return "http://{0}:{1}{2}/{3}?wt=json&{4}".format(
                      host, port, baseurl, handler, "&".join(extra))
      else:
          if not extra:
              return "http://{0}:{1}{2}/{3}/{4}?wt=json".format(
                      host, port, baseurl, core_name, handler)
          else:
              return "http://{0}:{1}{2}/{3}/{4}?wt=json&{5}".format(
                      host, port, baseurl, core_name, handler, "&".join(extra))