'Returns a list of snapshots, transformed through view builder.'

def _items(self, req, is_detail=True):

    context = req.environ['cinder.context']
    req_version = req.api_version_request
    search_opts = req.GET.copy()
    (sort_keys, sort_dirs) = common.get_sort_params(search_opts)
    (marker, limit, offset) = common.get_pagination_params(search_opts)
    self._process_snapshot_filtering(context=context, filters=search_opts, req_version=req_version)
    self._format_snapshot_filter_options(search_opts)
    req_version = req.api_version_request
    if (req_version.matches('3.30', None) and ('name' in sort_keys)):
        sort_keys[sort_keys.index('name')] = 'display_name'
    if ('name' in search_opts):
        search_opts['display_name'] = search_opts.pop('name')
    snapshots = self.volume_api.get_all_snapshots(context, search_opts=search_opts, marker=marker, limit=limit, sort_keys=sort_keys, sort_dirs=sort_dirs, offset=offset)
    req.cache_db_snapshots(snapshots.objects)
    if is_detail:
        snapshots = self._view_builder.detail_list(req, snapshots.objects)
    else:
        snapshots = self._view_builder.summary_list(req, snapshots.objects)
    return snapshots
