diff --git a/docs/extensions/guides/ipc.md b/docs/extensions/guides/ipc.md index dbe61a13bc..91d811bdf0 100644 --- a/docs/extensions/guides/ipc.md +++ b/docs/extensions/guides/ipc.md @@ -48,8 +48,6 @@ import { registerListeners, IpcMain } from "./helpers/main"; export class ExampleExtensionMain extends LensMainExtension { onActivate() { IpcMain.createInstance(this); - - registerListeners(); } } ``` @@ -63,15 +61,17 @@ Lens will automatically clean up that store and all the handlers on deactivation ```typescript import { Store } from "@k8slens/extensions"; -export class IpcMain extends Store.MainIpcStore {} +export class IpcMain extends Store.MainIpcStore { + constructor(extension: LensMainExtension) { + super(extension); + + this.listenIpc("initialize", onInitialize); + } +} function onInitialize(event: Types.IpcMainEvent, id: string) { console.log(`starting to initialize: ${id}`); } - -export function registerListeners() { - IpcMain.getInstance().listenIpc("initialize", onInitialize); -} ``` In other files, it is not necessary to pass around any instances.