Debounce promise-returning & async functions.
A function that delays calling fn
until after wait
milliseconds have elapsed since the last time it was called.
Resolved when the preference provider is ready to provide preferences It should be resolved by subclasses.
Dispose this object.
Informs the listeners that one or more preferences of this provider are changed. The listeners are able to find what was changed from the emitted event.
Retrieve the stored value for the given preference and resource URI.
the preference identifier.
the uri of the resource for which the preference is stored. This is used to retrieve
a potentially different value for the same preference for different resources, for example files.encoding
.
the value stored for the given preference and resourceUri if it exists, otherwise undefined
.
Retrieve the configuration URI for the given resource URI.
the uri of the resource or undefined
.
the section to return the URI for, e.g. tasks
or launch
. Defaults to settings.
the corresponding resource URI or undefined
if there is no valid URI.
Retrieves the first valid configuration URI contained by the given resource.
the uri of the container resource or undefined
.
the first valid configuration URI contained by the given resource undefined
if there is no valid configuration URI at all.
Retrieve the domain for this provider.
the domain or undefined
if this provider is suitable for all domains.
Resolve the value for the given preference and resource URI.
the preference identifier.
the URI of the resource for which this provider should resolve the preference. This is used to retrieve
a potentially different value for the same preference for different resources, for example files.encoding
.
an object containing the value stored for the given preference and resourceUri if it exists,
otherwise undefined
.
Stores a new value for the given preference key in the provider.
the preference key (typically the name).
the new preference value.
the URI of the resource for which the preference is stored.
a promise that only resolves if all changes were delivered.
If changes were made then implementation must either
await on this.emitPreferencesChangedEvent(...)
or
this.pendingChanges
if changes are fired indirectly.
Handles deep equality with the possibility of undefined
The PreferenceProvider is used to store and retrieve preference values. A PreferenceProvider does not operate in a global scope but is configured for one or more PreferenceScopes. The (default implementation for the) PreferenceService aggregates all PreferenceProviders and serves as a common facade for manipulating preference values.