You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@streampipes.apache.org by ri...@apache.org on 2020/06/15 21:42:26 UTC

[incubator-streampipes] branch STREAMPIPES-145 updated (e00001c -> 931507c)

This is an automated email from the ASF dual-hosted git repository.

riemer pushed a change to branch STREAMPIPES-145
in repository https://gitbox.apache.org/repos/asf/incubator-streampipes.git.


    from e00001c  [STREAMPIPES-145] Migrate matching error dialog
     new 05fd8c4  [STREAMPIPES-145] Fix bug in JSON serializer
     new f4e6550  [STREAMPIPES-145] Migrate welcome dialog
     new 931507c  [STREAMPIPES-145] Optimize imports

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../model/grounding/EventGrounding.java            | 13 ++++----
 .../model/grounding/TransportProtocol.java         | 14 --------
 .../pipeline-element-options.component.ts          |  1 -
 .../pipeline-element-recommendation.component.ts   |  3 +-
 ui/src/app/editor-v2/dialog/help/help.component.ts |  6 +---
 .../welcome-tour/welcome-tour.component.html}      | 39 +++++++++-------------
 .../welcome-tour.component.scss}                   |  0
 .../welcome-tour.component.ts}                     | 38 ++++++++++++---------
 ui/src/app/editor-v2/editor.component.ts           | 37 +++++++++++++++++---
 ui/src/app/editor-v2/editor.module.ts              |  9 +++--
 ui/src/app/editor-v2/model/editor.model.ts         |  4 +--
 .../services/editor-dialog-manager.service.ts      |  1 -
 ui/src/app/editor-v2/services/editor.service.ts    |  8 +++++
 ui/src/app/editor-v2/services/jsplumb.service.ts   |  6 ++--
 .../editor-v2/services/object-provider.service.ts  |  2 +-
 .../services/pipeline-positioning.service.ts       |  2 +-
 ui/src/app/editor-v2/utils/style-sanitizer.ts      |  2 +-
 17 files changed, 99 insertions(+), 86 deletions(-)
 copy ui/src/app/{editor/dialog/welcome-tour/welcome-tour-dialog.tmpl.html => editor-v2/dialog/welcome-tour/welcome-tour.component.html} (55%)
 copy ui/src/app/editor-v2/dialog/{matching-error/matching-error.component.scss => welcome-tour/welcome-tour.component.scss} (100%)
 copy ui/src/app/editor-v2/dialog/{matching-error/matching-error.component.ts => welcome-tour/welcome-tour.component.ts} (55%)


[incubator-streampipes] 03/03: [STREAMPIPES-145] Optimize imports

Posted by ri...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

riemer pushed a commit to branch STREAMPIPES-145
in repository https://gitbox.apache.org/repos/asf/incubator-streampipes.git

commit 931507cbd882339b7964cbb6fee52bd536e38532
Author: Dominik Riemer <ri...@fzi.de>
AuthorDate: Mon Jun 15 23:42:09 2020 +0200

    [STREAMPIPES-145] Optimize imports
---
 .../pipeline-element-options/pipeline-element-options.component.ts  | 1 -
 .../pipeline-element-recommendation.component.ts                    | 3 +--
 ui/src/app/editor-v2/dialog/help/help.component.ts                  | 6 +-----
 ui/src/app/editor-v2/editor.component.ts                            | 6 ++----
 ui/src/app/editor-v2/editor.module.ts                               | 5 +----
 ui/src/app/editor-v2/model/editor.model.ts                          | 4 ++--
 ui/src/app/editor-v2/services/editor-dialog-manager.service.ts      | 1 -
 ui/src/app/editor-v2/services/jsplumb.service.ts                    | 6 +++---
 ui/src/app/editor-v2/services/object-provider.service.ts            | 2 +-
 ui/src/app/editor-v2/services/pipeline-positioning.service.ts       | 2 +-
 ui/src/app/editor-v2/utils/style-sanitizer.ts                       | 2 +-
 11 files changed, 13 insertions(+), 25 deletions(-)

