def get_es(urls=None, timeout=DEFAULT_TIMEOUT, force_new=False, **settings):
    # Cheap way of de-None-ifying things
    urls = urls or DEFAULT_URLS

    # v0.7: Check for 'hosts' instead of 'urls'. Take this out in v1.0.
    if 'hosts' in settings:
        raise DeprecationWarning('"hosts" is deprecated in favor of "urls".')

    if not force_new:
        key = _build_key(urls, timeout, **settings)
        if key in _cached_elasticsearch:
            return _cached_elasticsearch[key]

    es = Elasticsearch(urls, timeout=timeout, **settings)

    if not force_new:
        # We don't need to rebuild the key here since we built it in
        # the previous if block, so it's in the namespace. Having said
        # that, this is a little ew.
        _cached_elasticsearch[key] = es

    return es
List of available input sources.
dataset/ETHPy150Open mozilla/elasticutils/elasticutils/__init__.py/get_es--crossover with--dataset/ETHPy150Open home-assistant/home-assistant/homeassistant/components/media_player/__init__.py/MediaPlayerDevice.source_list