'Get all services.
Note that this is the cellsv1 variant, which means we ignore the
"all_cells" parameter.'

def service_get_all(self, context, filters=None, set_zones=False, all_cells=False):

    if (filters is None):
        filters = {}
    if ('availability_zone' in filters):
        zone_filter = filters.pop('availability_zone')
        set_zones = True
    else:
        zone_filter = None
    services = self.cells_rpcapi.service_get_all(context, filters=filters)
    if set_zones:
        services = availability_zones.set_availability_zones(context, services)
        if (zone_filter is not None):
            services = [s for s in services if (s['availability_zone'] == zone_filter)]
        cell_paths = []
        for service in services:
            (cell_path, id) = cells_utils.split_cell_and_item(service['id'])
            (cell_path, host) = cells_utils.split_cell_and_item(service['host'])
            service['id'] = id
            service['host'] = host
            cell_paths.append(cell_path)
        services = obj_base.obj_make_list(context, objects.ServiceList(), objects.Service, services)
        services = [cells_utils.ServiceProxy(s, c) for (s, c) in zip(services, cell_paths)]
    return services
