diff --git a/ccm-cms/package-lock.json b/ccm-cms/package-lock.json index 29d94a48a..32572828d 100644 --- a/ccm-cms/package-lock.json +++ b/ccm-cms/package-lock.json @@ -1,12 +1,12 @@ { "name": "@librecms/ccm-cms", - "version": "7.0.0-SNAPSHOT.2022-09-20T182133", + "version": "7.0.0-SNAPSHOT.2022-09-24T104753", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@librecms/ccm-cms", - "version": "7.0.0-SNAPSHOT.2022-09-20T182133", + "version": "7.0.0-SNAPSHOT.2022-09-24T104753", "license": "LGPL-3.0-or-later", "dependencies": { "@tiptap/core": "^2.0.0-beta.127", diff --git a/ccm-cms/package.json b/ccm-cms/package.json index d1ee0dfc8..81c7eff04 100644 --- a/ccm-cms/package.json +++ b/ccm-cms/package.json @@ -1,6 +1,6 @@ { "name": "@librecms/ccm-cms", - "version": "7.0.0-SNAPSHOT.2022-09-20T182133", + "version": "7.0.0-SNAPSHOT.2022-09-24T104753", "description": "JavaScript stuff for ccm-cms", "main": "target/generated-resources/assets/@content-sections/cms-admin.js", "types": "target/generated-resources/assets/@content-sections/cms-admin.d.ts", diff --git a/ccm-core/src/main/java/org/libreccm/ui/admin/imexport/ImExportTasks.java b/ccm-core/src/main/java/org/libreccm/ui/admin/imexport/ImExportTasks.java index 7ae929b24..e0a994f35 100644 --- a/ccm-core/src/main/java/org/libreccm/ui/admin/imexport/ImExportTasks.java +++ b/ccm-core/src/main/java/org/libreccm/ui/admin/imexport/ImExportTasks.java @@ -49,17 +49,10 @@ public class ImExportTasks { * Listens for {@link org.libreccm.ui.admin.imexport.ExportTask}s. * * @param task The task to execute. - * - * @return The task. */ @Transactional(Transactional.TxType.REQUIRED) - public ExportTask exportEntities(@ObservesAsync final ExportTask task) { - final Collection entities = task.getEntities(); - final String exportName = task.getName(); - - importExport.exportEntities(entities, exportName); - task.getStatus().setStatus(ImExportTaskStatus.FINISHED); - return task; + public void exportEntities(@ObservesAsync final ExportTask task) { + shiro.getSystemUser().execute(() -> executeExport(task)); } /** @@ -69,11 +62,21 @@ public class ImExportTasks { */ @Transactional(Transactional.TxType.REQUIRED) public void importEntitites(@ObservesAsync final ImportTask task) { - final String importName = task.getName(); + shiro.getSystemUser().execute(() -> executeImport(task)); + } - shiro.getSystemUser().execute( - () -> importExport.importEntities(importName) - ); + private void executeExport(final ExportTask task) { + final Collection entities = task.getEntities(); + final String exportName = task.getName(); + + importExport.exportEntities(entities, exportName); + task.getStatus().setStatus(ImExportTaskStatus.FINISHED); + } + + private void executeImport(final ImportTask task) { + final String importName = task.getName(); + importExport.importEntities(importName); + task.getStatus().setStatus(ImExportTaskStatus.FINISHED); } }