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

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

commit cdf9c4a41f8976225c41a448c01411756ff7a2d8
Author: Dominik Riemer <[email protected]>
AuthorDate: Wed Jan 5 16:54:47 2022 +0100

    [STREAMPIPES-494] Refactor custom output
---
 .../matching/v2/pipeline/UpdateOutputStrategiesStep.java      | 11 +++++++++++
 .../custom-output/custom-output-strategy.component.html       |  6 +++---
 .../pipeline-assembly/pipeline-assembly.component.ts          |  2 --
 ui/src/app/editor/components/pipeline/pipeline.component.ts   |  5 ++---
 4 files changed, 16 insertions(+), 8 deletions(-)

diff --git 
a/streampipes-pipeline-management/src/main/java/org/apache/streampipes/manager/matching/v2/pipeline/UpdateOutputStrategiesStep.java
 
b/streampipes-pipeline-management/src/main/java/org/apache/streampipes/manager/matching/v2/pipeline/UpdateOutputStrategiesStep.java
index 2040732..d22ccd3 100644
--- 
a/streampipes-pipeline-management/src/main/java/org/apache/streampipes/manager/matching/v2/pipeline/UpdateOutputStrategiesStep.java
+++ 
b/streampipes-pipeline-management/src/main/java/org/apache/streampipes/manager/matching/v2/pipeline/UpdateOutputStrategiesStep.java
@@ -28,6 +28,7 @@ import 
org.apache.streampipes.model.pipeline.PipelineElementValidationInfo;
 
 import java.util.List;
 import java.util.Set;
+import java.util.stream.Collectors;
 
 public class UpdateOutputStrategiesStep extends AbstractPipelineValidationStep 
{
 
@@ -45,6 +46,9 @@ public class UpdateOutputStrategiesStep extends 
AbstractPipelineValidationStep {
         .forEach(strategy -> {
           PropertySelectorGenerator generator = getGenerator(inputStreams, 
strategy);
           strategy.setAvailablePropertyKeys(generator.generateSelectors());
+          // delete selected keys that are not present as available keys
+          List<String> selected = getValidSelectedPropertyKeys(strategy);
+          strategy.setSelectedPropertyKeys(selected);
         });
     }
   }
@@ -64,4 +68,11 @@ public class UpdateOutputStrategiesStep extends 
AbstractPipelineValidationStep {
      );
    }
   }
+
+  private List<String> getValidSelectedPropertyKeys(CustomOutputStrategy 
strategy) {
+    return strategy
+            .getSelectedPropertyKeys()
+            .stream()
+            .filter(p -> 
strategy.getAvailablePropertyKeys().contains(p)).collect(Collectors.toList());
+  }
 }
diff --git 
a/ui/src/app/editor/components/output-strategy/custom-output/custom-output-strategy.component.html
 
b/ui/src/app/editor/components/output-strategy/custom-output/custom-output-strategy.component.html
index 9d169bc..288298b 100644
--- 
a/ui/src/app/editor/components/output-strategy/custom-output/custom-output-strategy.component.html
+++ 
b/ui/src/app/editor/components/output-strategy/custom-output/custom-output-strategy.component.html
@@ -18,7 +18,7 @@
 <div fxFlex="100" fxLayout="column">
     <div fxFlex="100" fxLayout="row" fxLayoutAlign="start center">
         <h5 
style="margin-right:10px;">{{selectedElement.inputStreams[0].name}}</h5>
-        <button mat-button mat-raised-button color="primary" 
class="small-button"
+        <button mat-button mat-raised-button color="accent" 
class="small-button"
                 (click)="selectAll(collectedPropertiesFirstStream)"
                 style="margin-right:10px;margin-left:10px;" 
[disabled]="restrictedEditMode">Select all
         </button>
@@ -34,7 +34,7 @@
     <div fxLayout="column" fxFlex="100" 
*ngIf="collectedPropertiesSecondStream.length > 0">
         <div fxFlex="100" fxLayout="row" fxLayoutAlign="start center">
             <h5 
style="margin-right:10px;">{{selectedElement.inputStreams[1].name}}</h5>
-            <button mat-button mat-raised-button color="primary" 
class="small-button"
+            <button mat-button mat-raised-button color="accent" 
class="small-button"
                     (click)="selectAll(collectedPropertiesSecondStream)"
                     style="margin-right:10px;margin-left:10px;" 
[disabled]="restrictedEditMode">Select all
             </button>
@@ -48,4 +48,4 @@
                                 [layer]="0" 
[restrictedEditMode]="restrictedEditMode"></property-selection>
         </div>
     </div>
-</div>
\ No newline at end of file
+</div>
diff --git 
a/ui/src/app/editor/components/pipeline-assembly/pipeline-assembly.component.ts 
b/ui/src/app/editor/components/pipeline-assembly/pipeline-assembly.component.ts
index 87a422e..28f6b40 100644
--- 
a/ui/src/app/editor/components/pipeline-assembly/pipeline-assembly.component.ts
+++ 
b/ui/src/app/editor/components/pipeline-assembly/pipeline-assembly.component.ts
@@ -216,9 +216,7 @@ export class PipelineAssemblyComponent implements OnInit, 
AfterViewInit {
      * Sends the pipeline to the server
      */
     submit() {
-        console.log(this.rawPipelineModel);
         const pipeline = 
this.objectProvider.makeFinalPipeline(this.rawPipelineModel);
-        console.log(pipeline);
         
this.pipelinePositioningService.collectPipelineElementPositions(this.pipelineCanvasMetadata,
 this.rawPipelineModel);
         pipeline.name = this.currentPipelineName;
         pipeline.description = this.currentPipelineDescription;
diff --git a/ui/src/app/editor/components/pipeline/pipeline.component.ts 
b/ui/src/app/editor/components/pipeline/pipeline.component.ts
index 62a5eca..1fef527 100644
--- a/ui/src/app/editor/components/pipeline/pipeline.component.ts
+++ b/ui/src/app/editor/components/pipeline/pipeline.component.ts
@@ -391,14 +391,13 @@ export class PipelineComponent implements OnInit, 
OnDestroy {
 
   modifyPipeline(pipelineModifications) {
     if (pipelineModifications) {
-      console.log(pipelineModifications);
       pipelineModifications.forEach(modification => {
         const id = modification.domId;
         if (id !== 'undefined') {
           const pe = this.objectProvider.findElement(id, 
this.rawPipelineModel);
           (pe.payload as InvocablePipelineElementUnion).staticProperties = 
modification.staticProperties;
-          if (pe instanceof DataProcessorInvocation) {
-            (pe.payload as DataProcessorInvocation).outputStrategies = 
modification.pipelineElement.outputStrategies;
+          if (pe.payload instanceof DataProcessorInvocation) {
+            (pe.payload as DataProcessorInvocation).outputStrategies = 
modification.outputStrategies;
           }
           (pe.payload as InvocablePipelineElementUnion).inputStreams = 
modification.inputStreams;
         }

Reply via email to