177
return;
178
}
180
>
this._attachSessionToRoot(sessionStr, repositoryRoot, workingDirectory);
181
});
182
}
183
184
private _attachSessionToRoot(sessionStr: string, repositoryRoot: URI, workingDirectory: string): void {
186
>
if (this._sessionRoot.get(sessionStr) === rootStr) {
187
this._sessionWorkingDirectory.set(sessionStr, workingDirectory);
188
this._ensureRootWatcher(rootStr, repositoryRoot);
189
return;
190
}
192
>
let sessions = this._rootSessions.get(rootStr);
193
>
if (!sessions) {
194
>
sessions = new Set<string>();
195
>
this._rootSessions.set(rootStr, sessions);
196
>
this._rootUris.set(rootStr, repositoryRoot);
197
>
}
198
>
sessions.add(sessionStr);
199
>
this._sessionRoot.set(sessionStr, rootStr);
200
>
this._sessionWorkingDirectory.set(sessionStr, workingDirectory);
201
>
this._ensureRootWatcher(rootStr, repositoryRoot);
202
>
}
203
204
private _releaseSessionRoot(sessionStr: string): void {