mirror of
https://github.com/QwenLM/qwen-code.git
synced 2025-12-21 01:07:46 +00:00
Minor refactoring of VS Code companion extension code (#4761)
This commit is contained in:
@@ -6,30 +6,38 @@
|
||||
|
||||
import * as vscode from 'vscode';
|
||||
import { IDEServer } from './ide-server';
|
||||
import { createLogger } from './utils/logger';
|
||||
|
||||
let ideServer: IDEServer;
|
||||
let logger: vscode.OutputChannel;
|
||||
let log: (message: string) => void = () => {};
|
||||
|
||||
export async function activate(context: vscode.ExtensionContext) {
|
||||
logger = vscode.window.createOutputChannel('Gemini CLI IDE Companion');
|
||||
logger.appendLine('Starting Gemini CLI IDE Companion server...');
|
||||
ideServer = new IDEServer(logger);
|
||||
log = createLogger(context, logger);
|
||||
|
||||
log('Extension activated');
|
||||
ideServer = new IDEServer(log);
|
||||
try {
|
||||
await ideServer.start(context);
|
||||
} catch (err) {
|
||||
const message = err instanceof Error ? err.message : String(err);
|
||||
logger.appendLine(`Failed to start IDE server: ${message}`);
|
||||
log(`Failed to start IDE server: ${message}`);
|
||||
}
|
||||
}
|
||||
|
||||
export function deactivate() {
|
||||
if (ideServer) {
|
||||
logger.appendLine('Deactivating Gemini CLI IDE Companion...');
|
||||
return ideServer.stop().finally(() => {
|
||||
export async function deactivate(): Promise<void> {
|
||||
log('Extension deactivated');
|
||||
try {
|
||||
if (ideServer) {
|
||||
await ideServer.stop();
|
||||
}
|
||||
} catch (err) {
|
||||
const message = err instanceof Error ? err.message : String(err);
|
||||
log(`Failed to stop IDE server during deactivation: ${message}`);
|
||||
} finally {
|
||||
if (logger) {
|
||||
logger.dispose();
|
||||
});
|
||||
}
|
||||
if (logger) {
|
||||
logger.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user