Round 5 fixes: workerpool resize shrink, validator lazy session close, plugin config error handling, 422 message detail, tests
This commit is contained in:
@@ -82,10 +82,13 @@ class PluginService:
|
||||
raise PluginNotFoundException(plugin_id)
|
||||
safe_config = {k: v for k, v in config.items() if k in plugin.default_config}
|
||||
if not safe_config:
|
||||
return False
|
||||
raise ValidationException("配置项无效或为空")
|
||||
plugin.update_config(safe_config)
|
||||
async with get_db() as db:
|
||||
return await self.plugin_settings_repo.set_config(db, plugin_id, plugin.config)
|
||||
success = await self.plugin_settings_repo.set_config(db, plugin_id, plugin.config)
|
||||
if not success:
|
||||
raise ProxyPoolException("保存插件配置失败", 500)
|
||||
return True
|
||||
|
||||
def get_plugin(self, plugin_id: str) -> Optional[BaseCrawlerPlugin]:
|
||||
return registry.get(plugin_id)
|
||||
|
||||
Reference in New Issue
Block a user