72
73
constructor(
75
>
@IConfigurationService private readonly configurationService: IConfigurationService,
76
>
@IWorkspaceTrustEnablementService private readonly workspaceTrustEnablementService: IWorkspaceTrustEnablementService,
77
>
@ILogService private readonly logService: ILogService,
78
>
) {
79
>
super();
80
>
81
>
// Workspace trust request type (settings.json)
82
>
this._configuredExtensionWorkspaceTrustRequestMap = new ExtensionIdentifierMap<{ supported: ExtensionUntrustedWorkspaceSupportType; version?: string }>();
83
>
const configuredExtensionWorkspaceTrustRequests = configurationService.inspect<{ [key: string]: { supported: ExtensionUntrustedWorkspaceSupportType; version?: string } }>(WORKSPACE_TRUST_EXTENSION_SUPPORT).userValue || {};
84
>
for (const id of Object.keys(configuredExtensionWorkspaceTrustRequests)) {
85
this._configuredExtensionWorkspaceTrustRequestMap.set(id, configuredExtensionWorkspaceTrustRequests[id]);
86
}
88
>
// Workspace trust request type (product.json)
89
>
this._productExtensionWorkspaceTrustRequestMap = new Map<string, ExtensionUntrustedWorkspaceSupport>();
90
>
if (productService.extensionUntrustedWorkspaceSupport) {
91
for (const id of Object.keys(productService.extensionUntrustedWorkspaceSupport)) {
92
this._productExtensionWorkspaceTrustRequestMap.set(id, productService.extensionUntrustedWorkspaceSupport[id]);
93
}
94
}
96
97
canExecuteOnSessionsWindow(manifest: IExtensionManifest): boolean {