Skip to content

Commit a2daad8

Browse files
committed
StudyDataManager
1 parent 4168b88 commit a2daad8

File tree

4 files changed

+22
-70
lines changed

4 files changed

+22
-70
lines changed

services/static-webserver/client/source/class/osparc/desktop/WorkbenchView.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,8 @@ qx.Class.define("osparc.desktop.WorkbenchView", {
5454
});
5555
},
5656

57-
openStudyDataManager: function(node) {
58-
const win = osparc.widget.StudyDataManager.popUpInWindow(null, node.getNodeId(), node.getLabel());
57+
openNodeDataManager: function(node) {
58+
const win = osparc.widget.StudyDataManager.popUpInWindow(node.getStudy().getUuid(), node.getNodeId(), node.getLabel());
5959
const closeBtn = win.getChildControl("close-button");
6060
osparc.utils.Utils.setIdToWidget(closeBtn, "nodeDataManagerCloseBtn");
6161
}
@@ -1046,7 +1046,7 @@ qx.Class.define("osparc.desktop.WorkbenchView", {
10461046
allowGrowY: false
10471047
});
10481048
osparc.utils.Utils.setIdToWidget(nodeFilesBtn, "nodeFilesBtn");
1049-
nodeFilesBtn.addListener("execute", () => this.self().openStudyDataManager(node));
1049+
nodeFilesBtn.addListener("execute", () => this.self().openNodeDataManager(node));
10501050
outputsBox.add(nodeFilesBtn);
10511051

10521052
const outputs = new osparc.desktop.PanelView(this.tr("Outputs"), outputsBox);

services/static-webserver/client/source/class/osparc/file/FilesTree.js

Lines changed: 10 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -186,41 +186,26 @@ qx.Class.define("osparc.file.FilesTree", {
186186
}
187187
this.__itemsToTree(locationId, path, items, studyModel);
188188

189-
// select study item
190189
this.setSelection(new qx.data.Array([studyModel]));
191190
this.__selectionChanged();
192191
});
193192
},
194193

195-
populateNodeTree(nodeId) {
194+
populateNodeTree(studyId, nodeId) {
196195
const treeName = "Node Files";
197196
this.__resetTree(treeName);
198-
const rootModel = this.getModel();
199-
this.self().addLoadingChild(rootModel);
197+
const nodeModel = this.getModel();
198+
this.self().addLoadingChild(nodeModel);
200199

201200
const dataStore = osparc.store.Data.getInstance();
202-
return dataStore.getNodeFiles(nodeId)
203-
.then(files => {
204-
const newChildren = osparc.data.Converters.fromDSMToVirtualTreeModel(0, null, files);
205-
if (newChildren.length && // location
206-
newChildren[0].children.length && // study
207-
newChildren[0].children[0].children.length) { // node
208-
const nodeData = newChildren[0].children[0].children[0];
209-
const nodeTreeName = nodeData.label;
210-
this.__resetTree(nodeTreeName, nodeId);
211-
const rootNodeModel = this.getModel();
212-
if (nodeData.children.length) {
213-
const nodeItemsOnly = nodeData.children;
214-
this.__itemsToNode(nodeItemsOnly);
215-
}
216-
this.openNode(rootNodeModel);
201+
const locationId = 0;
202+
const path = encodeURIComponent(studyId) + "/" + encodeURIComponent(nodeId);
203+
return dataStore.getItemsByLocationAndPath(locationId, path)
204+
.then(items => {
205+
this.__itemsToTree(0, path, items, nodeModel);
217206

218-
// select node item
219-
this.setSelection(new qx.data.Array([rootNodeModel]));
220-
this.__selectionChanged();
221-
} else {
222-
rootModel.getChildren().removeAll();
223-
}
207+
this.setSelection(new qx.data.Array([nodeModel]));
208+
this.__selectionChanged();
224209
});
225210
},
226211

services/static-webserver/client/source/class/osparc/store/Data.js

Lines changed: 0 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -148,31 +148,6 @@ qx.Class.define("osparc.store.Data", {
148148
});
149149
},
150150

151-
getNodeFiles: function(nodeId) {
152-
return new Promise((resolve, reject) => {
153-
const nodePath = encodeURIComponent(nodeId);
154-
const params = {
155-
url: {
156-
locationId: 0,
157-
path: nodePath,
158-
}
159-
};
160-
osparc.data.Resources.fetch("storagePaths", "getPaths", params)
161-
.then(files => {
162-
console.log("Node Files", files);
163-
if (files && files.length>0) {
164-
resolve(files);
165-
} else {
166-
resolve([]);
167-
}
168-
})
169-
.catch(err => {
170-
console.error(err);
171-
reject([]);
172-
});
173-
});
174-
},
175-
176151
getPresignedLink: function(download = true, locationId, fileUuid, fileSize) {
177152
return new Promise((resolve, reject) => {
178153
if (download && !osparc.data.Permissions.getInstance().canDo("study.node.data.pull", true)) {

services/static-webserver/client/source/class/osparc/widget/StudyDataManager.js

Lines changed: 9 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -42,16 +42,10 @@ qx.Class.define("osparc.widget.StudyDataManager", {
4242

4343
this._setLayout(new qx.ui.layout.VBox(10));
4444

45-
if (studyId) {
46-
this.set({
47-
studyId
48-
});
49-
}
45+
this.setStudyId(studyId);
5046

5147
if (nodeId) {
52-
this.set({
53-
nodeId
54-
});
48+
this.setNodeId(nodeId);
5549
}
5650

5751
this.__buildLayout();
@@ -113,11 +107,10 @@ qx.Class.define("osparc.widget.StudyDataManager", {
113107

114108
const foldersTree = treeFolderView.getChildControl("folder-tree");
115109
foldersTree.resetCache();
116-
if (this.getStudyId()) {
117-
foldersTree.populateStudyTree(this.getStudyId());
118-
}
119110
if (this.getNodeId()) {
120-
foldersTree.populateNodeTree(this.getNodeId());
111+
foldersTree.populateNodeTree(this.getStudyId(), this.getNodeId());
112+
} else if (this.getStudyId()) {
113+
foldersTree.populateStudyTree(this.getStudyId());
121114
}
122115

123116
const folderViewer = treeFolderView.getChildControl("folder-viewer");
@@ -144,13 +137,12 @@ qx.Class.define("osparc.widget.StudyDataManager", {
144137
treeFolderView.openPath(path);
145138
};
146139

147-
if (this.getStudyId()) {
148-
foldersTree.populateStudyTree(this.getStudyId())
140+
if (this.getNodeId()) {
141+
foldersTree.populateNodeTree(this.getStudyId(), this.getNodeId())
149142
.then(() => openSameFolder())
150143
.catch(err => console.error(err));
151-
}
152-
if (this.getNodeId()) {
153-
foldersTree.populateNodeTree(this.getNodeId())
144+
} else if (this.getStudyId()) {
145+
foldersTree.populateStudyTree(this.getStudyId())
154146
.then(() => openSameFolder())
155147
.catch(err => console.error(err));
156148
}

0 commit comments

Comments
 (0)