From 677f7043398ae6046b0be0deaaf7a9728cc61736 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ev=C5=BEen=20Gasta?= <46690189+gastoner@users.noreply.github.com> Date: Tue, 21 Apr 2026 10:19:55 +0200 Subject: [PATCH] refactor: extracted duplicit code to function (#17154) Signed-off-by: Evzen Gasta --- packages/main/src/plugin/provider-registry.ts | 107 +++++++----------- 1 file changed, 44 insertions(+), 63 deletions(-) diff --git a/packages/main/src/plugin/provider-registry.ts b/packages/main/src/plugin/provider-registry.ts index b12df1a96be..fbd8e245811 100644 --- a/packages/main/src/plugin/provider-registry.ts +++ b/packages/main/src/plugin/provider-registry.ts @@ -1152,29 +1152,8 @@ export class ProviderRegistry { } finally { if (this.isProviderContainerConnection(providerConnectionInfo)) { this.fireUpdateContainerConnectionEvents(provider.id, providerConnectionInfo); - } else if (this.isProviderKubernetesConnectionInfo(providerConnectionInfo)) { - this._onDidUpdateKubernetesConnection.fire({ - providerId: provider.id, - connection: { - name: providerConnectionInfo.name, - endpoint: providerConnectionInfo.endpoint, - status: (): ProviderConnectionStatus => { - return 'started'; - }, - }, - status: 'started', - }); } else { - this._onDidUpdateVmConnection.fire({ - providerId: provider.id, - connection: { - name: providerConnectionInfo.name, - status: (): ProviderConnectionStatus => { - return 'started'; - }, - }, - status: 'started', - }); + this.fireConnectionUpdateEvent(provider.id, providerConnectionInfo, 'started'); } } } @@ -1250,47 +1229,7 @@ export class ProviderRegistry { } try { - if (this.isProviderContainerConnection(providerConnectionInfo)) { - const event = { - providerId: provider.id, - connection: { - displayName: providerConnectionInfo.displayName, - name: providerConnectionInfo.name, - type: providerConnectionInfo.type, - endpoint: providerConnectionInfo.endpoint, - status: (): ProviderConnectionStatus => { - return 'stopped'; - }, - }, - status: 'stopped' as ProviderConnectionStatus, - }; - this._onBeforeDidUpdateContainerConnection.fire(event); - this._onDidUpdateContainerConnection.fire(event); - this._onAfterDidUpdateContainerConnection.fire(event); - } else if (this.isProviderKubernetesConnectionInfo(providerConnectionInfo)) { - this._onDidUpdateKubernetesConnection.fire({ - providerId: provider.id, - connection: { - name: providerConnectionInfo.name, - endpoint: providerConnectionInfo.endpoint, - status: (): ProviderConnectionStatus => { - return 'stopped'; - }, - }, - status: 'stopped', - }); - } else { - this._onDidUpdateVmConnection.fire({ - providerId: provider.id, - connection: { - name: providerConnectionInfo.name, - status: (): ProviderConnectionStatus => { - return 'stopped'; - }, - }, - status: 'stopped', - }); - } + this.fireConnectionUpdateEvent(provider.id, providerConnectionInfo, 'stopped'); await lifecycle.stop(context, logHandler); } catch (err) { console.warn(`Can't stop connection ${provider.id}.${providerConnectionInfo.name}`, err); @@ -1603,6 +1542,48 @@ export class ProviderRegistry { return undefined; } + protected fireConnectionUpdateEvent( + providerId: string, + providerConnectionInfo: ProviderConnectionInfo, + status: ProviderConnectionStatus, + ): void { + if (this.isProviderContainerConnection(providerConnectionInfo)) { + const event = { + providerId, + connection: { + displayName: providerConnectionInfo.displayName, + name: providerConnectionInfo.name, + type: providerConnectionInfo.type, + endpoint: providerConnectionInfo.endpoint, + status: (): ProviderConnectionStatus => status, + }, + status, + }; + this._onBeforeDidUpdateContainerConnection.fire(event); + this._onDidUpdateContainerConnection.fire(event); + this._onAfterDidUpdateContainerConnection.fire(event); + } else if (this.isProviderKubernetesConnectionInfo(providerConnectionInfo)) { + this._onDidUpdateKubernetesConnection.fire({ + providerId, + connection: { + name: providerConnectionInfo.name, + endpoint: providerConnectionInfo.endpoint, + status: (): ProviderConnectionStatus => status, + }, + status, + }); + } else { + this._onDidUpdateVmConnection.fire({ + providerId, + connection: { + name: providerConnectionInfo.name, + status: (): ProviderConnectionStatus => status, + }, + status, + }); + } + } + protected fireUpdateContainerConnectionEvents( providerId: string, providerConnectionInfo: ProviderContainerConnectionInfo,