languageServicePool.ts•980 B
import type { LanguageServerService } from '../../src/languageServerService'
import type { LanguageServerManager } from '../../src/languageServerManager'
/**
* Language Service Pool for tests to reuse instances and reduce memory usage
*/
export class LanguageServicePool {
private static instances = new Map<string, LanguageServerService | LanguageServerManager>()
static getService(key: string): LanguageServerService | undefined {
return this.instances.get(key) as LanguageServerService | undefined
}
static getManager(key: string): LanguageServerManager | undefined {
return this.instances.get(key) as LanguageServerManager | undefined
}
static setInstance(key: string, instance: LanguageServerService | LanguageServerManager): void {
this.instances.set(key, instance)
}
static clear(): void {
this.instances.clear()
}
static dispose(key: string): void {
this.instances.delete(key)
}
}