def __init__(self, using='default', index=None, doc_type=None, extra=None):
    self._using = using
    self._index = None
    if isinstance(index, (tuple, list)):
        self._index = list(index)
    elif index:
        self._index = [index]
    self._doc_type = []
    self._doc_type_map = {}
    if isinstance(doc_type, (tuple, list)):
        self._doc_type.extend(doc_type)
    elif isinstance(doc_type, collections_abc.Mapping):
        self._doc_type.extend(doc_type.keys())
        self._doc_type_map.update(doc_type)
    elif doc_type:
        self._doc_type.append(doc_type)
    self._params = {}
    self._extra = (extra or {})
def __init__(self, using='default', index=None, doc_type=None, extra=None):
    self._using = using
    self._index = None
    if isinstance(index, (tuple, list)):
        self._index = list(index)
    elif index:
        self._index = [index]
    self._doc_type = []
    self._doc_type_map = {}
    if isinstance(doc_type, (tuple, list)):
        self._doc_type.extend(doc_type)
    elif isinstance(doc_type, collections_abc.Mapping):
        self._doc_type.extend(doc_type.keys())
        self._doc_type_map.update(doc_type)
    elif doc_type:
        self._doc_type.append(doc_type)
    self._params = {}
    self._extra = (extra or {})