Skip to content

Commit 747d3b5

Browse files
committed
added disable method to model and added util file
1 parent 7ff321e commit 747d3b5

File tree

2 files changed

+17
-0
lines changed

2 files changed

+17
-0
lines changed

src/model.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import * as fs from "fs";
99
import * as path from "path";
1010
import { Repository } from "./repository";
1111
import { Svn } from "./svn";
12+
import { dispose } from "./util";
1213

1314
interface OpenRepository {
1415
repository: Repository;
@@ -29,6 +30,8 @@ export class Model {
2930

3031
if (this.enabled) {
3132
this.init();
33+
} else {
34+
this.disable();
3235
}
3336
}
3437

@@ -46,6 +49,15 @@ export class Model {
4649
this.scanWorkspaceFolders();
4750
}
4851

52+
private disable(): void {
53+
const openRepositories = [...this.openRepositories];
54+
55+
openRepositories.forEach(repository => r.dispose());
56+
57+
this.openRepositories = [];
58+
this.disposables = dispose(this.disposables);
59+
}
60+
4961
private onDidChangeWorkspaceFolders({
5062
added,
5163
removed

src/util.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
export function dispose(disposables: any[]): any[] {
2+
disposables.forEach(disposable => disposable.dispose());
3+
4+
return [];
5+
}

0 commit comments

Comments
 (0)