diff --git a/ccm-cms/src/main/java/org/librecms/contentsection/ContentSectionSetup.java b/ccm-cms/src/main/java/org/librecms/contentsection/ContentSectionSetup.java index f49abb8b1..38d529a39 100644 --- a/ccm-cms/src/main/java/org/librecms/contentsection/ContentSectionSetup.java +++ b/ccm-cms/src/main/java/org/librecms/contentsection/ContentSectionSetup.java @@ -268,9 +268,11 @@ public class ContentSectionSetup extends AbstractCcmApplicationSetup { section.addRole(contentReader); final LifecycleDefinition lifecycleDefinition = new LifecycleDefinition(); + lifecycleDefinition.setUuid(UUID.randomUUID().toString()); lifecycleDefinition.getLabel().addValue(Locale.ENGLISH, "Standard"); final Workflow workflow = new Workflow(); + workflow.setUuid(UUID.randomUUID().toString()); workflow.setAbstractWorkflow(true); workflow.getName().addValue(Locale.ENGLISH, "Standard"); diff --git a/ccm-cms/src/main/java/org/librecms/lifecycle/Lifecycle.java b/ccm-cms/src/main/java/org/librecms/lifecycle/Lifecycle.java index f7e7cbcf5..03d00a657 100644 --- a/ccm-cms/src/main/java/org/librecms/lifecycle/Lifecycle.java +++ b/ccm-cms/src/main/java/org/librecms/lifecycle/Lifecycle.java @@ -18,6 +18,9 @@ */ package org.librecms.lifecycle; +import org.hibernate.search.annotations.Field; +import org.libreccm.core.Identifiable; + import java.io.Serializable; import java.util.ArrayList; import java.util.Collections; @@ -36,6 +39,8 @@ import javax.persistence.OneToOne; import javax.persistence.Table; import javax.persistence.Temporal; import javax.persistence.TemporalType; +import javax.validation.constraints.NotNull; +import javax.xml.bind.annotation.XmlElement; import static org.librecms.CmsConstants.*; @@ -45,43 +50,52 @@ import static org.librecms.CmsConstants.*; */ @Entity @Table(name = "LIFECYCLES", schema = DB_SCHEMA) -public class Lifecycle implements Serializable { +public class Lifecycle implements Identifiable, Serializable { private static final long serialVersionUID = 184357562249530038L; - + @Id @GeneratedValue(strategy = GenerationType.AUTO) @Column(name = "LIFECYCLE_ID") private long lifecycleId; - + + /** + * + */ + @Column(name = "UUID", unique = true) + @NotNull + @Field + @XmlElement(name = "uuid") + private String uuid; + @Column(name = "START_DATE_TIME") @Temporal(TemporalType.DATE) private Date startDateTime; - + @Column(name = "END_DATE_TIME") @Temporal(TemporalType.DATE) private Date endDateTime; - + @Column(name = "LISTENER", length = 1024) private String listener; - + @Column(name = "STARTED") private boolean started; - + @Column(name = "FINISHED") private boolean finished; - + @OneToOne @JoinColumn(name = "DEFINITION_ID") private LifecycleDefinition definition; - + @OneToMany(mappedBy = "lifecycle") private List phases; public Lifecycle() { phases = new ArrayList<>(); } - + public long getLifecycleId() { return lifecycleId; } @@ -90,6 +104,15 @@ public class Lifecycle implements Serializable { this.lifecycleId = lifecycleId; } + @Override + public String getUuid() { + return uuid; + } + + public void setUuid(final String uuid) { + this.uuid = uuid; + } + public Date getStartDateTime() { return new Date(startDateTime.getTime()); } @@ -145,11 +168,11 @@ public class Lifecycle implements Serializable { protected void setPhases(final List phases) { this.phases = new ArrayList<>(phases); } - + public void addPhase(final Phase phase) { phases.add(phase); } - + public void removePhase(final Phase phase) { phases.remove(phase); } @@ -202,26 +225,26 @@ public class Lifecycle implements Serializable { } return Objects.equals(definition, other.getDefinition()); } - + public boolean canEqual(final Object obj) { return obj instanceof Lifecycle; } - + @Override public final String toString() { return toString(""); } - + public String toString(final String data) { return String.format("%s{ " - + "lifecycleId = %d, " - + "startDateTime = %tF % { + private static final long serialVersionUID = 1L; + @Override public Class getEntityClass() { return Lifecycle.class; @@ -50,4 +54,10 @@ public class LifecycleRepository return lifecycle.getLifecycleId() == 0; } + @Override + protected void initNewEntity(final Lifecycle entity) { + super.initNewEntity(entity); + entity.setUuid(UUID.randomUUID().toString()); + } + } diff --git a/ccm-core/src/main/java/org/libreccm/categorization/Categorization.java b/ccm-core/src/main/java/org/libreccm/categorization/Categorization.java index ee2ae9ba5..5b8b0f528 100644 --- a/ccm-core/src/main/java/org/libreccm/categorization/Categorization.java +++ b/ccm-core/src/main/java/org/libreccm/categorization/Categorization.java @@ -180,7 +180,7 @@ public class Categorization implements Serializable, Relation, Exportable { return uuid; } - protected void setUuid(final String uuid) { + public void setUuid(final String uuid) { this.uuid = uuid; } diff --git a/ccm-core/src/main/java/org/libreccm/categorization/DomainOwnership.java b/ccm-core/src/main/java/org/libreccm/categorization/DomainOwnership.java index 887fffbed..db2a9ff65 100644 --- a/ccm-core/src/main/java/org/libreccm/categorization/DomainOwnership.java +++ b/ccm-core/src/main/java/org/libreccm/categorization/DomainOwnership.java @@ -129,7 +129,7 @@ public class DomainOwnership implements Serializable, Exportable { return uuid; } - protected void setUuid(final String uuid) { + public void setUuid(final String uuid) { this.uuid = uuid; } diff --git a/ccm-core/src/main/java/org/libreccm/core/ResourceType.java b/ccm-core/src/main/java/org/libreccm/core/ResourceType.java index 5cd73bc91..3e7160c96 100644 --- a/ccm-core/src/main/java/org/libreccm/core/ResourceType.java +++ b/ccm-core/src/main/java/org/libreccm/core/ResourceType.java @@ -125,7 +125,7 @@ public class ResourceType implements Serializable, Exportable { return uuid; } - protected void setUuid(final String uuid) { + public void setUuid(final String uuid) { this.uuid = uuid; } diff --git a/ccm-core/src/main/java/org/libreccm/pagemodel/ComponentModel.java b/ccm-core/src/main/java/org/libreccm/pagemodel/ComponentModel.java index af8248378..71999fce5 100644 --- a/ccm-core/src/main/java/org/libreccm/pagemodel/ComponentModel.java +++ b/ccm-core/src/main/java/org/libreccm/pagemodel/ComponentModel.java @@ -132,7 +132,7 @@ public class ComponentModel implements Serializable { return uuid; } - protected void setUuid(final String uuid) { + public void setUuid(final String uuid) { this.uuid = uuid; } diff --git a/ccm-core/src/main/java/org/libreccm/pagemodel/ContainerModel.java b/ccm-core/src/main/java/org/libreccm/pagemodel/ContainerModel.java index 2b18e1280..1b517ef38 100644 --- a/ccm-core/src/main/java/org/libreccm/pagemodel/ContainerModel.java +++ b/ccm-core/src/main/java/org/libreccm/pagemodel/ContainerModel.java @@ -140,7 +140,7 @@ public class ContainerModel implements Serializable { return uuid; } - protected void setUuid(final String uuid) { + public void setUuid(final String uuid) { this.uuid = uuid; } diff --git a/ccm-core/src/main/java/org/libreccm/pagemodel/PageModel.java b/ccm-core/src/main/java/org/libreccm/pagemodel/PageModel.java index a594baf6a..242a30037 100644 --- a/ccm-core/src/main/java/org/libreccm/pagemodel/PageModel.java +++ b/ccm-core/src/main/java/org/libreccm/pagemodel/PageModel.java @@ -289,7 +289,7 @@ public class PageModel implements Serializable { return uuid; } - protected void setUuid(final String uuid) { + public void setUuid(final String uuid) { this.uuid = uuid; } diff --git a/ccm-core/src/main/java/org/libreccm/security/GroupMembership.java b/ccm-core/src/main/java/org/libreccm/security/GroupMembership.java index fe18e4c81..0d897f9e0 100644 --- a/ccm-core/src/main/java/org/libreccm/security/GroupMembership.java +++ b/ccm-core/src/main/java/org/libreccm/security/GroupMembership.java @@ -104,7 +104,7 @@ public class GroupMembership implements Serializable, Exportable { return uuid; } - protected void setUuid(final String uuid) { + public void setUuid(final String uuid) { this.uuid = uuid; } diff --git a/ccm-core/src/main/java/org/libreccm/security/Party.java b/ccm-core/src/main/java/org/libreccm/security/Party.java index 0cad09b9c..a90081bcb 100644 --- a/ccm-core/src/main/java/org/libreccm/security/Party.java +++ b/ccm-core/src/main/java/org/libreccm/security/Party.java @@ -141,7 +141,7 @@ public class Party implements Serializable { return uuid; } - protected void setUuid(final String uuid) { + public void setUuid(final String uuid) { this.uuid = uuid; } diff --git a/ccm-core/src/main/java/org/libreccm/security/Permission.java b/ccm-core/src/main/java/org/libreccm/security/Permission.java index 6d2b8991b..a692ccf1f 100644 --- a/ccm-core/src/main/java/org/libreccm/security/Permission.java +++ b/ccm-core/src/main/java/org/libreccm/security/Permission.java @@ -220,7 +220,7 @@ public class Permission implements Serializable, Exportable { return uuid; } - protected void setUuid(final String uuid) { + public void setUuid(final String uuid) { this.uuid = uuid; } diff --git a/ccm-core/src/main/java/org/libreccm/security/Role.java b/ccm-core/src/main/java/org/libreccm/security/Role.java index c1b56f900..7cb3eac16 100644 --- a/ccm-core/src/main/java/org/libreccm/security/Role.java +++ b/ccm-core/src/main/java/org/libreccm/security/Role.java @@ -233,7 +233,7 @@ public class Role implements Serializable, Exportable { return uuid; } - protected void setUuid(final String uuid) { + public void setUuid(final String uuid) { this.uuid = uuid; } diff --git a/ccm-core/src/main/java/org/libreccm/security/RoleMembership.java b/ccm-core/src/main/java/org/libreccm/security/RoleMembership.java index acea95f50..6aebd8d9c 100644 --- a/ccm-core/src/main/java/org/libreccm/security/RoleMembership.java +++ b/ccm-core/src/main/java/org/libreccm/security/RoleMembership.java @@ -104,7 +104,7 @@ public class RoleMembership implements Serializable, Exportable { return uuid; } - protected void setUuid(final String uuid) { + public void setUuid(final String uuid) { this.uuid = uuid; } diff --git a/ccm-core/src/main/java/org/libreccm/theming/db/Theme.java b/ccm-core/src/main/java/org/libreccm/theming/db/Theme.java index 48929d5d3..8a7cb3ec8 100644 --- a/ccm-core/src/main/java/org/libreccm/theming/db/Theme.java +++ b/ccm-core/src/main/java/org/libreccm/theming/db/Theme.java @@ -100,7 +100,7 @@ public class Theme implements Serializable { return uuid; } - protected void setUuid(final String uuid) { + public void setUuid(final String uuid) { this.uuid = uuid; } diff --git a/ccm-core/src/main/java/org/libreccm/theming/db/ThemeFile.java b/ccm-core/src/main/java/org/libreccm/theming/db/ThemeFile.java index f6f7f53bb..818b1ddb7 100644 --- a/ccm-core/src/main/java/org/libreccm/theming/db/ThemeFile.java +++ b/ccm-core/src/main/java/org/libreccm/theming/db/ThemeFile.java @@ -125,7 +125,7 @@ public class ThemeFile implements Serializable { return uuid; } - protected void setUuid(final String uuid) { + public void setUuid(final String uuid) { this.uuid = uuid; } diff --git a/ccm-core/src/main/java/org/libreccm/workflow/Task.java b/ccm-core/src/main/java/org/libreccm/workflow/Task.java index 6ba16680b..edf674783 100644 --- a/ccm-core/src/main/java/org/libreccm/workflow/Task.java +++ b/ccm-core/src/main/java/org/libreccm/workflow/Task.java @@ -240,7 +240,7 @@ public class Task implements Identifiable, Serializable { return uuid; } - protected void setUuid(final String uuid) { + public void setUuid(final String uuid) { this.uuid = uuid; } diff --git a/ccm-core/src/main/java/org/libreccm/workflow/TaskAssignment.java b/ccm-core/src/main/java/org/libreccm/workflow/TaskAssignment.java index 5fc891841..2e4092f45 100644 --- a/ccm-core/src/main/java/org/libreccm/workflow/TaskAssignment.java +++ b/ccm-core/src/main/java/org/libreccm/workflow/TaskAssignment.java @@ -92,7 +92,7 @@ public class TaskAssignment implements Serializable, Exportable { return uuid; } - protected void setUuid(final String uuid) { + public void setUuid(final String uuid) { this.uuid = uuid; } diff --git a/ccm-core/src/main/java/org/libreccm/workflow/TaskComment.java b/ccm-core/src/main/java/org/libreccm/workflow/TaskComment.java index dcc2907fb..156554794 100644 --- a/ccm-core/src/main/java/org/libreccm/workflow/TaskComment.java +++ b/ccm-core/src/main/java/org/libreccm/workflow/TaskComment.java @@ -110,7 +110,7 @@ public class TaskComment implements Identifiable, Serializable, Exportable { return uuid; } - protected void setUuid(final String uuid) { + public void setUuid(final String uuid) { this.uuid = uuid; } diff --git a/ccm-core/src/main/java/org/libreccm/workflow/TaskDependency.java b/ccm-core/src/main/java/org/libreccm/workflow/TaskDependency.java index effbb6ad3..7ad0b67d3 100644 --- a/ccm-core/src/main/java/org/libreccm/workflow/TaskDependency.java +++ b/ccm-core/src/main/java/org/libreccm/workflow/TaskDependency.java @@ -79,7 +79,7 @@ public class TaskDependency implements Serializable, Exportable { return uuid; } - protected void setUuid(final String uuid) { + public void setUuid(final String uuid) { this.uuid = uuid; } diff --git a/ccm-core/src/main/java/org/libreccm/workflow/Workflow.java b/ccm-core/src/main/java/org/libreccm/workflow/Workflow.java index 6f3b3e734..c722edf5b 100644 --- a/ccm-core/src/main/java/org/libreccm/workflow/Workflow.java +++ b/ccm-core/src/main/java/org/libreccm/workflow/Workflow.java @@ -196,7 +196,7 @@ public class Workflow implements Identifiable, Serializable, Exportable { return uuid; } - protected void setUuid(final String uuid) { + public void setUuid(final String uuid) { this.uuid = uuid; }