This is an automated email from the ASF dual-hosted git repository.
dominikriemer pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/streampipes.git
The following commit(s) were added to refs/heads/dev by this push:
new 5639f46d2c fix: Avoid migration of adapters with existing
transformation config (#4460)
5639f46d2c is described below
commit 5639f46d2c2b5e3747c040717357ab1cd2cc3b22
Author: Dominik Riemer <[email protected]>
AuthorDate: Mon May 11 22:02:03 2026 +0200
fix: Avoid migration of adapters with existing transformation config (#4460)
---
.../migrations/v099/connect/MigrateAdaptersToUseScript.java | 12 ++++++++----
.../adapter-configuration/adapter-configuration.component.ts | 2 +-
2 files changed, 9 insertions(+), 5 deletions(-)
diff --git
a/streampipes-service-core/src/main/java/org/apache/streampipes/service/core/migrations/v099/connect/MigrateAdaptersToUseScript.java
b/streampipes-service-core/src/main/java/org/apache/streampipes/service/core/migrations/v099/connect/MigrateAdaptersToUseScript.java
index 7d96411048..76f6acd0ea 100644
---
a/streampipes-service-core/src/main/java/org/apache/streampipes/service/core/migrations/v099/connect/MigrateAdaptersToUseScript.java
+++
b/streampipes-service-core/src/main/java/org/apache/streampipes/service/core/migrations/v099/connect/MigrateAdaptersToUseScript.java
@@ -61,15 +61,15 @@ public class MigrateAdaptersToUseScript implements
Migration {
// Execute if there is an adapter with no transformation config or script
public boolean shouldExecute() {
List<AdapterDescription> adapters = adapterStorage.findAll();
- return adapters != null && adapters.stream()
- .anyMatch(adapter ->
adapter.getTransformationConfig() == null || adapter.getTransformationConfig()
-
.getScript() == null);
+ return adapters != null &&
adapters.stream().anyMatch(this::hasEmptyTransformationConfig);
}
@Override
public void executeMigration() throws IOException {
adapterStorage.findAll()
- .forEach(this::migrateAndUpdateAdapter);
+ .stream()
+ .filter(this::hasEmptyTransformationConfig)
+ .forEach(this::migrateAndUpdateAdapter);
}
@Override
@@ -77,6 +77,10 @@ public class MigrateAdaptersToUseScript implements Migration
{
return "Changes the rules based adapters to use script based
transformations instead.";
}
+ private boolean hasEmptyTransformationConfig(AdapterDescription adapter) {
+ return adapter.getTransformationConfig() == null ||
adapter.getTransformationConfig().getScript() == null;
+ }
+
private void migrateAndUpdateAdapter(AdapterDescription adapterDescription) {
LOG.info("Migrating adapter to script preprosessing: {}",
adapterDescription.getName());
diff --git
a/ui/src/app/connect/components/adapter-configuration/adapter-configuration.component.ts
b/ui/src/app/connect/components/adapter-configuration/adapter-configuration.component.ts
index 93bb724e97..a2ca4d2c48 100644
---
a/ui/src/app/connect/components/adapter-configuration/adapter-configuration.component.ts
+++
b/ui/src/app/connect/components/adapter-configuration/adapter-configuration.component.ts
@@ -88,7 +88,7 @@ export class AdapterConfigurationComponent implements OnInit,
OnDestroy {
? this.translate.instant('Edit adapter: ') + this.displayName
: this.translate.instant('New adapter: ') + this.displayName;
- if (!this.adapterDescription.transformationConfig) {
+ if (!this.adapterDescription.transformationConfig?.script) {
this.adapterDescription.transformationConfig = {
inputs: [],
language: 'javascript',