51
52
registerProvider(scheme: string, provider: IFileSystemProvider): IDisposable {
54
throw new Error(`A filesystem provider for the scheme '${scheme}' is already registered.`);
55
}
57
>
mark(`code/registerFilesystem/${scheme}`);
58
>
59
>
const providerDisposables = new DisposableStore();
60
>
61
>
// Add provider with event
62
>
this.provider.set(scheme, provider);
63
>
this._onDidChangeFileSystemProviderRegistrations.fire({ added: true, scheme, provider });
64
>
65
>
// Forward events from provider
66
>
providerDisposables.add(provider.onDidChangeFile(changes => {
67
const event = new FileChangesEvent(changes, !this.isPathCaseSensitive(provider));
68