mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-01-20 09:35:38 -05:00
Redoing Execution Plan Comparison Editor (#19375)
* Adding code for execution plan comparison editor * Handling floating promises and fixing a loc string * Fixing some polygon stuff * Fixing azdatagraph null check bug * Adding progress notification for similar areas * Removing some floating promises * Fixing button enabled state
This commit is contained in:
@@ -133,5 +133,23 @@ export class ExecutionPlanService implements IExecutionPlanService {
|
||||
return this._capabilitiesService.getCapabilities(providerId).connection.supportedExecutionPlanFileExtensions;
|
||||
}
|
||||
|
||||
getSupportedExecutionPlanExtensions(providerId: string): string[] | undefined {
|
||||
if (providerId) {
|
||||
return this._capabilitiesService.getCapabilities(providerId).connection.supportedExecutionPlanFileExtensions;
|
||||
} else {
|
||||
const supportedFileExtensionsSet: Set<string> = new Set();
|
||||
|
||||
Object.keys(this._capabilitiesService.providers).forEach(v => {
|
||||
const extensions = this._capabilitiesService.getCapabilities(v).connection.supportedExecutionPlanFileExtensions;
|
||||
if (extensions) {
|
||||
extensions.forEach(ext => {
|
||||
supportedFileExtensionsSet.add(ext);
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
return [...supportedFileExtensionsSet];
|
||||
}
|
||||
}
|
||||
_serviceBrand: undefined;
|
||||
}
|
||||
|
||||
@@ -30,7 +30,8 @@ export interface IExecutionPlanService {
|
||||
compareExecutionPlanGraph(firstPlanFile: azdata.executionPlan.ExecutionPlanGraphInfo, secondPlanFile: azdata.executionPlan.ExecutionPlanGraphInfo): Promise<azdata.executionPlan.ExecutionPlanComparisonResult>;
|
||||
|
||||
/**
|
||||
* Get execution plan file extensions supported by the provider.
|
||||
* Get execution plan file extensions supported by all registered providers.
|
||||
* @param providerId optional parameter to get extensions only supported by a particular provider.
|
||||
*/
|
||||
getSupportedExecutionPlanExtensionsForProvider(providerId: string): string[];
|
||||
getSupportedExecutionPlanExtensions(providerId?: string): string[];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user