diff --git a/ui/src/app/editor-v2/components/pipeline-element-options/pipeline-element-options.component.ts b/ui/src/app/editor-v2/components/pipeline-element-options/pipeline-element-options.component.ts
index d1aa338..2e8699f 100644
--- a/ui/src/app/editor-v2/components/pipeline-element-options/pipeline-element-options.component.ts
+++ b/ui/src/app/editor-v2/components/pipeline-element-options/pipeline-element-options.component.ts
@@ -30,7 +30,6 @@ import {
   PipelineElementUnion
 } from "../../model/editor.model";
 import {SpDataStream, WildcardTopicDefinition} from "../../../core-model/gen/streampipes-model";
-import {PipelineElementTypeUtils} from "../../utils/editor.utils";
 import {EditorService} from "../../services/editor.service";
 import {PanelType} from "../../../core-ui/dialog/base-dialog/base-dialog.model";
 import {DialogService} from "../../../core-ui/dialog/base-dialog/base-dialog.service";
diff --git a/ui/src/app/editor-v2/components/pipeline-element-recommendation/pipeline-element-recommendation.component.ts b/ui/src/app/editor-v2/components/pipeline-element-recommendation/pipeline-element-recommendation.component.ts
index ff3cec0..17ba75e 100644
--- a/ui/src/app/editor-v2/components/pipeline-element-recommendation/pipeline-element-recommendation.component.ts
+++ b/ui/src/app/editor-v2/components/pipeline-element-recommendation/pipeline-element-recommendation.component.ts
@@ -18,9 +18,8 @@
 
 import {JsplumbService} from "../../services/jsplumb.service";
 import {Component, Input, OnInit} from "@angular/core";
-import {PipelineElementConfig, PipelineElementRecommendationLayout} from "../../model/editor.model";
+import {PipelineElementConfig} from "../../model/editor.model";
 import {DataProcessorInvocation} from "../../../core-model/gen/streampipes-model";
