projects
/
arvados-workbench2.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
18315: Adds websocket collection event handling. Updates test.
[arvados-workbench2.git]
/
src
/
websocket
/
websocket.ts
diff --git
a/src/websocket/websocket.ts
b/src/websocket/websocket.ts
index b12658086c9493729c3ab9f183ed8764547ce16e..7c8e0171e6d38bb48286b3d23a341c5c881986f8 100644
(file)
--- a/
src/websocket/websocket.ts
+++ b/
src/websocket/websocket.ts
@@
-15,6
+15,7
@@
import { subprocessPanelActions } from "store/subprocess-panel/subprocess-panel-
import { projectPanelActions } from "store/project-panel/project-panel-action";
import { getProjectPanelCurrentUuid } from 'store/project-panel/project-panel-action';
import { allProcessesPanelActions } from 'store/all-processes-panel/all-processes-panel-action';
import { projectPanelActions } from "store/project-panel/project-panel-action";
import { getProjectPanelCurrentUuid } from 'store/project-panel/project-panel-action';
import { allProcessesPanelActions } from 'store/all-processes-panel/all-processes-panel-action';
+import { loadCollection } from 'store/workbench/workbench-actions';
export const initWebSocket = (config: Config, authService: AuthService, store: RootStore) => {
if (config.websocketUrl) {
export const initWebSocket = (config: Config, authService: AuthService, store: RootStore) => {
if (config.websocketUrl) {
@@
-29,6
+30,12
@@
export const initWebSocket = (config: Config, authService: AuthService, store: R
const messageListener = (store: RootStore) => (message: ResourceEventMessage) => {
if (message.eventType === LogEventType.CREATE || message.eventType === LogEventType.UPDATE) {
switch (message.objectKind) {
const messageListener = (store: RootStore) => (message: ResourceEventMessage) => {
if (message.eventType === LogEventType.CREATE || message.eventType === LogEventType.UPDATE) {
switch (message.objectKind) {
+ case ResourceKind.COLLECTION:
+ const currentCollection = store.getState().collectionPanel.item;
+ if (currentCollection && currentCollection.uuid === message.objectUuid) {
+ store.dispatch(loadCollection(message.objectUuid));
+ }
+ return;
case ResourceKind.CONTAINER_REQUEST:
if (store.getState().processPanel.containerRequestUuid === message.objectUuid) {
store.dispatch(loadProcess(message.objectUuid));
case ResourceKind.CONTAINER_REQUEST:
if (store.getState().processPanel.containerRequestUuid === message.objectUuid) {
store.dispatch(loadProcess(message.objectUuid));