This is an automated email from the ASF dual-hosted git repository. riemer pushed a commit to branch STREAMPIPES-319 in repository https://gitbox.apache.org/repos/asf/incubator-streampipes.git
commit ea02ac9cd59c816d0f29f6a74c89f5ee2e0aeb9f Merge: 8ca270e 152237e Author: Dominik Riemer <[email protected]> AuthorDate: Wed Jul 7 22:43:59 2021 +0200 Merge branch 'STREAMPIPES-380' into STREAMPIPES-319 README.md | 2 +- RELEASE_NOTES.md | 95 ++++++++- .../pom.xml | 2 +- .../src/main/resources/archetype-resources/pom.xml | 9 +- .../archetype-resources/src/main/java/Init.java | 1 + .../pom.xml | 2 +- .../src/main/resources/archetype-resources/pom.xml | 4 +- .../archetype-resources/src/main/java/Init.java | 1 + .../streampipes-archetype-pe-sinks-flink/pom.xml | 2 +- .../src/main/resources/archetype-resources/pom.xml | 9 +- .../archetype-resources/src/main/java/Init.java | 2 + .../streampipes-archetype-pe-sinks-jvm/pom.xml | 2 +- .../src/main/resources/archetype-resources/pom.xml | 4 +- .../archetype-resources/src/main/java/Init.java | 2 + .../streampipes-archetype-pe-sources/pom.xml | 2 +- .../src/main/resources/archetype-resources/pom.xml | 9 +- .../archetype-resources/src/main/java/Init.java | 3 +- .../__classNamePrefix__Stream.java | 2 +- pom.xml | 2 +- streampipes-backend/pom.xml | 20 +- streampipes-client/pom.xml | 20 +- streampipes-code-generation/pom.xml | 10 +- streampipes-commons/pom.xml | 2 +- streampipes-config/pom.xml | 4 +- streampipes-connect-container-master/pom.xml | 10 +- streampipes-connect-container-worker/pom.xml | 14 +- streampipes-connect/pom.xml | 30 +-- streampipes-container-base/pom.xml | 2 +- streampipes-container-extensions/pom.xml | 8 +- streampipes-container-standalone/pom.xml | 6 +- streampipes-container/pom.xml | 12 +- streampipes-data-explorer/pom.xml | 12 +- streampipes-dataformat-cbor/pom.xml | 6 +- streampipes-dataformat-fst/pom.xml | 6 +- streampipes-dataformat-json/pom.xml | 6 +- streampipes-dataformat-smile/pom.xml | 6 +- streampipes-dataformat/pom.xml | 4 +- streampipes-logging/pom.xml | 2 +- streampipes-maven-plugin/pom.xml | 2 +- streampipes-measurement-units/pom.xml | 4 +- streampipes-messaging-jms/pom.xml | 4 +- streampipes-messaging-kafka/pom.xml | 4 +- streampipes-messaging-mqtt/pom.xml | 4 +- streampipes-messaging/pom.xml | 4 +- streampipes-model-client/pom.xml | 4 +- streampipes-model-shared/pom.xml | 2 +- streampipes-model/pom.xml | 10 +- .../staticproperty/StaticPropertyAlternative.java | 2 +- streampipes-performance-tests/pom.xml | 10 +- streampipes-pipeline-management/pom.xml | 36 ++-- .../streampipes/manager/file/FileManager.java | 29 +++ .../streampipes/manager/file/TestFileManager.java | 64 ++++++ streampipes-platform-services/pom.xml | 16 +- streampipes-rest-shared/pom.xml | 6 +- streampipes-rest/pom.xml | 24 +-- .../rest/impl/dashboard/VisualizablePipeline.java | 16 +- streampipes-sdk/pom.xml | 8 +- .../sdk/extractor/AbstractParameterExtractor.java | 3 +- streampipes-serializers-json/pom.xml | 10 +- streampipes-service-discovery-consul/pom.xml | 10 +- streampipes-sources/pom.xml | 4 +- streampipes-storage-api/pom.xml | 6 +- streampipes-storage-couchdb/pom.xml | 12 +- streampipes-storage-management/pom.xml | 6 +- streampipes-test-utils/pom.xml | 4 +- streampipes-user-management/pom.xml | 6 +- streampipes-vocabulary/pom.xml | 2 +- streampipes-wrapper-distributed/pom.xml | 10 +- streampipes-wrapper-flink/pom.xml | 4 +- .../wrapper/flink/sink/MqttFlinkProducer.java | 2 - streampipes-wrapper-kafka-streams/pom.xml | 4 +- streampipes-wrapper-python/pom.xml | 2 +- streampipes-wrapper-siddhi/pom.xml | 4 +- streampipes-wrapper-spark/pom.xml | 8 +- streampipes-wrapper-standalone/pom.xml | 4 +- streampipes-wrapper/pom.xml | 10 +- ui/cypress.json | 9 + ui/cypress/README.md | 49 +++++ ui/cypress/fixtures/fileTest/random.csv | 11 + ui/cypress/fixtures/fileTest/test.csv | 4 + .../filters-jvm/numericalFilter1/description.json | 8 + .../filters-jvm/numericalFilter1/expected.csv | 6 + .../filters-jvm/numericalFilter1/input.csv | 11 + .../filters-jvm/projection1/description.json | 6 + .../filters-jvm/projection1/expected.csv | 6 + .../filters-jvm/projection1/input.csv | 6 + .../filters-jvm/textFilter1/description.json | 8 + .../filters-jvm/textFilter1/expected.csv | 4 + .../filters-jvm/textFilter1/input.csv | 11 + .../booleanCounter1/description.json | 7 + .../booleanCounter1/expected.csv | 6 + .../transformation-jvm/booleanCounter1/input.csv | 11 + .../booleanInverter1/description.json | 6 + .../booleanInverter1/expected.csv | 11 + .../transformation-jvm/booleanInverter1/input.csv | 11 + .../countArray1/description.json | 6 + .../transformation-jvm/countArray1/expected.csv | 5 + .../transformation-jvm/countArray1/input.json | 4 + .../fieldRenamer1/description.json | 7 + .../transformation-jvm/fieldRenamer1/expected.csv | 11 + .../transformation-jvm/fieldRenamer1/input.csv | 11 + .../signalEdgeFilter1/description.json | 9 + .../signalEdgeFilter1/expected.csv | 6 + .../transformation-jvm/signalEdgeFilter1/input.csv | 11 + .../splitArray1/description.json | 7 + .../transformation-jvm/splitArray1/expected.csv | 3 + .../transformation-jvm/splitArray1/input.json | 2 + ui/cypress/integration/adapter/fileStream.ts | 45 ++++ .../integration/adapter/machineDataSimulator.ts} | 20 +- .../adapter/randomDataSimulatorStream.spec.ts} | 21 +- .../fileManagement/testFileManagement.ts} | 25 ++- .../integration/installation/installation.ts | 36 ++-- ui/cypress/integration/pipeline/pipelineTest.ts | 49 +++++ .../pipelineElement/AllPipelineElements.ts} | 38 ++-- .../pipelineElement/SinglePipelineElement.ts} | 31 +-- ui/cypress/plugins/index.ts | 70 ++++++ .../support/builder/GenericAdapterBuilder.ts | 76 +++++++ ui/cypress/support/builder/PipelineBuilder.ts | 56 +++++ .../support/builder/PipelineElementBuilder.ts | 50 +++++ .../support/builder/ProcessorTestBuilder.ts} | 35 +-- .../support/builder/SpecificAdapterBuilder.ts | 61 ++++++ .../support/general/dataCy.ts} | 23 +- .../support/general/login.ts} | 52 ++--- .../support/general/logout.ts} | 23 +- .../support/general/readDir.ts} | 39 ++-- .../support/index.ts} | 38 +--- .../support/model/AdapterInput.ts} | 10 +- .../support/model/GenericAdapterInput.ts} | 11 +- .../support/model/PipelineElementInput.ts} | 9 +- .../support/model/PipelineInput.ts} | 14 +- .../support/model/ProcessorTest.ts} | 11 +- .../support/model/SpecificAdapterInput.ts} | 9 +- .../support/model/UserInput.ts} | 10 +- ui/cypress/support/utils/AdapterUtils.ts | 201 ++++++++++++++++++ ui/cypress/support/utils/DataLakeUtils.ts | 52 +++++ ui/cypress/support/utils/FileManagementUtils.ts | 49 +++++ ui/cypress/support/utils/PipelineUtils.ts | 105 +++++++++ .../support/utils/ProcessingElementTestUtils.ts | 89 ++++++++ .../cypress/support/utils/StaticPropertyUtils.ts | 32 +-- .../support/utils/UserUtils.ts} | 9 +- ui/cypress/tsconfig.json | 11 + ui/package.json | 6 +- .../configuration-group.component.html} | 25 ++- .../configuration-group.component.scss} | 0 .../configuration-group.component.ts} | 28 ++- ...nent.css => adapter-description.component.scss} | 0 .../adapter-description.component.ts | 2 +- .../data-marketplace.component.html | 2 +- ...mponent.css => data-marketplace.component.scss} | 0 .../data-marketplace/data-marketplace.component.ts | 2 +- .../existing-adapters.component.html | 2 +- .../existing-adapters.component.ts | 44 ++-- .../format-configuration.component.html | 65 ++++++ .../format-configuration.component.scss} | 5 +- .../format-configuration.component.ts | 129 ++++++++++++ .../format-form/format-form.component.ts | 81 ------- .../format-item.component.html} | 2 +- .../format-item.component.scss} | 0 .../format-item.component.ts} | 21 +- .../format-list.component.html | 6 +- .../format-list.component.scss} | 0 .../format-list.component.ts | 29 ++- .../generic-adapter-configuration.component.html} | 29 ++- .../generic-adapter-configuration.component.scss} | 3 + .../generic-adapter-configuration.component.ts | 83 ++++++++ .../new-adapter/new-adapter.component.html | 234 ++++----------------- ...er.component.css => new-adapter.component.scss} | 0 .../new-adapter/new-adapter.component.ts | 200 ++++-------------- .../pipeline-element-runtime-info.component.html | 2 +- .../error-message/error-message.component.html | 39 ++++ .../error-message.component.scss} | 0 .../error-message/error-message.component.ts} | 26 ++- .../event-property-row.component.html | 3 +- ...onent.css => event-property-row.component.scss} | 0 .../event-property-row.component.ts | 2 +- .../event-schema-preview.component.scss} | 0 .../event-schema-preview.component.ts | 8 +- .../event-schema/event-schema.component.html | 106 ++++------ ...a.component.css => event-schema.component.scss} | 3 - .../event-schema/event-schema.component.ts | 96 +++++++-- .../loading-message.component.html} | 12 +- .../loading-message.component.scss} | 0 .../loading-message/loading-message.component.ts} | 16 +- .../schema-editor-header.component.html | 53 +++++ .../schema-editor-header.component.scss} | 3 + .../schema-editor-header.component.ts | 69 ++++++ .../specific-adapter-configuration.component.html} | 27 ++- .../specific-adapter-configuration.component.scss} | 4 +- .../specific-adapter-configuration.component.ts | 69 ++++++ .../start-adapter-configuration.component.html | 111 ++++++++++ .../start-adapter-configuration.component.scss} | 0 .../start-adapter-configuration.component.ts | 150 +++++++++++++ ui/src/app/connect/connect.component.ts | 4 +- ui/src/app/connect/connect.module.ts | 126 ++++++----- .../adapter-started-dialog.component.html | 2 +- .../delete-adapter-dialog.component.html | 16 +- ...t.scss => delete-adapter-dialog.component.scss} | 0 .../delete-adapter-dialog.component.ts | 42 ++-- ...nt.css => edit-correction-value.component.scss} | 0 .../edit-correction-value.component.ts | 2 +- ...component.css => edit-data-type.component.scss} | 0 .../edit-data-type/edit-data-type.component.ts | 2 +- ...css => edit-event-property-list.component.scss} | 0 .../edit-event-property-list.component.ts | 2 +- ...> edit-event-property-primitive.component.scss} | 0 .../edit-event-property-primitive.component.ts | 2 +- ....css => edit-timestamp-property.component.scss} | 0 .../edit-timestamp-property.component.ts | 2 +- ...css => edit-unit-transformation.component.scss} | 0 .../edit-unit-transformation.component.ts | 2 +- .../edit-event-property.component.html | 11 +- ...nent.css => edit-event-property.component.scss} | 0 .../edit-event-property.component.ts | 2 +- .../base/UserErrorMessage.ts} | 12 +- ui/src/app/core-ui/core-ui.module.ts | 5 +- .../confirm-dialog/confirm-dialog.component.html | 2 +- .../core-ui/error-hint/error-hint.component.html | 46 ++++ .../error-hint/error-hint.component.scss} | 10 +- .../error-hint/error-hint.component.ts} | 25 ++- .../static-any-input.component.html | 7 +- .../static-file-input.component.html | 12 +- .../static-file-input.component.ts | 99 +++++---- .../static-free-input.component.html | 3 +- .../static-mapping-nary.component.html | 4 +- .../static-mapping-unary.component.html | 2 +- .../static-one-of-input.component.html | 9 +- .../static-property.component.html | 11 +- .../core/components/toolbar/toolbar.component.html | 6 +- ...data-explorer-dashboard-overview.component.html | 2 +- ...data-explorer-dashboard-overview.component.scss | 6 +- .../property-selection.component.html | 3 +- .../pipeline-assembly.component.html | 40 ++-- .../pipeline-assembly.component.ts | 146 +++++++------ .../pipeline-element-options.component.html | 7 +- .../pipeline-element-options.component.ts | 17 +- ...pipeline-element-template-config.component.html | 16 +- .../components/pipeline/pipeline.component.html | 5 +- .../compatible-elements.component.html | 3 +- .../compatible-elements.component.ts | 4 +- .../dialog/customize/customize.component.html | 3 +- .../pipeline-element-discovery.component.html} | 18 +- .../pipeline-element-discovery.component.scss} | 9 +- .../pipeline-element-discovery.component.ts | 98 +++++++++ .../save-pipeline/save-pipeline.component.html | 12 +- ui/src/app/editor/editor.module.ts | 2 + .../app/editor/services/jsplumb-bridge.service.ts | 2 + ui/src/app/editor/services/jsplumb.service.ts | 132 +++++++++--- .../editor/services/pipeline-validation.service.ts | 78 +++---- .../file-overview/file-overview.component.html | 2 +- .../file-upload/file-upload-dialog.component.html | 5 +- ui/src/app/files/files.component.html | 4 +- .../login/components/setup/setup.component.html | 3 +- .../pipeline-overview.component.html | 3 +- .../delete-pipeline-dialog.component.html | 4 +- .../pipeline-status-dialog.component.html | 6 +- 255 files changed, 3742 insertions(+), 1531 deletions(-) diff --cc streampipes-config/pom.xml index 30ca5a3,fe44a3b..026e435 --- a/streampipes-config/pom.xml +++ b/streampipes-config/pom.xml @@@ -31,19 -31,9 +31,19 @@@ <!-- StreamPipes dependencies --> <dependency> <groupId>org.apache.streampipes</groupId> + <artifactId>streampipes-serializers-json</artifactId> + <version>0.68.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.streampipes</groupId> <artifactId>streampipes-vocabulary</artifactId> - <version>0.68.0-SNAPSHOT</version> + <version>0.69.0-SNAPSHOT</version> </dependency> + <dependency> + <groupId>org.apache.streampipes</groupId> + <artifactId>streampipes-service-discovery</artifactId> + <version>0.68.0-SNAPSHOT</version> + </dependency> <!-- External dependencies --> <dependency> diff --cc streampipes-connect-container-master/pom.xml index a83370b,8aa3715..4936982 --- a/streampipes-connect-container-master/pom.xml +++ b/streampipes-connect-container-master/pom.xml @@@ -31,8 -31,8 +31,8 @@@ <!-- StreamPipes dependencies --> <dependency> <groupId>org.apache.streampipes</groupId> - <artifactId>streampipes-connect-container</artifactId> + <artifactId>streampipes-connect</artifactId> - <version>0.68.0-SNAPSHOT</version> + <version>0.69.0-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.streampipes</groupId> diff --cc streampipes-connect-container-worker/pom.xml index 2ab126f,621acd6..abb25ec --- a/streampipes-connect-container-worker/pom.xml +++ b/streampipes-connect-container-worker/pom.xml @@@ -31,34 -31,10 +31,34 @@@ <!-- StreamPipes dependencies --> <dependency> <groupId>org.apache.streampipes</groupId> - <artifactId>streampipes-connect-container</artifactId> + <artifactId>streampipes-config</artifactId> - <version>0.68.0-SNAPSHOT</version> ++ <version>0.69.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.streampipes</groupId> + <artifactId>streampipes-connect</artifactId> - <version>0.68.0-SNAPSHOT</version> ++ <version>0.69.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.streampipes</groupId> + <artifactId>streampipes-container</artifactId> - <version>0.68.0-SNAPSHOT</version> ++ <version>0.69.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.streampipes</groupId> + <artifactId>streampipes-service-extensions-base</artifactId> - <version>0.68.0-SNAPSHOT</version> ++ <version>0.69.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.streampipes</groupId> + <artifactId>streampipes-rest-shared</artifactId> - <version>0.68.0-SNAPSHOT</version> ++ <version>0.69.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.streampipes</groupId> + <artifactId>streampipes-serializers-json</artifactId> - <version>0.68.0-SNAPSHOT</version> + <version>0.69.0-SNAPSHOT</version> </dependency> - <!-- External dependencies --> <!-- Test dependencies --> diff --cc streampipes-connect/pom.xml index 22f04ea,f6162f3..865a2cb --- a/streampipes-connect/pom.xml +++ b/streampipes-connect/pom.xml @@@ -36,8 -36,8 +36,8 @@@ </dependency> <dependency> <groupId>org.apache.streampipes</groupId> - <artifactId>streampipes-container</artifactId> + <artifactId>streampipes-connect-api</artifactId> - <version>0.68.0-SNAPSHOT</version> + <version>0.69.0-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.streampipes</groupId> diff --cc streampipes-container-extensions/pom.xml index db1d09e,0c4449d..52eb29a --- a/streampipes-container-extensions/pom.xml +++ b/streampipes-container-extensions/pom.xml @@@ -33,18 -31,13 +33,18 @@@ <!-- StreamPipes dependencies --> <dependency> <groupId>org.apache.streampipes</groupId> - <artifactId>streampipes-container</artifactId> + <artifactId>streampipes-connect-container-worker</artifactId> - <version>0.68.0-SNAPSHOT</version> ++ <version>0.69.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.streampipes</groupId> + <artifactId>streampipes-container-standalone</artifactId> - <version>0.68.0-SNAPSHOT</version> + <version>0.69.0-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.streampipes</groupId> - <artifactId>streampipes-container-base</artifactId> + <artifactId>streampipes-service-extensions-base</artifactId> - <version>0.68.0-SNAPSHOT</version> + <version>0.69.0-SNAPSHOT</version> </dependency> <!-- External dependencies --> diff --cc streampipes-container-standalone/pom.xml index 0064633,ec206f9..a576e43 --- a/streampipes-container-standalone/pom.xml +++ b/streampipes-container-standalone/pom.xml @@@ -36,8 -36,8 +36,8 @@@ </dependency> <dependency> <groupId>org.apache.streampipes</groupId> - <artifactId>streampipes-container-base</artifactId> + <artifactId>streampipes-service-extensions-base</artifactId> - <version>0.68.0-SNAPSHOT</version> + <version>0.69.0-SNAPSHOT</version> </dependency> <!-- External dependencies --> diff --cc streampipes-container/pom.xml index e021554,92d2bce..c5dcd88 --- a/streampipes-container/pom.xml +++ b/streampipes-container/pom.xml @@@ -32,13 -32,8 +32,13 @@@ <!-- StreamPipes dependencies --> <dependency> <groupId>org.apache.streampipes</groupId> + <artifactId>streampipes-connect-api</artifactId> + <version>0.68.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.streampipes</groupId> <artifactId>streampipes-dataformat</artifactId> - <version>0.68.0-SNAPSHOT</version> + <version>0.69.0-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.streampipes</groupId> @@@ -57,19 -52,9 +57,19 @@@ </dependency> <dependency> <groupId>org.apache.streampipes</groupId> + <artifactId>streampipes-service-discovery</artifactId> + <version>0.68.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.streampipes</groupId> <artifactId>streampipes-rest-shared</artifactId> - <version>0.68.0-SNAPSHOT</version> + <version>0.69.0-SNAPSHOT</version> </dependency> +<!-- <dependency>--> +<!-- <groupId>org.apache.streampipes</groupId>--> +<!-- <artifactId>streampipes-connect-container-worker</artifactId>--> +<!-- <version>0.68.0-SNAPSHOT</version>--> +<!-- </dependency>--> <!-- External dependencies --> diff --cc streampipes-model/src/main/java/org/apache/streampipes/model/staticproperty/StaticPropertyAlternative.java index dcc161e,7be00fb..f0a9462 --- a/streampipes-model/src/main/java/org/apache/streampipes/model/staticproperty/StaticPropertyAlternative.java +++ b/streampipes-model/src/main/java/org/apache/streampipes/model/staticproperty/StaticPropertyAlternative.java @@@ -17,12 -17,28 +17,12 @@@ */ package org.apache.streampipes.model.staticproperty; -import io.fogsy.empire.annotations.RdfProperty; -import io.fogsy.empire.annotations.RdfsClass; import org.apache.streampipes.model.util.Cloner; -import org.apache.streampipes.vocabulary.StreamPipes; -import javax.persistence.CascadeType; -import javax.persistence.Entity; -import javax.persistence.FetchType; -import javax.persistence.OneToOne; - -@RdfsClass(StreamPipes.STATIC_PROPERTY_ALTERNATIVE) -@Entity public class StaticPropertyAlternative extends StaticProperty { - private Boolean selected; - @OneToOne(fetch = FetchType.EAGER, - cascade = {CascadeType.ALL}) - @RdfProperty(StreamPipes.IS_SELECTED) + private boolean selected; - @OneToOne(fetch = FetchType.EAGER, - cascade = {CascadeType.ALL}) - @RdfProperty(StreamPipes.HAS_STATIC_PROPERTY) private StaticProperty staticProperty; public StaticPropertyAlternative() { diff --cc streampipes-pipeline-management/pom.xml index c354562,b66612a..cf3bcbe --- a/streampipes-pipeline-management/pom.xml +++ b/streampipes-pipeline-management/pom.xml @@@ -99,13 -99,8 +99,13 @@@ </dependency> <dependency> <groupId>org.apache.streampipes</groupId> + <artifactId>streampipes-service-discovery</artifactId> + <version>0.68.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.streampipes</groupId> <artifactId>streampipes-storage-management</artifactId> - <version>0.68.0-SNAPSHOT</version> + <version>0.69.0-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.streampipes</groupId> diff --cc streampipes-rest/pom.xml index b02816e,7175658..4b6c8fb --- a/streampipes-rest/pom.xml +++ b/streampipes-rest/pom.xml @@@ -82,8 -82,8 +82,8 @@@ </dependency> <dependency> <groupId>org.apache.streampipes</groupId> - <artifactId>streampipes-serializers-jsonld</artifactId> + <artifactId>streampipes-service-discovery</artifactId> - <version>0.68.0-SNAPSHOT</version> + <version>0.69.0-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.streampipes</groupId> diff --cc streampipes-service-discovery-consul/pom.xml index d062353,6db0cdf..7341c57 --- a/streampipes-service-discovery-consul/pom.xml +++ b/streampipes-service-discovery-consul/pom.xml @@@ -27,35 -24,39 +27,33 @@@ </parent> <modelVersion>4.0.0</modelVersion> - <artifactId>streampipes-serializers-jsonld</artifactId> + <artifactId>streampipes-service-discovery-consul</artifactId> <dependencies> - <!-- StreamPipes dependencies --> <dependency> <groupId>org.apache.streampipes</groupId> - <artifactId>streampipes-model</artifactId> + <artifactId>streampipes-logging</artifactId> - <version>0.68.0-SNAPSHOT</version> + <version>0.69.0-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.streampipes</groupId> - <artifactId>streampipes-model-client</artifactId> + <artifactId>streampipes-serializers-json</artifactId> - <version>0.68.0-SNAPSHOT</version> + <version>0.69.0-SNAPSHOT</version> </dependency> - - <!-- External dependencies --> - <dependency> - <groupId>io.fogsy</groupId> - <artifactId>empire-pinto</artifactId> - </dependency> <dependency> - <groupId>org.apache.httpcomponents</groupId> - <artifactId>httpclient-osgi</artifactId> + <groupId>org.apache.streampipes</groupId> + <artifactId>streampipes-service-discovery-api</artifactId> - <version>0.68.0-SNAPSHOT</version> ++ <version>0.69.0-SNAPSHOT</version> </dependency> + + <!-- third-party dependencies --> <dependency> - <groupId>org.eclipse.rdf4j</groupId> - <artifactId>rdf4j-rio-api</artifactId> + <groupId>com.orbitz.consul</groupId> + <artifactId>consul-client</artifactId> </dependency> <dependency> - <groupId>org.eclipse.rdf4j</groupId> - <artifactId>rdf4j-model</artifactId> + <groupId>org.apache.httpcomponents</groupId> + <artifactId>fluent-hc</artifactId> </dependency> </dependencies> -- -- -</project> +</project> diff --cc streampipes-storage-api/pom.xml index 5800ed0,0a4e0b5..4590bc6 --- a/streampipes-storage-api/pom.xml +++ b/streampipes-storage-api/pom.xml @@@ -37,7 -37,17 +37,7 @@@ <dependency> <groupId>org.apache.streampipes</groupId> <artifactId>streampipes-model-client</artifactId> - <version>0.68.0-SNAPSHOT</version> + <version>0.69.0-SNAPSHOT</version> </dependency> - - <!-- External dependencies --> - <dependency> - <groupId>org.eclipse.rdf4j</groupId> - <artifactId>rdf4j-query</artifactId> - </dependency> - <dependency> - <groupId>org.eclipse.rdf4j</groupId> - <artifactId>rdf4j-repository-api</artifactId> - </dependency> </dependencies> -</project> +</project> diff --cc streampipes-storage-management/pom.xml index 5d6ea7f,c328143..1f9933b --- a/streampipes-storage-management/pom.xml +++ b/streampipes-storage-management/pom.xml @@@ -37,7 -37,12 +37,7 @@@ <dependency> <groupId>org.apache.streampipes</groupId> <artifactId>streampipes-storage-couchdb</artifactId> - <version>0.68.0-SNAPSHOT</version> + <version>0.69.0-SNAPSHOT</version> </dependency> - <dependency> - <groupId>org.apache.streampipes</groupId> - <artifactId>streampipes-storage-rdf4j</artifactId> - <version>0.69.0-SNAPSHOT</version> - </dependency> </dependencies> -</project> +</project> diff --cc streampipes-wrapper/pom.xml index 1801bd8,69cfdd9..39be72d --- a/streampipes-wrapper/pom.xml +++ b/streampipes-wrapper/pom.xml @@@ -34,13 -34,8 +34,13 @@@ </dependency> <dependency> <groupId>org.apache.streampipes</groupId> + <artifactId>streampipes-client</artifactId> + <version>0.68.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.streampipes</groupId> <artifactId>streampipes-dataformat</artifactId> - <version>0.68.0-SNAPSHOT</version> + <version>0.69.0-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.streampipes</groupId> @@@ -50,7 -45,7 +50,7 @@@ <dependency> <groupId>org.apache.streampipes</groupId> <artifactId>streampipes-sdk</artifactId> - <version>0.68.0-SNAPSHOT</version> + <version>0.69.0-SNAPSHOT</version> </dependency> </dependencies> -</project> +</project> diff --cc ui/src/app/core-ui/static-properties/static-any-input/static-any-input.component.html index abe44bb,a51e39a..8e5a2ff --- a/ui/src/app/core-ui/static-properties/static-any-input/static-any-input.component.html +++ b/ui/src/app/core-ui/static-properties/static-any-input/static-any-input.component.html @@@ -18,14 -18,13 +18,17 @@@ <div id="formWrapper" fxFlex="100" fxLayout="column"> <div *ngIf="!staticProperty.horizontalRendering" fxLayout="column"> - <mat-checkbox color="accent" *ngFor="let option of staticProperty.options" [(ngModel)]="option.selected" style="margin-left: 10px;"> - <mat-checkbox *ngFor="let option of staticProperty.options" [(ngModel)]="option.selected" style="margin-left: 10px;" [attr.data-cy]="fieldName"> ++ <mat-checkbox color="accent" ++ *ngFor="let option of staticProperty.options" ++ [(ngModel)]="option.selected" ++ style="margin-left: 10px;" ++ [attr.data-cy]="fieldName"> {{option.name}} </mat-checkbox> </div> - <div *ngIf="staticProperty.horizontalRendering"> - <mat-form-field style="width: 100%"> + <mat-form-field style="width: 100%" color="accent"> <mat-select multiple> <mat-option *ngFor="let option of staticProperty.options" [value]="option.elementId" (click)="select(option.elementId)"> diff --cc ui/src/app/core-ui/static-properties/static-file-input/static-file-input.component.html index c7cf40e,8d6290f..6e3b6e4 --- a/ui/src/app/core-ui/static-properties/static-file-input/static-file-input.component.html +++ b/ui/src/app/core-ui/static-properties/static-file-input/static-file-input.component.html @@@ -16,10 -16,10 +16,10 @@@ ~ --> - <div fxFlex="100" fxLayout="column"> + <div fxFlex="100" fxLayout="column" [formGroup]="parentForm"> <div fxFlex="100" fxLayout="column"> <div fxFlex="row"> - <mat-radio-group [(ngModel)]="chooseExistingFile" color="accent"> - <mat-radio-group [formControl]="chooseExistingFileControl" color="primary"> ++ <mat-radio-group [formControl]="chooseExistingFileControl" color="accent"> <mat-radio-button style="margin-right:10px;" [value]="true">Choose existing file</mat-radio-button> <mat-radio-button [value]="false">Upload new file</mat-radio-button> </mat-radio-group> diff --cc ui/src/app/core-ui/static-properties/static-one-of-input/static-one-of-input.component.html index fbbe56c,77223b8..aed2912 --- a/ui/src/app/core-ui/static-properties/static-one-of-input/static-one-of-input.component.html +++ b/ui/src/app/core-ui/static-properties/static-one-of-input/static-one-of-input.component.html @@@ -21,10 -21,12 +21,12 @@@ <div *ngIf="!staticProperty.horizontalRendering" fxLayout="column"> <div fxFlex fxLayout="row"> <div fxLayout="column" style="margin-left: 10px"> - <mat-radio-group class="radio-group"> + <mat-radio-group class="radio-group" color="accent"> <mat-radio-button *ngFor="let option of staticProperty.options" style="margin-top: -10px" - [value]="option" (click)="select(option.elementId)" [checked]="option.selected"> + [value]="option" + (click)="select(option.elementId)" + [checked]="option.selected" + [attr.data-cy]="staticProperty.internalName + option.name"> <label style="font-weight: normal"> {{option.name}} </label> @@@ -35,8 -37,8 +37,8 @@@ </div> <div *ngIf="staticProperty.horizontalRendering"> - <mat-form-field style="width: 100%"> + <mat-form-field style="width: 100%" color="accent"> - <mat-select [(value)]="selectedOption"> + <mat-select [(value)]="selectedOption" [attr.data-cy]="fieldName"> <mat-option *ngFor="let option of staticProperty.options" [value]="option.elementId" (click)="select(option.elementId)"> <label style="font-weight: normal"> diff --cc ui/src/app/core/components/toolbar/toolbar.component.html index 21e588d,76f3e77..e550fa4 --- a/ui/src/app/core/components/toolbar/toolbar.component.html +++ b/ui/src/app/core/components/toolbar/toolbar.component.html @@@ -57,8 -54,9 +57,9 @@@ [ngClass]="accountMenuOpen.menuOpen ? 'sp-icon-button-no-hover' : 'sp-icon-button'" style="min-width:0px;" [matMenuTriggerFor]="menu" #accountMenuOpen="matMenuTrigger" - matTooltip="User Preferences" matTooltipPosition="below"> + matTooltip="User Preferences" matTooltipPosition="below" + data-cy="sp-user-preferences"> - <i [ngStyle]="accountMenuOpen.menuOpen ? {'color': '#39b54a'} : {'color': 'white'}" class="material-icons">account_circle</i> + <i [ngClass]="accountMenuOpen.menuOpen ? 'sp-darkblue' : ''" class="material-icons">account_circle</i> </button> </div> </div> diff --cc ui/src/app/data-explorer/components/overview/data-explorer-dashboard-overview.component.html index 3ed2eba,e84fb1f..da323e8 --- a/ui/src/app/data-explorer/components/overview/data-explorer-dashboard-overview.component.html +++ b/ui/src/app/data-explorer/components/overview/data-explorer-dashboard-overview.component.html @@@ -19,10 -19,10 +19,10 @@@ <div fxFlex="100" fxLayout="column" class="m-20"> <div fxLayout="row wrap"> - <button mat-button mat-raised-button color="accent" (click)="openNewDataViewDialog()"> - <button mat-button mat-raised-button color="primary" (click)="openNewDataViewDialog()" class="mr-10"> ++ <button mat-button mat-raised-button color="accent" (click)="openNewDataViewDialog()" class="mr-10"> New Data View </button> - <button mat-button mat-raised-button color="primary" (click)="openEditLabelView()"> + <button mat-button mat-raised-button color="accent" (click)="openEditLabelView()"> Edit Labels </button> </div> diff --cc ui/src/app/editor/dialog/customize/customize.component.html index 1de29b0,655bb92..7ca6c12 --- a/ui/src/app/editor/dialog/customize/customize.component.html +++ b/ui/src/app/editor/dialog/customize/customize.component.html @@@ -102,8 -102,9 +102,9 @@@ <mat-divider></mat-divider> <div class="sp-dialog-actions"> <div fxLayout="row" *ngIf="!templateMode"> - <button mat-button mat-raised-button color="primary" (click)="save()" style="margin-right:10px;" + <button mat-button mat-raised-button color="accent" (click)="save()" style="margin-right:10px;" - [disabled]="!(formValid)"> + [disabled]="!(formValid)" + data-cy="sp-element-configuration-save"> <i class="material-icons">save</i><span> Save</span> </button> <button mat-button mat-raised-button class="mat-basic" (click)="close()"> diff --cc ui/src/app/editor/dialog/save-pipeline/save-pipeline.component.html index 95c3707,cf00f4b..6076389 --- a/ui/src/app/editor/dialog/save-pipeline/save-pipeline.component.html +++ b/ui/src/app/editor/dialog/save-pipeline/save-pipeline.component.html @@@ -32,9 -32,11 +32,11 @@@ </div> <form [formGroup]="submitPipelineForm"> <div fxFlex="100" fxLayout="column" *ngIf="!currentModifiedPipelineId || updateMode=='clone'"> - <mat-form-field fxFlex><mat-label>Pipeline Name</mat-label> - <input - [formControlName]="'pipelineName'" + <mat-form-field fxFlex color="accent"> + <mat-label>Pipeline Name</mat-label> - <input [formControlName]="'pipelineName'" matInput name="pipelineName"/> ++ <input [formControlName]="'pipelineName'" + data-cy="sp-editor-pipeline-name" + matInput name="pipelineName"/> <!-- <span ng-show="submitPipelineForm.pipelineName.$touched && submitPipelineForm.pipelineName.$error.required">Please provide a pipeline name.</span>--> <!-- <span ng-show="submitPipelineForm.pipelineName.$error.maxlength">Please provide a shorter pipeline name.</span>--> </mat-form-field> @@@ -45,7 -46,10 +47,10 @@@ </mat-form-field> </div> </form> - <mat-checkbox (click)="triggerTutorial()" color="accent" [(ngModel)]="startPipelineAfterStorage"> - <mat-checkbox color="primary" - (click)="triggerTutorial()" ++ <mat-checkbox (click)="triggerTutorial()" + [(ngModel)]="startPipelineAfterStorage" ++ color="accent" + data-cy="sp-editor-checkbox-start-immediately"> Start pipeline immediately </mat-checkbox> </div> @@@ -66,10 -70,11 +71,11 @@@ </div> <mat-divider></mat-divider> <div class="sp-dialog-actions"> - <button [disabled]="!submitPipelineForm.valid || saving || saved" mat-button mat-raised-button color="primary" (click)="savePipeline(false)" style="margin-right:10px;"> + <button [disabled]="!submitPipelineForm.valid || saving || saved" mat-button mat-raised-button color="accent" (click)="savePipeline(false)" style="margin-right:10px;"> Save </button> - <button [disabled]="!submitPipelineForm.valid || saving || saved" mat-button mat-raised-button color="accent" (click)="savePipeline(true)" style="margin-right:10px;"> - <button [disabled]="!submitPipelineForm.valid || saving || saved" mat-button mat-raised-button color="primary" (click)="savePipeline(true)" style="margin-right:10px;" ++ <button [disabled]="!submitPipelineForm.valid || saving || saved" mat-button mat-raised-button color="accent" (click)="savePipeline(true)" style="margin-right:10px;" + data-cy="sp-editor-save"> Save and go to pipeline view </button> <button mat-button mat-raised-button class="mat-basic" (click)="hide()"> diff --cc ui/src/app/files/components/file-overview/file-overview.component.html index fcb8c51,858bd68..ea985b3 --- a/ui/src/app/files/components/file-overview/file-overview.component.html +++ b/ui/src/app/files/components/file-overview/file-overview.component.html @@@ -40,8 -40,8 +40,8 @@@ <ng-container matColumnDef="action"> <th mat-header-cell *matHeaderCellDef> Action</th> <td mat-cell *matCellDef="let fileMetadata"> - <button color="primary" mat-button mat-icon-button matTooltip="Delete file" matTooltipPosition="above" + <button color="accent" mat-button mat-icon-button matTooltip="Delete file" matTooltipPosition="above" - (click)="deleteFile(fileMetadata)"> + (click)="deleteFile(fileMetadata)" data-cy="delete"> <i class="material-icons">delete</i> </button> </td> diff --cc ui/src/app/files/dialog/file-upload/file-upload-dialog.component.html index 1fbcffa,ad951dc..f5961a6 --- a/ui/src/app/files/dialog/file-upload/file-upload-dialog.component.html +++ b/ui/src/app/files/dialog/file-upload/file-upload-dialog.component.html @@@ -21,15 -21,16 +21,16 @@@ <div class="sp-dialog-content p-15"> <div fxFlex="100"> <div fxFlex="100" style="margin:5px;width:100%"> - <mat-form-field style="width: 95%" (click)="fileInput.click();"> + <mat-form-field style="width: 95%" (click)="fileInput.click();" color="accent"> <input matInput placeholder="File" disabled (value)="fileName"> <input #fileInput type="file" style="display:none;" - (change)="handleFileInput($event.target.files)"> + (change)="handleFileInput($event.target.files)" + data-cy="sp-file-management-file-input"> <div> {{fileName}} - <mat-progress-bar mode="determinate" value="{{uploadStatus}}" *ngIf="uploadStatus > 0"></mat-progress-bar> + <mat-progress-bar mode="determinate" value="{{uploadStatus}}" *ngIf="uploadStatus > 0" color="accent"></mat-progress-bar> </div> - <button color="primary" matSuffix + <button color="accent" matSuffix mat-button style="min-width: 0px"> <mat-icon *ngIf="uploadStatus < 99">insert_drive_file</mat-icon> <mat-icon *ngIf="uploadStatus == 100" class="green-icon">check_circle</mat-icon> @@@ -43,7 -44,7 +44,7 @@@ </div> <mat-divider></mat-divider> <div class="sp-dialog-actions"> - <button mat-button mat-raised-button color="accent" (click)="store()" style="margin-right:10px;"> - <button mat-button mat-raised-button color="primary" (click)="store()" data-cy="sp-file-management-store-file" style="margin-right:10px;"> ++ <button mat-button mat-raised-button color="accent" (click)="store()" data-cy="sp-file-management-store-file" style="margin-right:10px;"> Store file </button> <button mat-button mat-raised-button class="mat-basic" (click)="cancel()" style="margin-right:10px;"> diff --cc ui/src/app/files/files.component.html index 6dba0c4,4cb736d..9a0a0d7 --- a/ui/src/app/files/files.component.html +++ b/ui/src/app/files/files.component.html @@@ -28,11 -28,13 +28,13 @@@ </div> </div> </div> - <div fxLayout="row" class="fixed-height add-options"> + <div fxLayout="row" class="fixed-height add-options sp-tab-bg"> <div class="add-options-item" fxLayoutAlign="start center" fxLayout="row" style="padding-left:5px;"> <div fxFlex="100" fxLayout="row"> - <button mat-button mat-raised-button color="primary" + <button mat-button mat-raised-button color="accent" - (click)="openFileUploadDialog()" class="mr-10"> + (click)="openFileUploadDialog()" + data-cy="sp-open-file-upload-dialog" + class="mr-10"> <i class="material-icons">cloud_upload</i> Upload new file </button> diff --cc ui/src/app/login/components/setup/setup.component.html index 39eb033,9c6dcb7..15c3943 --- a/ui/src/app/login/components/setup/setup.component.html +++ b/ui/src/app/login/components/setup/setup.component.html @@@ -79,8 -79,9 +79,9 @@@ (click)="configure(0)" *ngIf="!installationFinished"> <span>{{!installationRunning ? 'Install' : 'Installing...'}}</span> </button> - <button mat-button mat-raised-button color="primary" + <button mat-button mat-raised-button color="accent" - (click)="openLoginPage()" *ngIf="installationFinished"> + (click)="openLoginPage()" *ngIf="installationFinished" + data-cy="sp-button-finish-installation"> <mat-icon>arrow_forward</mat-icon> <span>Go to login page</span> </button> diff --cc ui/src/app/pipelines/components/pipeline-overview/pipeline-overview.component.html index d34b5d1,e516b7e..d243744 --- a/ui/src/app/pipelines/components/pipeline-overview/pipeline-overview.component.html +++ b/ui/src/app/pipelines/components/pipeline-overview/pipeline-overview.component.html @@@ -86,8 -86,9 +86,9 @@@ </button> </span> <span fxFlex fxFlexOrder="3" fxLayout="row" fxLayoutAlign="center center"> - <button color="primary" mat-button mat-icon-button matTooltip="Delete pipeline" matTooltipPosition="above" + <button color="accent" mat-button mat-icon-button matTooltip="Delete pipeline" matTooltipPosition="above" - (click)="pipelineOperationsService.showDeleteDialog(pipeline, refreshPipelinesEmitter)"> + (click)="pipelineOperationsService.showDeleteDialog(pipeline, refreshPipelinesEmitter)" + data-cy="delete" > <i class="material-icons">delete</i> </button> </span> diff --cc ui/src/app/pipelines/dialog/delete-pipeline/delete-pipeline-dialog.component.html index ca2f304,6c8a00f..db72c6a --- a/ui/src/app/pipelines/dialog/delete-pipeline/delete-pipeline-dialog.component.html +++ b/ui/src/app/pipelines/dialog/delete-pipeline/delete-pipeline-dialog.component.html @@@ -30,8 -30,10 +30,10 @@@ (click)="deletePipeline()">Delete pipeline </button> - <button mat-button mat-raised-button color="primary" *ngIf="pipeline.running" + <button mat-button mat-raised-button color="accent" *ngIf="pipeline.running" - (click)="stopAndDeletePipeline()">Stop and + (click)="stopAndDeletePipeline()" + data-cy="sp-pipeline-stop-and-delete"> + Stop and delete pipeline </button> </div>
