执行增强清理任务
(self)
| 271 | self.ide_name = get_ide_display_name(ide_type) |
| 272 | |
| 273 | def run(self): |
| 274 | """执行增强清理任务""" |
| 275 | import asyncio |
| 276 | try: |
| 277 | self.emit_progress(f"开始增强清理 {self.ide_name} (模式: {self.mode})") |
| 278 | self.emit_status(f"正在执行增强清理...", "info") |
| 279 | |
| 280 | # 导入清理功能 |
| 281 | from augment_tools_core.database_manager import clean_ide_comprehensive |
| 282 | |
| 283 | # 执行异步清理 |
| 284 | async def run_cleanup(): |
| 285 | return await clean_ide_comprehensive( |
| 286 | ide_type=self.ide_type, |
| 287 | mode=self.mode, |
| 288 | keyword=self.keyword, |
| 289 | force_delete=self.force_delete, |
| 290 | kill_processes=self.kill_processes |
| 291 | ) |
| 292 | |
| 293 | # 在新的事件循环中运行 |
| 294 | try: |
| 295 | loop = asyncio.get_event_loop() |
| 296 | except RuntimeError: |
| 297 | loop = asyncio.new_event_loop() |
| 298 | asyncio.set_event_loop(loop) |
| 299 | |
| 300 | result = loop.run_until_complete(run_cleanup()) |
| 301 | |
| 302 | if self.is_cancelled: |
| 303 | return |
| 304 | |
| 305 | if result["success"]: |
| 306 | # 显示详细结果 |
| 307 | self.emit_progress("清理结果:") |
| 308 | if result.get("database_cleaned"): |
| 309 | self.emit_progress(f" 数据库清理: 删除 {result.get('database_entries_removed', 0)} 个条目") |
| 310 | if result.get("files_deleted", 0) > 0: |
| 311 | self.emit_progress(f" 文件删除: {result['files_deleted']} 个文件") |
| 312 | self.emit_progress(f" - globalStorage: {result.get('global_storage_files', 0)} 个") |
| 313 | self.emit_progress(f" - workspaceStorage: {result.get('workspace_storage_files', 0)} 个") |
| 314 | if result.get("processes_killed", 0) > 0: |
| 315 | self.emit_progress(f" 进程终止: {result['processes_killed']} 个进程") |
| 316 | |
| 317 | self.emit_progress("增强清理完成。") |
| 318 | self.emit_status("增强清理完成", "success") |
| 319 | self.task_completed.emit(True) |
| 320 | else: |
| 321 | error_messages = result.get("errors", ["未知错误"]) |
| 322 | for error in error_messages: |
| 323 | self.emit_progress(f"错误: {error}") |
| 324 | self.emit_status("增强清理失败", "error") |
| 325 | self.task_completed.emit(False) |
| 326 | |
| 327 | except Exception as e: |
| 328 | self.emit_progress(f"增强清理时发生错误: {str(e)}") |
| 329 | self.emit_status(f"清理失败: {str(e)}", "error") |
| 330 | self.task_completed.emit(False) |
nothing calls this directly
no test coverage detected