diff --git a/dnet-app/apps/dnet-wf-manager/src/main/java/eu/dnetlib/wfs/manager/controller/ApiController.java b/dnet-app/apps/dnet-wf-manager/src/main/java/eu/dnetlib/wfs/manager/controller/ApiController.java index bac1d7b..c8fcdae 100644 --- a/dnet-app/apps/dnet-wf-manager/src/main/java/eu/dnetlib/wfs/manager/controller/ApiController.java +++ b/dnet-app/apps/dnet-wf-manager/src/main/java/eu/dnetlib/wfs/manager/controller/ApiController.java @@ -78,8 +78,8 @@ public class ApiController extends DnetRestController { } @GetMapping("/proc/{processId}") - public List getProcessExecution(@PathVariable final String processId) { - return Arrays.asList(this.wfManagerService.findProcessLog(processId)); + public WfJournalEntry getProcessExecution(@PathVariable final String processId) { + return this.wfManagerService.findProcessLog(processId); } @GetMapping("/sections") diff --git a/dnet-app/frontends/is/src/app/wf-confs/wf-conf-launcher.dialog.html b/dnet-app/frontends/is/src/app/wf-confs/wf-conf-launcher.dialog.html index 44249cb..6e55a5f 100644 --- a/dnet-app/frontends/is/src/app/wf-confs/wf-conf-launcher.dialog.html +++ b/dnet-app/frontends/is/src/app/wf-confs/wf-conf-launcher.dialog.html @@ -1,7 +1,5 @@

Workflow Launcher

- -
Complete execution diff --git a/dnet-app/frontends/is/src/app/wf-history/wf-history.component.ts b/dnet-app/frontends/is/src/app/wf-history/wf-history.component.ts index 0d9de38..f302fd0 100644 --- a/dnet-app/frontends/is/src/app/wf-history/wf-history.component.ts +++ b/dnet-app/frontends/is/src/app/wf-history/wf-history.component.ts @@ -276,6 +276,10 @@ export class WfHistoryClient extends ISClient { this.httpGet(url, onSuccess); } + findProcess(id: string, onSuccess: Function) { + this.httpGet('/proxy/byType/wf_manager/api/proc/' + encodeURIComponent(id), onSuccess); + } + } @Component({ @@ -288,13 +292,22 @@ export class WfRuntimeGraphDialog implements AfterViewInit { @ViewChild('mermaidGraph', { static: false }) mermaidGraph!: ElementRef; - constructor(public dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) public data: any, public dialog: MatDialog, public snackBar: MatSnackBar) { + constructor(public dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) public data: any, public dialog: MatDialog, public snackBar: MatSnackBar, public client: WfHistoryClient) { this.wf = data; } public ngAfterViewInit(): void { + this.updateGraph(); + } - const element: any = this.mermaidGraph.nativeElement; + public refresh(): void { + this.client.findProcess(this.wf.processId, (data: WfHistoryEntry) => { + this.wf = data; + this.updateGraph(); + }); + } + + private updateGraph(): void { /* flowchart TD A[Start] --> B{Is it?} @@ -303,7 +316,6 @@ export class WfRuntimeGraphDialog implements AfterViewInit { D --> B B -- No ----> E[End] */ - let code = "%%{ init: { 'theme': 'base', 'themeVariables': { 'fontSize' : '11px' } } }%%\n"; let cssMap: any = []; @@ -354,7 +366,9 @@ export class WfRuntimeGraphDialog implements AfterViewInit { code += "classDef default font-size:9pt\n"; + const element: Element = this.mermaidGraph.nativeElement; element.innerHTML = code; + element.removeAttribute('data-processed'); mermaid.initialize({ theme: "base", flowchart: { titleTopMargin: 0, useMaxWidth: false, htmlLabels: false } }); mermaid.run(); diff --git a/dnet-app/frontends/is/src/app/wf-history/wf-runtime-graph.dialog.html b/dnet-app/frontends/is/src/app/wf-history/wf-runtime-graph.dialog.html index c7ea26c..dca8810 100644 --- a/dnet-app/frontends/is/src/app/wf-history/wf-runtime-graph.dialog.html +++ b/dnet-app/frontends/is/src/app/wf-history/wf-runtime-graph.dialog.html @@ -1,4 +1,10 @@ -

Process {{wf.processId}}

+

Process {{wf.processId}} - {{wf.status} + {{wf.status}} +


@@ -6,4 +12,8 @@
 
 
+