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

zehnder pushed a commit to branch 
3887-permission-objects-lost-after-exporting-and-re-importing-assets-with-sanitized-resource-ids
in repository https://gitbox.apache.org/repos/asf/streampipes.git


The following commit(s) were added to 
refs/heads/3887-permission-objects-lost-after-exporting-and-re-importing-assets-with-sanitized-resource-ids
 by this push:
     new 36468c229f fix: Use the original object id instead of the sanitized 
one from the export manifest
36468c229f is described below

commit 36468c229f19fc3324c50dbbc0c98ab431028653
Author: Philipp Zehnder <[email protected]>
AuthorDate: Tue Oct 28 20:01:29 2025 +0100

    fix: Use the original object id instead of the sanitized one from the 
export manifest
---
 .../export/dataimport/PerformImportGenerator.java            | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git 
a/streampipes-data-export/src/main/java/org/apache/streampipes/export/dataimport/PerformImportGenerator.java
 
b/streampipes-data-export/src/main/java/org/apache/streampipes/export/dataimport/PerformImportGenerator.java
index 674d9b287e..2b4d8b62f3 100644
--- 
a/streampipes-data-export/src/main/java/org/apache/streampipes/export/dataimport/PerformImportGenerator.java
+++ 
b/streampipes-data-export/src/main/java/org/apache/streampipes/export/dataimport/PerformImportGenerator.java
@@ -30,7 +30,6 @@ import 
org.apache.streampipes.export.resolver.MeasurementResolver;
 import org.apache.streampipes.export.resolver.PipelineResolver;
 import org.apache.streampipes.manager.file.FileHandler;
 import org.apache.streampipes.model.SpDataStream;
-import org.apache.streampipes.model.connect.adapter.AdapterDescription;
 import org.apache.streampipes.model.dashboard.DashboardModel;
 import org.apache.streampipes.model.datalake.DataExplorerWidgetModel;
 import org.apache.streampipes.model.datalake.DataLakeMeasure;
@@ -81,7 +80,7 @@ public class PerformImportGenerator extends 
ImportGenerator<Void> {
   protected void handleAdapter(String document, String adapterId) throws 
JsonProcessingException {
     if (shouldStore(adapterId, config.getAdapters())) {
       writeDocument(document, new AdapterResolver());
-      permissionsToStore.add(new PermissionInfo(adapterId, 
AdapterDescription.class));
+      // adapters do not have permissions associated
     }
   }
 
@@ -89,7 +88,8 @@ public class PerformImportGenerator extends 
ImportGenerator<Void> {
   protected void handleChart(String document, String chartId) throws 
JsonProcessingException {
     if (shouldStore(chartId, config.getDataViews())) {
       writeDocument(document, new ChartResolver());
-      permissionsToStore.add(new PermissionInfo(chartId, 
DataExplorerWidgetModel.class));
+      var chart = new ChartResolver().deserializeDocument(document);
+      permissionsToStore.add(new PermissionInfo(chart.getElementId(), 
DataExplorerWidgetModel.class));
     }
   }
 
@@ -97,7 +97,8 @@ public class PerformImportGenerator extends 
ImportGenerator<Void> {
   protected void handleDashboard(String document, String dashboardId) throws 
JsonProcessingException {
     if (shouldStore(dashboardId, config.getDashboards())) {
       writeDocument(document, new DashboardResolver());
-      permissionsToStore.add(new PermissionInfo(dashboardId, 
DashboardModel.class));
+      var dashboard = new DashboardResolver().deserializeDocument(document);
+      permissionsToStore.add(new PermissionInfo(dashboard.getElementId(), 
DashboardModel.class));
     }
   }
 
@@ -105,7 +106,8 @@ public class PerformImportGenerator extends 
ImportGenerator<Void> {
   protected void handleDataSource(String document, String dataSourceId) throws 
JsonProcessingException {
     if (shouldStore(dataSourceId, config.getDataSources())) {
       writeDocument(document, new DataSourceResolver());
-      permissionsToStore.add(new PermissionInfo(dataSourceId, 
SpDataStream.class));
+      var dataStream = new DataSourceResolver().deserializeDocument(document);
+      permissionsToStore.add(new PermissionInfo(dataStream.getElementId(), 
SpDataStream.class));
     }
   }
 

Reply via email to