diff --git a/ccm-cms/package-lock.json b/ccm-cms/package-lock.json
index 000bed0bf..174578fe1 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-10-29T142641",
+ "version": "7.0.0-SNAPSHOT.2022-10-31T074006",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@librecms/ccm-cms",
- "version": "7.0.0-SNAPSHOT.2022-10-29T142641",
+ "version": "7.0.0-SNAPSHOT.2022-10-31T074006",
"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 674361e73..f690dae5d 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-10-29T142641",
+ "version": "7.0.0-SNAPSHOT.2022-10-31T074006",
"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-cms/src/main/java/org/librecms/lifecycle/PhaseDefinitionImExporter.java b/ccm-cms/src/main/java/org/librecms/lifecycle/PhaseDefinitionImExporter.java
new file mode 100644
index 000000000..3fd7a52c6
--- /dev/null
+++ b/ccm-cms/src/main/java/org/librecms/lifecycle/PhaseDefinitionImExporter.java
@@ -0,0 +1,73 @@
+/*
+ * Copyright (C) 2022 LibreCCM Foundation.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301 USA
+ */
+package org.librecms.lifecycle;
+
+import org.libreccm.imexport.AbstractEntityImExporter;
+import org.libreccm.imexport.Exportable;
+import org.libreccm.imexport.Processes;
+
+import java.util.Collections;
+import java.util.Objects;
+import java.util.Set;
+
+import javax.enterprise.context.RequestScoped;
+import javax.inject.Inject;
+
+/**
+ *
+ * @author Jens Pelzetter
+ */
+@RequestScoped
+@Processes(PhaseDefinition.class)
+public class PhaseDefinitionImExporter
+ extends AbstractEntityImExporter {
+
+ @Inject
+ private PhaseDefinititionRepository phaseDefinitionRepo;
+
+ @Override
+ public Class getEntityClass() {
+ return PhaseDefinition.class;
+ }
+
+ @Override
+ protected Set> getRequiredEntities() {
+ return Collections.emptySet();
+ }
+
+ @Override
+ protected void saveImportedEntity(final PhaseDefinition entity) {
+ phaseDefinitionRepo.save(entity);
+ }
+
+ @Override
+ protected PhaseDefinition reloadEntity(final PhaseDefinition entity) {
+ return phaseDefinitionRepo
+ .findById(Objects.requireNonNull(entity).getDefinitionId())
+ .orElseThrow(
+ () -> new IllegalArgumentException(
+ String.format(
+ "PhaseDefinition entity %s not found in database.",
+ Objects.toString(entity)
+ )
+ )
+ );
+ }
+
+}