def get_summoner_names(ids):
    summoners = cassiopeia.core.requests.data_store.get(cassiopeia.type.core.summoner.Summoner, ids, "id")
    summoners = [summoner.name if summoner else "" for summoner in summoners]

    # Find which summoners weren't cached
    missing = []
    loc = []
    for i in range(len(ids)):
        if not summoners[i]:
            missing.append(ids[i])
            loc.append(i)

    if not missing:
        return summoners

    # Make requests to get them
    new = cassiopeia.core.requests.call_with_ensured_size(cassiopeia.dto.summonerapi.get_summoner_names, 40, missing)
    for i in range(len(missing)):
        summoners[loc[i]] = new[str(missing[i])]

    return summoners
Attach slave templates to serializers.
dataset/ETHPy150Open meraki-analytics/cassiopeia/cassiopeia/core/summonerapi.py/get_summoner_names--crossover with--dataset/ETHPy150Open openstack/rack/rack/api/wsgi.py/ResponseObject.attach