-import {DomSanitizer} from "@angular/platform-browser";
 import {SafeCss} from "../../utils/style-sanitizer";
 
 @Component({
diff --git a/ui/src/app/editor-v2/dialog/help/help.component.ts b/ui/src/app/editor-v2/dialog/help/help.component.ts
index 1a77f95..b42e576 100644
--- a/ui/src/app/editor-v2/dialog/help/help.component.ts
+++ b/ui/src/app/editor-v2/dialog/help/help.component.ts
@@ -19,11 +19,7 @@
 import {Component, Input} from "@angular/core";
 import {PipelineElementUnion} from "../../model/editor.model";
 import {PipelineElementService} from "../../../platform-services/apis/pipeline-element.service";
-import {
-  DataProcessorInvocation,
-  SpDataSet,
-  SpDataStream
-} from "../../../core-model/gen/streampipes-model";
+import {SpDataStream} from "../../../core-model/gen/streampipes-model";
 import {DialogRef} from "../../../core-ui/dialog/base-dialog/dialog-ref";
 import {PipelineElementTypeUtils} from "../../utils/editor.utils";
 
diff --git a/ui/src/app/editor-v2/editor.component.ts b/ui/src/app/editor-v2/editor.component.ts
index 83a3b84..bb52f53 100644
--- a/ui/src/app/editor-v2/editor.component.ts
+++ b/ui/src/app/editor-v2/editor.component.ts
@@ -21,20 +21,18 @@ import {EditorService} from "./services/editor.service";
 import {
     DataProcessorInvocation,
     DataSinkInvocation,
-    DataSourceDescription, SpDataSet,
+    DataSourceDescription,
+    SpDataSet,
     SpDataStream
 } from "../core-model/gen/streampipes-model";
 import {PipelineElementService} from "../platform-services/apis/pipeline-element.service";
 import {
     PipelineElementConfig,
-    PipelineElementHolder,
     PipelineElementType,
     PipelineElementUnion
 } from "./model/editor.model";
-import {EditorConstants} from "./constants/editor.constants";
 import {PipelineElementTypeUtils} from "./utils/editor.utils";
 import {AuthStatusService} from "../services/auth-status.service";
-import {MatchingErrorComponent} from "./dialog/matching-error/matching-error.component";
 import {PanelType} from "../core-ui/dialog/base-dialog/base-dialog.model";
 import {WelcomeTourComponent} from "./dialog/welcome-tour/welcome-tour.component";
 import {DialogService} from "../core-ui/dialog/base-dialog/base-dialog.service";
diff --git a/ui/src/app/editor-v2/editor.module.ts b/ui/src/app/editor-v2/editor.module.ts
index 81fb02b..353010d 100644
--- a/ui/src/app/editor-v2/editor.module.ts
+++ b/ui/src/app/editor-v2/editor.module.ts
@@ -24,7 +24,6 @@ import {MatTabsModule} from "@angular/material/tabs";
 import {CustomMaterialModule} from "../CustomMaterial/custom-material.module";
 import {FormsModule} from "@angular/forms";
 import {ElementIconText} from "../services/get-element-icon-text.service";
-import {InjectableRxStompConfig, RxStompService, rxStompServiceFactory} from "@stomp/ng2-stompjs";
 import {SemanticTypeUtilsService} from '../core-services/semantic-type/semantic-type-utils.service';
 import {EditorComponent} from "./editor.component";
 import {ConnectModule} from "../connect/connect.module";
@@ -43,8 +42,6 @@ import {PipelineComponent} from "./components/pipeline/pipeline.component";
 import {ObjectProvider} from "./services/object-provider.service";
 import {PipelineElementOptionsComponent} from "./components/pipeline-element-options/pipeline-element-options.component";
 import {PipelineElementRecommendationService} from "./services/pipeline-element-recommendation.service";
-import {PortalModule} from "@angular/cdk/portal";
-import {OverlayModule} from "@angular/cdk/overlay";
 import {CustomizeComponent} from "./dialog/customize/customize.component";
 import {MatProgressSpinnerModule} from "@angular/material/progress-spinner";
 import {CoreUiModule} from "../core-ui/core-ui.module";
@@ -54,7 +51,7 @@ import {CompatibleElementsComponent} from "./dialog/compatible-elements/compatib
 import {MatListModule} from "@angular/material/list";
 import {HelpComponent} from "./dialog/help/help.component";
 import {PipelineElementDocumentationComponent} from "./components/pipeline-element-documentation/pipeline-element-documentation.component";
-import { ShowdownModule } from 'ngx-showdown';
+import {ShowdownModule} from 'ngx-showdown';
 import {SafeCss} from "./utils/style-sanitizer";
 import {MatchingErrorComponent} from "./dialog/matching-error/matching-error.component";
 import {WelcomeTourComponent} from "./dialog/welcome-tour/welcome-tour.component";
diff --git a/ui/src/app/editor-v2/model/editor.model.ts b/ui/src/app/editor-v2/model/editor.model.ts
index 50e6db4..fdaf26f 100644
--- a/ui/src/app/editor-v2/model/editor.model.ts
+++ b/ui/src/app/editor-v2/model/editor.model.ts
@@ -18,10 +18,10 @@
 
 import {
   DataProcessorInvocation,
-  DataSinkInvocation, SpDataSet,
+  DataSinkInvocation,
+  SpDataSet,
   SpDataStream
 } from "../../core-model/gen/streampipes-model";
-import {EditorConstants} from "../constants/editor.constants";
 import {InjectionToken} from "@angular/core";
 
 export type PipelineElementHolder = {
diff --git a/ui/src/app/editor-v2/services/editor-dialog-manager.service.ts b/ui/src/app/editor-v2/services/editor-dialog-manager.service.ts
index a8785a9..83d218a 100644
--- a/ui/src/app/editor-v2/services/editor-dialog-manager.service.ts
+++ b/ui/src/app/editor-v2/services/editor-dialog-manager.service.ts
@@ -17,7 +17,6 @@
  */
 
 import * as angular from 'angular';
-import {CustomizeController} from "../../editor/dialog/customize-pipeline-element/customize.controller";
 import {MatchingErrorController} from "../../editor/dialog/matching-error/matching-error.controller";
 import {TopicSelectionDialog} from "../../editor/dialog/topic/topic-selection-modal.controller";
 import {PossibleElementsController} from "../../editor/dialog/possible-elements/possible-elements-dialog.controller";
diff --git a/ui/src/app/editor-v2/services/jsplumb.service.ts b/ui/src/app/editor-v2/services/jsplumb.service.ts
index 4df54c5..fa0c65c 100644
--- a/ui/src/app/editor-v2/services/jsplumb.service.ts
+++ b/ui/src/app/editor-v2/services/jsplumb.service.ts
@@ -18,12 +18,12 @@
 
 import {JsplumbConfigService} from "./jsplumb-config.service";
 import {JsplumbBridge} from "./jsplumb-bridge.service";
-import {Inject, Injectable} from "@angular/core";
+import {Injectable} from "@angular/core";
 import {PipelineElementConfig, PipelineElementUnion} from "../model/editor.model";
 import {PipelineElementTypeUtils} from "../utils/editor.utils";
-import * as angular from "angular";
 import {
-    DataProcessorInvocation, DataSinkInvocation,
+    DataProcessorInvocation,
+    DataSinkInvocation,
     SpDataSet,
     SpDataStream
 } from "../../core-model/gen/streampipes-model";
diff --git a/ui/src/app/editor-v2/services/object-provider.service.ts b/ui/src/app/editor-v2/services/object-provider.service.ts
index bbf1cff..3386c05 100644
--- a/ui/src/app/editor-v2/services/object-provider.service.ts
+++ b/ui/src/app/editor-v2/services/object-provider.service.ts
@@ -21,7 +21,7 @@ import {Injectable} from "@angular/core";
 import {RestApi} from "../../services/rest-api.service";
 import {JsplumbBridge} from "./jsplumb-bridge.service";
 import {InvocablePipelineElementUnion, PipelineElementConfig} from "../model/editor.model";
-import {InvocableStreamPipesEntity, Pipeline} from "../../core-model/gen/streampipes-model";
+import {Pipeline} from "../../core-model/gen/streampipes-model";
 import {EditorService} from "./editor.service";
 
 @Injectable()
diff --git a/ui/src/app/editor-v2/services/pipeline-positioning.service.ts b/ui/src/app/editor-v2/services/pipeline-positioning.service.ts
index 206daf0..2963125 100644
--- a/ui/src/app/editor-v2/services/pipeline-positioning.service.ts
+++ b/ui/src/app/editor-v2/services/pipeline-positioning.service.ts
@@ -21,7 +21,7 @@ import * as dagre from "dagre";
 import {JsplumbBridge} from "./jsplumb-bridge.service";
 import {JsplumbConfigService} from "./jsplumb-config.service";
 import {JsplumbService} from "./jsplumb.service";
-import {Inject, Injectable} from "@angular/core";
+import {Injectable} from "@angular/core";
 import {PipelineElementConfig} from "../model/editor.model";
 
 declare const jsPlumb: any;
diff --git a/ui/src/app/editor-v2/utils/style-sanitizer.ts b/ui/src/app/editor-v2/utils/style-sanitizer.ts
index a1c530d..39c945a 100644
--- a/ui/src/app/editor-v2/utils/style-sanitizer.ts
+++ b/ui/src/app/editor-v2/utils/style-sanitizer.ts
@@ -16,7 +16,7 @@
  *
  */
 
-import { Pipe, PipeTransform } from '@angular/core';
+import {Pipe, PipeTransform} from '@angular/core';
 import {DomSanitizer, SafeStyle} from "@angular/platform-browser";
 
 @Pipe({name: 'safeCss'})


[incubator-streampipes] 02/03: [STREAMPIPES-145] Migrate welcome dialog

Posted by ri...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

riemer pushed a commit to branch STREAMPIPES-145
in repository https://gitbox.apache.org/repos/asf/incubator-streampipes.git

commit f4e655040eed345a826d93c003e9a9eef832c0a6
Author: Dominik Riemer <ri...@fzi.de>
AuthorDate: Mon Jun 15 23:40:51 2020 +0200

    [STREAMPIPES-145] Migrate welcome dialog
---
 .../welcome-tour/welcome-tour.component.html       | 45 ++++++++++++++++++
 .../welcome-tour/welcome-tour.component.scss       | 19 ++++++++
 .../dialog/welcome-tour/welcome-tour.component.ts  | 53 ++++++++++++++++++++++
 ui/src/app/editor-v2/editor.component.ts           | 33 +++++++++++++-
 ui/src/app/editor-v2/editor.module.ts              |  4 +-
 ui/src/app/editor-v2/services/editor.service.ts    |  8 ++++
 6 files changed, 160 insertions(+), 2 deletions(-)

diff --git a/ui/src/app/editor-v2/dialog/welcome-tour/welcome-tour.component.html b/ui/src/app/editor-v2/dialog/welcome-tour/welcome-tour.component.html
new file mode 100644
index 0000000..16772ad
--- /dev/null
+++ b/ui/src/app/editor-v2/dialog/welcome-tour/welcome-tour.component.html
@@ -0,0 +1,45 @@
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one or more
+  ~ contributor license agreements.  See the NOTICE file distributed with
+  ~ this work for additional information regarding copyright ownership.
+  ~ The ASF licenses this file to You under the Apache License, Version 2.0
+  ~ (the "License"); you may not use this file except in compliance with
+  ~ the License.  You may obtain a copy of the License at
+  ~
+  ~    http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  ~
+  -->
+
+<div class="sp-dialog-container">
+    <div class="sp-dialog-content p-15" fxLayout="column">
+        <div fxFlex="100" fxLayoutAlign="center center" fxLayout="column">
+            <b><h2 class="welcome-animation">Hello!</h2></b>
+            <b><h3>Thank you for using StreamPipes.</h3></b>
+        </div>
+        <div><img src="assets/img/sp-pipeline-white-small.png"
+                  style="margin-left:auto;margin-right:auto;display:block;">
+        </div>
+        <div fxFlex="100" fxLayoutAlign="center center" fxLayout="column">
+            <div fxFlex="100" fxLayoutAlign="center center" fxLayout="column">
+                <b>StreamPipes is your self-service toolbox for real-time analytics.</b>
+                <p>If you are using StreamPipes for the first time, we recommend taking the interactive tour!</p>
+            </div>
+            <button mat-button mat-raised-button color="primary" (click)="startCreatePipelineTour()">Start Tour</button>
+        </div>
+    </div>
+    <mat-divider></mat-divider>
+    <div class="sp-dialog-actions actions-align-right" fxLayout="row">
+        <button mat-button mat-raised-button class="mat-basic" (click)="hideTourForever()" style="margin-right:10px;">
+            Do not show again
+        </button>
+        <button mat-button mat-raised-button class="mat-basic" (click)="close()">
+            Close
+        </button>
+    </div>
+</div>
\ No newline at end of file
diff --git a/ui/src/app/editor-v2/dialog/welcome-tour/welcome-tour.component.scss b/ui/src/app/editor-v2/dialog/welcome-tour/welcome-tour.component.scss
new file mode 100644
index 0000000..0a776e5
--- /dev/null
+++ b/ui/src/app/editor-v2/dialog/welcome-tour/welcome-tour.component.scss
@@ -0,0 +1,19 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+@import '../../../../scss/sp/sp-dialog.scss';
\ No newline at end of file
diff --git a/ui/src/app/editor-v2/dialog/welcome-tour/welcome-tour.component.ts b/ui/src/app/editor-v2/dialog/welcome-tour/welcome-tour.component.ts
new file mode 100644
index 0000000..4669e8e
--- /dev/null
+++ b/ui/src/app/editor-v2/dialog/welcome-tour/welcome-tour.component.ts
@@ -0,0 +1,53 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+import {DialogRef} from "../../../core-ui/dialog/base-dialog/dialog-ref";
+import {RestApi} from "../../../services/rest-api.service";
+import {ShepherdService} from "../../../services/tour/shepherd.service";
+import {Component} from "@angular/core";
+
+@Component({
+  selector: 'welcome-tour',
+  templateUrl: './welcome-tour.component.html',
+  styleUrls: ['./welcome-tour.component.scss']
+})
+export class WelcomeTourComponent {
+
+  user: any;
+
+  constructor(private DialogRef: DialogRef<WelcomeTourComponent>,
+              private RestApi: RestApi,
+              private ShepherdService: ShepherdService) {
+  }
+
+  startCreatePipelineTour() {
+    this.ShepherdService.startCreatePipelineTour();
+    this.close();
+  }
+
+  hideTourForever() {
+    this.user.hideTutorial = true;
+    this.RestApi.updateUserDetails(this.user).then(data => {
+      this.close();
+    });
+  }
+
+  close() {
+    this.DialogRef.close();
+  };
+}
diff --git a/ui/src/app/editor-v2/editor.component.ts b/ui/src/app/editor-v2/editor.component.ts
index ca2ecdb..83a3b84 100644
--- a/ui/src/app/editor-v2/editor.component.ts
+++ b/ui/src/app/editor-v2/editor.component.ts
@@ -33,6 +33,11 @@ import {
 } from "./model/editor.model";
 import {EditorConstants} from "./constants/editor.constants";
 import {PipelineElementTypeUtils} from "./utils/editor.utils";
+import {AuthStatusService} from "../services/auth-status.service";
+import {MatchingErrorComponent} from "./dialog/matching-error/matching-error.component";
+import {PanelType} from "../core-ui/dialog/base-dialog/base-dialog.model";
+import {WelcomeTourComponent} from "./dialog/welcome-tour/welcome-tour.component";
+import {DialogService} from "../core-ui/dialog/base-dialog/base-dialog.service";
 
 @Component({
     selector: 'editor',
@@ -65,6 +70,8 @@ export class EditorComponent implements OnInit {
     requiredSinkForTutorialAppId: any = "org.apache.streampipes.sinks.internal.jvm.dashboard";
     missingElementsForTutorial: any = [];
 
+    isTutorialOpen: boolean = false;
+
     tabs = [
         {
             title: 'Data Sets',
@@ -85,7 +92,9 @@ export class EditorComponent implements OnInit {
     ];
 
     constructor(private editorService: EditorService,
-                private pipelineElementService: PipelineElementService) {
+                private pipelineElementService: PipelineElementService,
+                private AuthStatusService: AuthStatusService,
+                private dialogService: DialogService) {
     }
 
     ngOnInit() {
@@ -117,6 +126,28 @@ export class EditorComponent implements OnInit {
         this.elementsLoaded[index] = true;
         if (this.elementsLoaded.every(e => e === true)) {
             this.allElementsLoaded = true;
+            this.checkForTutorial();
+        }
+    }
+
+    checkForTutorial() {
+        if (this.AuthStatusService.email != undefined) {
+            this.editorService
+                .getUserDetails()
+                .subscribe(user => {
+                    if ((!user.hideTutorial) && !this.isTutorialOpen) {
+                        if (this.requiredPipelineElementsForTourPresent()) {
+                            this.isTutorialOpen = true;
+                            this.dialogService.open(WelcomeTourComponent, {
+                                panelType: PanelType.STANDARD_PANEL,
+                                title: "Welcome to StreamPipes",
+                                data: {
+                                    "user": user
+                                }
+                            });
+                        }
+                    }
+                });
         }
     }
 
diff --git a/ui/src/app/editor-v2/editor.module.ts b/ui/src/app/editor-v2/editor.module.ts
index 9d82380..81fb02b 100644
--- a/ui/src/app/editor-v2/editor.module.ts
+++ b/ui/src/app/editor-v2/editor.module.ts
@@ -57,6 +57,7 @@ import {PipelineElementDocumentationComponent} from "./components/pipeline-eleme
 import { ShowdownModule } from 'ngx-showdown';
 import {SafeCss} from "./utils/style-sanitizer";
 import {MatchingErrorComponent} from "./dialog/matching-error/matching-error.component";
+import {WelcomeTourComponent} from "./dialog/welcome-tour/welcome-tour.component";
 
 @NgModule({
     imports: [
@@ -88,7 +89,8 @@ import {MatchingErrorComponent} from "./dialog/matching-error/matching-error.com
         PipelineElementRecommendationComponent,
         PipelineComponent,
         SavePipelineComponent,
-        SafeCss
+        SafeCss,
+        WelcomeTourComponent
     ],
     providers: [
         EditorService,
diff --git a/ui/src/app/editor-v2/services/editor.service.ts b/ui/src/app/editor-v2/services/editor.service.ts
index 7df13b7..5703c65 100644
--- a/ui/src/app/editor-v2/services/editor.service.ts
+++ b/ui/src/app/editor-v2/services/editor.service.ts
@@ -71,6 +71,14 @@ export class EditorService {
         return this.http.get(this.platformServicesCommons.unauthenticatedBasePath + "/categories/ec");
     }
 
+    getUserDetails(): Observable<any> {
+        return this.http.get(this.platformServicesCommons.authUserBasePath());
+    }
+
+    updateUserDetails(user) {
+        return this.http.put(this.platformServicesCommons.authUserBasePath(), user);
+    }
+
     updateCachedPipeline(rawPipelineModel: any) {
         return this.http.post(this.platformServicesCommons.authUserBasePath() + "/pipeline-cache", rawPipelineModel);
     }


[incubator-streampipes] 01/03: [STREAMPIPES-145] Fix bug in JSON serializer

Posted by ri...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

riemer pushed a commit to branch STREAMPIPES-145
in repository https://gitbox.apache.org/repos/asf/incubator-streampipes.git

commit 05fd8c4e6d8edca47e7c85795a7faccbc9580be2
Author: Dominik Riemer <ri...@fzi.de>
AuthorDate: Mon Jun 15 22:36:17 2020 +0200

    [STREAMPIPES-145] Fix bug in JSON serializer
---
 .../apache/streampipes/model/grounding/EventGrounding.java | 13 +++++++------
 .../streampipes/model/grounding/TransportProtocol.java     | 14 --------------
 2 files changed, 7 insertions(+), 20 deletions(-)

diff --git a/streampipes-model/src/main/java/org/apache/streampipes/model/grounding/EventGrounding.java b/streampipes-model/src/main/java/org/apache/streampipes/model/grounding/EventGrounding.java
index 15ef8fe..42d576f 100644
--- a/streampipes-model/src/main/java/org/apache/streampipes/model/grounding/EventGrounding.java
+++ b/streampipes-model/src/main/java/org/apache/streampipes/model/grounding/EventGrounding.java
@@ -18,21 +18,21 @@
 
 package org.apache.streampipes.model.grounding;
 
+import com.fasterxml.jackson.annotation.JsonIgnore;
 import io.fogsy.empire.annotations.RdfProperty;
 import io.fogsy.empire.annotations.RdfsClass;
 import org.apache.streampipes.model.base.UnnamedStreamPipesEntity;
 import org.apache.streampipes.model.util.Cloner;
 import org.apache.streampipes.vocabulary.StreamPipes;
 
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
 import javax.persistence.CascadeType;
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
 import javax.persistence.OneToMany;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
 
 @RdfsClass(StreamPipes.EVENT_GROUNDING)
 @Entity
@@ -80,7 +80,8 @@ public class EventGrounding extends UnnamedStreamPipesEntity {
 	public void setTransportProtocol(TransportProtocol transportProtocol) {
 		this.transportProtocols = Collections.singletonList(transportProtocol);
 	}
-	
+
+	@JsonIgnore
 	public TransportProtocol getTransportProtocol() {
 		return transportProtocols.get(0);
 	}
diff --git a/streampipes-model/src/main/java/org/apache/streampipes/model/grounding/TransportProtocol.java b/streampipes-model/src/main/java/org/apache/streampipes/model/grounding/TransportProtocol.java
index 36f2d01..8d89064 100644
--- a/streampipes-model/src/main/java/org/apache/streampipes/model/grounding/TransportProtocol.java
+++ b/streampipes-model/src/main/java/org/apache/streampipes/model/grounding/TransportProtocol.java
@@ -81,18 +81,4 @@ public abstract class TransportProtocol extends UnnamedStreamPipesEntity {
 		this.topicDefinition = topicDefinition;
 	}
 
-//	// TODO only kept for backwards compatibility, remove later
-//	@Deprecated
-//	public String getTopicName() {
-//		return topicDefinition.getActualTopicName();
-//	}
-//
-//	@Deprecated
-//	public void setTopicName(String topicName) {
-//		if (this.topicDefinition == null) {
-//			this.topicDefinition = new SimpleTopicDefinition();
-//		}
-//		this.topicDefinition.setActualTopicName(topicName);
-//	}
-
 }