1
>
/*---------------------------------------------------------------------------------------------
configurationModels.ts
2
>
* Copyright (c) Microsoft Corporation. All rights reserved.
3
>
* Licensed under the MIT License. See License.txt in the project root for license information.
4
>
*--------------------------------------------------------------------------------------------*/
5
>
6
>
import { equals } from '../../../../base/common/objects.js';
7
>
import { toValuesTree, IConfigurationModel, IConfigurationOverrides, IConfigurationValue, IConfigurationChange } from '../../../../platform/configuration/common/configuration.js';
8
>
import { Configuration as BaseConfiguration, ConfigurationModelParser, ConfigurationModel, ConfigurationParseOptions } from '../../../../platform/configuration/common/configurationModels.js';
9
>
import { IStoredWorkspaceFolder } from '../../../../platform/workspaces/common/workspaces.js';
10
>
import { Workspace } from '../../../../platform/workspace/common/workspace.js';
11
>
import { ResourceMap } from '../../../../base/common/map.js';
12
>
import { URI } from '../../../../base/common/uri.js';
13
>
import { isBoolean } from '../../../../base/common/types.js';
14
>
import { distinct } from '../../../../base/common/arrays.js';
15
>
import { ILogService } from '../../../../platform/log/common/log.js';
16
>
import { IStringDictionary } from '../../../../base/common/collections.js';
17
>
18
>
export class WorkspaceConfigurationModelParser extends ConfigurationModelParser {
19
>
20
>
private _folders: IStoredWorkspaceFolder[] = [];
21
>
private _transient: boolean = false;
22
>
private _settingsModelParser: ConfigurationModelParser;
23
>
private _launchModel: ConfigurationModel;
24
>
private _tasksModel: ConfigurationModel;
25
>
26
>
constructor(name: string, logService: ILogService) {
27
super(name, logService);
28
this._settingsModelParser = new ConfigurationModelParser(name, logService);