def _generate_restore_response(self, async_task=None): """ :returns: A file-like object containing response content. """ username = self.restore_user.username count_items = self.params.include_item_count with RestoreContent(username, count_items) as content: for provider in get_element_providers(self.timing_context): with self.timing_context(provider.__class__.__name__): content.extend(provider.get_elements(self.restore_state)) for provider in get_async_providers(self.timing_context, async_task): with self.timing_context(provider.__class__.__name__): provider.extend_response(self.restore_state, content) return content.get_fileobj()