summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/ide/lib/common/model_manager.js
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/javascripts/ide/lib/common/model_manager.js')
-rw-r--r--app/assets/javascripts/ide/lib/common/model_manager.js28
1 files changed, 12 insertions, 16 deletions
diff --git a/app/assets/javascripts/ide/lib/common/model_manager.js b/app/assets/javascripts/ide/lib/common/model_manager.js
index 57d5e59a88b..bd9b8fc3fcc 100644
--- a/app/assets/javascripts/ide/lib/common/model_manager.js
+++ b/app/assets/javascripts/ide/lib/common/model_manager.js
@@ -3,31 +3,30 @@ import Disposable from './disposable';
import Model from './model';
export default class ModelManager {
- constructor(monaco) {
- this.monaco = monaco;
+ constructor() {
this.disposable = new Disposable();
this.models = new Map();
}
- hasCachedModel(path) {
- return this.models.has(path);
+ hasCachedModel(key) {
+ return this.models.has(key);
}
- getModel(path) {
- return this.models.get(path);
+ getModel(key) {
+ return this.models.get(key);
}
- addModel(file) {
- if (this.hasCachedModel(file.path)) {
- return this.getModel(file.path);
+ addModel(file, head = null) {
+ if (this.hasCachedModel(file.key)) {
+ return this.getModel(file.key);
}
- const model = new Model(this.monaco, file);
+ const model = new Model(file, head);
this.models.set(model.path, model);
this.disposable.add(model);
eventHub.$on(
- `editor.update.model.dispose.${file.path}`,
+ `editor.update.model.dispose.${file.key}`,
this.removeCachedModel.bind(this, file),
);
@@ -35,12 +34,9 @@ export default class ModelManager {
}
removeCachedModel(file) {
- this.models.delete(file.path);
+ this.models.delete(file.key);
- eventHub.$off(
- `editor.update.model.dispose.${file.path}`,
- this.removeCachedModel,
- );
+ eventHub.$off(`editor.update.model.dispose.${file.key}`, this.removeCachedModel);
}
dispose() {