Initialize query storage dir in data extension module
This commit is contained in:
@@ -5,15 +5,43 @@ import { CodeQLCliServer } from "../cli";
|
|||||||
import { QueryRunner } from "../queryRunner";
|
import { QueryRunner } from "../queryRunner";
|
||||||
import { DatabaseManager } from "../local-databases";
|
import { DatabaseManager } from "../local-databases";
|
||||||
import { extLogger } from "../common";
|
import { extLogger } from "../common";
|
||||||
|
import { ensureDir } from "fs-extra";
|
||||||
|
import { join } from "path";
|
||||||
|
|
||||||
export class DataExtensionsEditorModule {
|
export class DataExtensionsEditorModule {
|
||||||
public constructor(
|
private readonly queryStorageDir: string;
|
||||||
|
|
||||||
|
private constructor(
|
||||||
private readonly ctx: ExtensionContext,
|
private readonly ctx: ExtensionContext,
|
||||||
private readonly databaseManager: DatabaseManager,
|
private readonly databaseManager: DatabaseManager,
|
||||||
private readonly cliServer: CodeQLCliServer,
|
private readonly cliServer: CodeQLCliServer,
|
||||||
private readonly queryRunner: QueryRunner,
|
private readonly queryRunner: QueryRunner,
|
||||||
private readonly queryStorageDir: string,
|
baseQueryStorageDir: string,
|
||||||
) {}
|
) {
|
||||||
|
this.queryStorageDir = join(
|
||||||
|
baseQueryStorageDir,
|
||||||
|
"data-extensions-editor-results",
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static async initialize(
|
||||||
|
ctx: ExtensionContext,
|
||||||
|
databaseManager: DatabaseManager,
|
||||||
|
cliServer: CodeQLCliServer,
|
||||||
|
queryRunner: QueryRunner,
|
||||||
|
queryStorageDir: string,
|
||||||
|
): Promise<DataExtensionsEditorModule> {
|
||||||
|
const dataExtensionsEditorModule = new DataExtensionsEditorModule(
|
||||||
|
ctx,
|
||||||
|
databaseManager,
|
||||||
|
cliServer,
|
||||||
|
queryRunner,
|
||||||
|
queryStorageDir,
|
||||||
|
);
|
||||||
|
|
||||||
|
await dataExtensionsEditorModule.initialize();
|
||||||
|
return dataExtensionsEditorModule;
|
||||||
|
}
|
||||||
|
|
||||||
public getCommands(): DataExtensionsEditorCommands {
|
public getCommands(): DataExtensionsEditorCommands {
|
||||||
return {
|
return {
|
||||||
@@ -35,4 +63,8 @@ export class DataExtensionsEditorModule {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private async initialize(): Promise<void> {
|
||||||
|
await ensureDir(this.queryStorageDir);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -861,18 +861,14 @@ async function activateWithInstalledDistribution(
|
|||||||
);
|
);
|
||||||
ctx.subscriptions.push(localQueries);
|
ctx.subscriptions.push(localQueries);
|
||||||
|
|
||||||
const dataExtensionsEditorQueryStorageDir = join(
|
const dataExtensionsEditorModule =
|
||||||
tmpDir.name,
|
await DataExtensionsEditorModule.initialize(
|
||||||
"data-extensions-editor-results",
|
ctx,
|
||||||
);
|
dbm,
|
||||||
await ensureDir(dataExtensionsEditorQueryStorageDir);
|
cliServer,
|
||||||
const dataExtensionsEditorModule = new DataExtensionsEditorModule(
|
qs,
|
||||||
ctx,
|
tmpDir.name,
|
||||||
dbm,
|
);
|
||||||
cliServer,
|
|
||||||
qs,
|
|
||||||
dataExtensionsEditorQueryStorageDir,
|
|
||||||
);
|
|
||||||
|
|
||||||
void extLogger.log("Initializing QLTest interface.");
|
void extLogger.log("Initializing QLTest interface.");
|
||||||
const testExplorerExtension = extensions.getExtension<TestHub>(
|
const testExplorerExtension = extensions.getExtension<TestHub>(
|
||||||
|
|||||||
Reference in New Issue
Block a user