diff --git a/ccm-cms/src/main/java/db/migrations/org/librecms/ccm_cms/V7_0_0_24__add_lifecycle_uuid.java b/ccm-cms/src/main/java/db/migrations/org/librecms/ccm_cms/V7_0_0_24__add_lifecycle_uuid.java
new file mode 100644
index 000000000..bcb9026f3
--- /dev/null
+++ b/ccm-cms/src/main/java/db/migrations/org/librecms/ccm_cms/V7_0_0_24__add_lifecycle_uuid.java
@@ -0,0 +1,150 @@
+package db.migrations.org.librecms.ccm_cms;
+
+import org.flywaydb.core.api.migration.BaseJavaMigration;
+import org.flywaydb.core.api.migration.Context;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.UUID;
+
+/**
+ *
+ * @author Jens Pelzetter
+ */
+public class V7_0_0_24__add_lifecycle_uuid extends BaseJavaMigration {
+
+ @Override
+ public void migrate(final Context context) throws Exception {
+
+ final Connection connection = context.getConnection();
+
+ final List lifecycleIds = retrieveLifecycleIds(connection);
+ final List definitionIds = retrieveDefinitionIds(
+ connection
+ );
+
+ addLifecycleUuidCol(connection);
+ addDefinitionLifecycleCol(connection);
+
+ setLifecycleUuid(connection, lifecycleIds);
+ setDefinitionUuid(connection, definitionIds);
+
+ addLifecycleUniqueConstraint(connection);
+ addDefinitionUniqueConstraint(connection);
+
+ }
+
+ private List retrieveLifecycleIds(final Connection connection)
+ throws Exception {
+ final List result = new ArrayList<>();
+ try (PreparedStatement stmt = connection
+ .prepareStatement("select LIFECYCLE_ID from LIFECYCLES");
+ ResultSet resultSet = stmt.executeQuery()) {
+
+ while (resultSet.next()) {
+ result.add(resultSet.getLong("LIFECYCLE_ID"));
+ }
+
+ }
+
+ return result;
+ }
+
+ private List retrieveDefinitionIds(final Connection connection)
+ throws Exception {
+ final List result = new ArrayList<>();
+ try (PreparedStatement stmt = connection
+ .prepareStatement(
+ "select LIFECYCLE_DEFINITION_ID "
+ + "from LIFECYLE_DEFINITIONS"
+ );
+ ResultSet resultSet = stmt.executeQuery()) {
+
+ while (resultSet.next()) {
+ result.add(resultSet.getLong("LIFECYCLE_ID"));
+ }
+
+ }
+
+ return result;
+ }
+
+ private void addLifecycleUuidCol(final Connection connection)
+ throws Exception {
+ try (PreparedStatement stmt = connection.prepareStatement(
+ "alter table LIFECYCLES add column UUID varchar(255)"
+ )) {
+ stmt.execute();
+ }
+ }
+
+ private void addDefinitionLifecycleCol(final Connection connection)
+ throws Exception {
+ try (PreparedStatement stmt = connection.prepareStatement(
+ "alter table lifecyle_definitions "
+ + "add column UUID varchar(255)"
+ )) {
+ stmt.execute();
+ }
+ }
+
+ private void setLifecycleUuid(
+ final Connection connection, final List lifecycleIds
+ ) throws Exception {
+ try (PreparedStatement stmt = connection.prepareStatement(
+ "update LIFECYCLES set UUID = ? where LIFECYCLE_ID = ?"
+ )) {
+ for (final Long lifecycleId : lifecycleIds) {
+ stmt.setString(1, UUID.randomUUID().toString());
+ stmt.setLong(2, lifecycleId);
+ stmt.executeUpdate();
+ stmt.clearParameters();
+ }
+ }
+ }
+
+ private void setDefinitionUuid(
+ final Connection connection, final List definitionIds
+ ) throws Exception {
+ try (PreparedStatement stmt = connection.prepareStatement(
+ "update LIFECYLE_DEFINITIONS set UUID = ? "
+ + "where LIFECYCLE_DEFINITION_ID = ?"
+ )) {
+ for (final Long lifecycleId : definitionIds) {
+ stmt.setString(1, UUID.randomUUID().toString());
+ stmt.setLong(2, lifecycleId);
+ stmt.executeUpdate();
+ stmt.clearParameters();
+ }
+ }
+
+ }
+
+ private void addLifecycleUniqueConstraint(
+ final Connection connection
+ ) throws Exception {
+ try (PreparedStatement stmt = connection.prepareStatement(
+ "alter table LIFECYCLES "
+ + "add constraint UK_40o4njo54m8c4xlwq6ctnsimd "
+ + "unique (UUID)"
+ )) {
+ stmt.execute();
+ }
+ }
+
+ private void addDefinitionUniqueConstraint(
+ final Connection connection
+ ) throws Exception {
+try (PreparedStatement stmt = connection.prepareStatement(
+ "alter table LIFECYLE_DEFINITIONS "
+ + "add constraint UK_n6ki3s5im2k2nccpocuctqqe3 "
+ + "unique (UUID)"
+ )) {
+ stmt.execute();
+ }
+ }
+
+}
diff --git a/ccm-cms/src/main/java/db/migrations/org/librecms/ccm_cms/h2/V7_0_0_24__add_lifecycle_uuid.java b/ccm-cms/src/main/java/db/migrations/org/librecms/ccm_cms/h2/V7_0_0_24__add_lifecycle_uuid.java
new file mode 100644
index 000000000..0a5aed475
--- /dev/null
+++ b/ccm-cms/src/main/java/db/migrations/org/librecms/ccm_cms/h2/V7_0_0_24__add_lifecycle_uuid.java
@@ -0,0 +1,22 @@
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package db.migrations.org.librecms.ccm_cms.h2;
+
+import org.flywaydb.core.api.migration.Context;
+
+/**
+ *
+ * @author Jens Pelzetter
+ */
+public class V7_0_0_24__add_lifecycle_uuid
+ extends db.migrations.org.librecms.ccm_cms.V7_0_0_24__add_lifecycle_uuid {
+
+ @Override
+ public void migrate(final Context context) throws Exception {
+ super.migrate(context);
+ }
+
+}
diff --git a/ccm-cms/src/main/java/db/migrations/org/librecms/ccm_cms/pgsql/V7_0_0_24__add_lifecycle_uuid.java b/ccm-cms/src/main/java/db/migrations/org/librecms/ccm_cms/pgsql/V7_0_0_24__add_lifecycle_uuid.java
new file mode 100644
index 000000000..62b12dc3e
--- /dev/null
+++ b/ccm-cms/src/main/java/db/migrations/org/librecms/ccm_cms/pgsql/V7_0_0_24__add_lifecycle_uuid.java
@@ -0,0 +1,22 @@
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package db.migrations.org.librecms.ccm_cms.pgsql;
+
+import org.flywaydb.core.api.migration.Context;
+
+/**
+ *
+ * @author Jens Pelzetter
+ */
+public class V7_0_0_24__add_lifecycle_uuid
+ extends db.migrations.org.librecms.ccm_cms.V7_0_0_24__add_lifecycle_uuid {
+
+ @Override
+ public void migrate(final Context context) throws Exception {
+ super.migrate(context);
+ }
+
+}
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-cms/src/test/resources-wildfly-remote-h2-mem/scripts/001_create_schema.sql b/ccm-cms/src/test/resources-wildfly-remote-h2-mem/scripts/001_create_schema.sql
index 8f5613b9e..7fd77d983 100644
--- a/ccm-cms/src/test/resources-wildfly-remote-h2-mem/scripts/001_create_schema.sql
+++ b/ccm-cms/src/test/resources-wildfly-remote-h2-mem/scripts/001_create_schema.sql
@@ -1,9 +1,8 @@
-drop schema if exists CCM_CMS;
-drop schema if exists CCM_CORE;
+drop schema if exists CCM_CMS CASCADE;
+drop schema if exists CCM_CORE CASCADE;
drop sequence if exists HIBERNATE_SEQUENCE;
-
create schema CCM_CMS;
create schema CCM_CORE;
diff --git a/ccm-cms/src/test/resources-wildfly-remote-h2-mem/scripts/002_create_ccm_cms_tables.sql b/ccm-cms/src/test/resources-wildfly-remote-h2-mem/scripts/002_create_ccm_cms_tables.sql
index 0504ce2c1..7bebb982b 100644
--- a/ccm-cms/src/test/resources-wildfly-remote-h2-mem/scripts/002_create_ccm_cms_tables.sql
+++ b/ccm-cms/src/test/resources-wildfly-remote-h2-mem/scripts/002_create_ccm_cms_tables.sql
@@ -736,6 +736,7 @@
LISTENER varchar(1024),
START_DATE_TIME date,
STARTED boolean,
+ UUID varchar(255),
DEFINITION_ID bigint,
primary key (LIFECYCLE_ID)
);
@@ -743,6 +744,7 @@
create table CCM_CMS.LIFECYLE_DEFINITIONS (
LIFECYCLE_DEFINITION_ID bigint not null,
DEFAULT_LISTENER varchar(1024),
+ UUID varchar(255),
primary key (LIFECYCLE_DEFINITION_ID)
);
@@ -1040,6 +1042,12 @@
alter table CCM_CMS.CONTENT_SECTION_WORKFLOW_TEMPLATES
add constraint UK_goj42ghwu4tf1akfb2r6ensns unique (WORKFLOW_TEMPLATE_ID);
+ alter table CCM_CMS.LIFECYCLES
+ add constraint UK_40o4njo54m8c4xlwq6ctnsimd unique (UUID);
+
+ alter table CCM_CMS.LIFECYLE_DEFINITIONS
+ add constraint UK_n6ki3s5im2k2nccpocuctqqe3 unique (UUID);
+
create table CCM_CORE.APPLICATIONS (
APPLICATION_TYPE varchar(1024) not null,
PRIMARY_URL varchar(1024) not null,
@@ -1584,11 +1592,11 @@
SETTING_ID bigint not null,
CONFIGURATION_CLASS varchar(512) not null,
NAME varchar(512) not null,
- SETTING_VALUE_LONG bigint,
SETTING_VALUE_BIG_DECIMAL decimal(19,2),
- SETTING_VALUE_DOUBLE double,
- SETTING_VALUE_STRING varchar(1024),
SETTING_VALUE_BOOLEAN boolean,
+ SETTING_VALUE_LONG bigint,
+ SETTING_VALUE_STRING varchar(1024),
+ SETTING_VALUE_DOUBLE double,
primary key (SETTING_ID)
);
diff --git a/ccm-cms/src/test/resources-wildfly-remote-pgsql/scripts/002_create_ccm_cms_tables.sql b/ccm-cms/src/test/resources-wildfly-remote-pgsql/scripts/002_create_ccm_cms_tables.sql
index 615bbcd45..cb0531a2e 100644
--- a/ccm-cms/src/test/resources-wildfly-remote-pgsql/scripts/002_create_ccm_cms_tables.sql
+++ b/ccm-cms/src/test/resources-wildfly-remote-pgsql/scripts/002_create_ccm_cms_tables.sql
@@ -736,6 +736,7 @@
LISTENER varchar(1024),
START_DATE_TIME date,
STARTED boolean,
+ UUID varchar(255),
DEFINITION_ID int8,
primary key (LIFECYCLE_ID)
);
@@ -743,6 +744,7 @@
create table CCM_CMS.LIFECYLE_DEFINITIONS (
LIFECYCLE_DEFINITION_ID int8 not null,
DEFAULT_LISTENER varchar(1024),
+ UUID varchar(255),
primary key (LIFECYCLE_DEFINITION_ID)
);
@@ -1040,6 +1042,12 @@
alter table CCM_CMS.CONTENT_SECTION_WORKFLOW_TEMPLATES
add constraint UK_goj42ghwu4tf1akfb2r6ensns unique (WORKFLOW_TEMPLATE_ID);
+ alter table CCM_CMS.LIFECYCLES
+ add constraint UK_40o4njo54m8c4xlwq6ctnsimd unique (UUID);
+
+ alter table CCM_CMS.LIFECYLE_DEFINITIONS
+ add constraint UK_n6ki3s5im2k2nccpocuctqqe3 unique (UUID);
+
create table CCM_CORE.APPLICATIONS (
APPLICATION_TYPE varchar(1024) not null,
PRIMARY_URL varchar(1024) not null,
@@ -1584,11 +1592,11 @@
SETTING_ID int8 not null,
CONFIGURATION_CLASS varchar(512) not null,
NAME varchar(512) not null,
- SETTING_VALUE_LONG int8,
SETTING_VALUE_BIG_DECIMAL numeric(19, 2),
- SETTING_VALUE_DOUBLE float8,
- SETTING_VALUE_STRING varchar(1024),
SETTING_VALUE_BOOLEAN boolean,
+ SETTING_VALUE_LONG int8,
+ SETTING_VALUE_STRING varchar(1024),
+ SETTING_VALUE_DOUBLE float8,
primary key (SETTING_ID)
);
diff --git a/ccm-cms/src/test/resources/scripts/datasets-test/002_create_ccm_cms_tables.sql b/ccm-cms/src/test/resources/scripts/datasets-test/002_create_ccm_cms_tables.sql
index 38fa156d6..7bebb982b 100644
--- a/ccm-cms/src/test/resources/scripts/datasets-test/002_create_ccm_cms_tables.sql
+++ b/ccm-cms/src/test/resources/scripts/datasets-test/002_create_ccm_cms_tables.sql
@@ -221,6 +221,80 @@
primary key (COMPONENT_MODEL_ID)
);
+ create table CCM_CMS.CONTACT_ENTRIES (
+ CONTACT_ENTRY_ID bigint not null,
+ ENTRY_ORDER bigint,
+ ENTRY_VALUE varchar(4096),
+ CONTACT_ENTRY_KEY_ID bigint,
+ CONTACTABLE_ID bigint,
+ primary key (CONTACT_ENTRY_ID)
+ );
+
+ create table CCM_CMS.CONTACT_ENTRIES_AUD (
+ CONTACT_ENTRY_ID bigint not null,
+ REV integer not null,
+ REVTYPE tinyint,
+ REVEND integer,
+ ENTRY_ORDER bigint,
+ ENTRY_VALUE varchar(4096),
+ CONTACT_ENTRY_KEY_ID bigint,
+ primary key (CONTACT_ENTRY_ID, REV)
+ );
+
+ create table CCM_CMS.CONTACT_ENTRY_KEY_LABELS (
+ KEY_ID bigint not null,
+ LOCALIZED_VALUE varchar(2147483647),
+ LOCALE varchar(255) not null,
+ primary key (KEY_ID, LOCALE)
+ );
+
+ create table CCM_CMS.CONTACT_ENTRY_KEY_LABELS_AUD (
+ REV integer not null,
+ KEY_ID bigint not null,
+ LOCALIZED_VALUE varchar(2147483647) not null,
+ LOCALE varchar(255) not null,
+ REVTYPE tinyint,
+ REVEND integer,
+ primary key (REV, KEY_ID, LOCALIZED_VALUE, LOCALE)
+ );
+
+ create table CCM_CMS.CONTACT_ENTRY_KEYS (
+ KEY_ID bigint not null,
+ ENTRY_KEY varchar(255),
+ primary key (KEY_ID)
+ );
+
+ create table CCM_CMS.CONTACT_ENTRY_KEYS_AUD (
+ KEY_ID bigint not null,
+ REV integer not null,
+ REVTYPE tinyint,
+ REVEND integer,
+ ENTRY_KEY varchar(255),
+ primary key (KEY_ID, REV)
+ );
+
+ create table CCM_CMS.CONTACTABLE_ENTITIES (
+ OBJECT_ID bigint not null,
+ POSTAL_ADDRESS_ID bigint,
+ primary key (OBJECT_ID)
+ );
+
+ create table CCM_CMS.CONTACTABLE_ENTITIES_AUD (
+ OBJECT_ID bigint not null,
+ REV integer not null,
+ POSTAL_ADDRESS_ID bigint,
+ primary key (OBJECT_ID, REV)
+ );
+
+ create table CCM_CMS.ContactableEntity_ContactEntry_AUD (
+ REV integer not null,
+ CONTACTABLE_ID bigint not null,
+ CONTACT_ENTRY_ID bigint not null,
+ REVTYPE tinyint,
+ REVEND integer,
+ primary key (REV, CONTACTABLE_ID, CONTACT_ENTRY_ID)
+ );
+
create table CCM_CMS.CONTENT_ITEM_COMPONENTS (
MODE varchar(255),
COMPONENT_MODEL_ID bigint not null,
@@ -662,6 +736,7 @@
LISTENER varchar(1024),
START_DATE_TIME date,
STARTED boolean,
+ UUID varchar(255),
DEFINITION_ID bigint,
primary key (LIFECYCLE_ID)
);
@@ -669,6 +744,7 @@
create table CCM_CMS.LIFECYLE_DEFINITIONS (
LIFECYCLE_DEFINITION_ID bigint not null,
DEFAULT_LISTENER varchar(1024),
+ UUID varchar(255),
primary key (LIFECYCLE_DEFINITION_ID)
);
@@ -805,6 +881,19 @@
primary key (REV, OBJECT_ID, LOCALIZED_VALUE, LOCALE)
);
+ create table CCM_CMS.ORGANIZATIONS (
+ NAME varchar(1024),
+ OBJECT_ID bigint not null,
+ primary key (OBJECT_ID)
+ );
+
+ create table CCM_CMS.ORGANIZATIONS_AUD (
+ OBJECT_ID bigint not null,
+ REV integer not null,
+ NAME varchar(1024),
+ primary key (OBJECT_ID, REV)
+ );
+
create table CCM_CMS.PAGE_THEME_CONFIGURATIONS (
PAGE_ID bigint not null,
INDEX_PAGE_TEMPLATE varchar(255),
@@ -827,6 +916,60 @@
primary key (OBJECT_ID)
);
+ create table CCM_CMS.PERSON_NAMES (
+ PERSON_ID bigint not null,
+ GIVEN_NAME varchar(255),
+ NAME_PREFIX varchar(255),
+ SUFFIX varchar(255),
+ SURNAME varchar(255)
+ );
+
+ create table CCM_CMS.PERSON_NAMES_AUD (
+ REV integer not null,
+ REVTYPE tinyint not null,
+ PERSON_ID bigint not null,
+ REVEND integer,
+ SURNAME varchar(255),
+ NAME_PREFIX varchar(255),
+ GIVEN_NAME varchar(255),
+ SUFFIX varchar(255),
+ primary key (REV, REVTYPE, PERSON_ID)
+ );
+
+ create table CCM_CMS.PERSONS (
+ BIRTHDATE date,
+ OBJECT_ID bigint not null,
+ primary key (OBJECT_ID)
+ );
+
+ create table CCM_CMS.PERSONS_AUD (
+ OBJECT_ID bigint not null,
+ REV integer not null,
+ BIRTHDATE date,
+ primary key (OBJECT_ID, REV)
+ );
+
+ create table CCM_CMS.POSTAL_ADDRESSES (
+ ADDRESS varchar(2048),
+ CITY varchar(512),
+ ISO_COUNTRY_CODE varchar(10),
+ POSTAL_CODE varchar(255),
+ ADDRESS_STATE varchar(255),
+ OBJECT_ID bigint not null,
+ primary key (OBJECT_ID)
+ );
+
+ create table CCM_CMS.POSTAL_ADDRESSES_AUD (
+ OBJECT_ID bigint not null,
+ REV integer not null,
+ ADDRESS varchar(2048),
+ CITY varchar(512),
+ ISO_COUNTRY_CODE varchar(10),
+ POSTAL_CODE varchar(255),
+ ADDRESS_STATE varchar(255),
+ primary key (OBJECT_ID, REV)
+ );
+
create table CCM_CMS.RELATED_LINKS (
OBJECT_ID bigint not null,
BOOKMARK_ID bigint,
@@ -899,6 +1042,12 @@
alter table CCM_CMS.CONTENT_SECTION_WORKFLOW_TEMPLATES
add constraint UK_goj42ghwu4tf1akfb2r6ensns unique (WORKFLOW_TEMPLATE_ID);
+ alter table CCM_CMS.LIFECYCLES
+ add constraint UK_40o4njo54m8c4xlwq6ctnsimd unique (UUID);
+
+ alter table CCM_CMS.LIFECYLE_DEFINITIONS
+ add constraint UK_n6ki3s5im2k2nccpocuctqqe3 unique (UUID);
+
create table CCM_CORE.APPLICATIONS (
APPLICATION_TYPE varchar(1024) not null,
PRIMARY_URL varchar(1024) not null,
@@ -1444,10 +1593,10 @@
CONFIGURATION_CLASS varchar(512) not null,
NAME varchar(512) not null,
SETTING_VALUE_BIG_DECIMAL decimal(19,2),
- SETTING_VALUE_DOUBLE double,
SETTING_VALUE_BOOLEAN boolean,
SETTING_VALUE_LONG bigint,
SETTING_VALUE_STRING varchar(1024),
+ SETTING_VALUE_DOUBLE double,
primary key (SETTING_ID)
);
@@ -1917,6 +2066,76 @@ create sequence hibernate_sequence start with 1 increment by 1;
foreign key (COMPONENT_MODEL_ID)
references CCM_CORE.PAGE_MODEL_COMPONENT_MODELS;
+ alter table CCM_CMS.CONTACT_ENTRIES
+ add constraint FKirtfj8sm4y5myworl5hvs1l78
+ foreign key (CONTACT_ENTRY_KEY_ID)
+ references CCM_CMS.CONTACT_ENTRY_KEYS;
+
+ alter table CCM_CMS.CONTACT_ENTRIES
+ add constraint FKljrrfco44damal9eaqrnfam0m
+ foreign key (CONTACTABLE_ID)
+ references CCM_CMS.CONTACTABLE_ENTITIES;
+
+ alter table CCM_CMS.CONTACT_ENTRIES_AUD
+ add constraint FKib8xp3ab8kdkc0six36f99e2g
+ foreign key (REV)
+ references CCM_CORE.CCM_REVISIONS;
+
+ alter table CCM_CMS.CONTACT_ENTRIES_AUD
+ add constraint FKrse7ibjqsfnny5t1b2tqqs3pt
+ foreign key (REVEND)
+ references CCM_CORE.CCM_REVISIONS;
+
+ alter table CCM_CMS.CONTACT_ENTRY_KEY_LABELS
+ add constraint FK243nk3buqm0pskkr5ifjqfxn5
+ foreign key (KEY_ID)
+ references CCM_CMS.CONTACT_ENTRY_KEYS;
+
+ alter table CCM_CMS.CONTACT_ENTRY_KEY_LABELS_AUD
+ add constraint FK6n995k5gao6v63gfcga3yaxcw
+ foreign key (REV)
+ references CCM_CORE.CCM_REVISIONS;
+
+ alter table CCM_CMS.CONTACT_ENTRY_KEY_LABELS_AUD
+ add constraint FKdr8ujdpn1ej8l6omlxq8bsxbd
+ foreign key (REVEND)
+ references CCM_CORE.CCM_REVISIONS;
+
+ alter table CCM_CMS.CONTACT_ENTRY_KEYS_AUD
+ add constraint FKcvn2b1h1d4uvvmtbf4qf81l0y
+ foreign key (REV)
+ references CCM_CORE.CCM_REVISIONS;
+
+ alter table CCM_CMS.CONTACT_ENTRY_KEYS_AUD
+ add constraint FKkyy4v3tax8w5htnpkmmt8aec1
+ foreign key (REVEND)
+ references CCM_CORE.CCM_REVISIONS;
+
+ alter table CCM_CMS.CONTACTABLE_ENTITIES
+ add constraint FKqefwowr9adclj3xvpfje9rddr
+ foreign key (POSTAL_ADDRESS_ID)
+ references CCM_CMS.POSTAL_ADDRESSES;
+
+ alter table CCM_CMS.CONTACTABLE_ENTITIES
+ add constraint FKhdwlhf3jp8wf5wxjkoynrcspj
+ foreign key (OBJECT_ID)
+ references CCM_CMS.ASSETS;
+
+ alter table CCM_CMS.CONTACTABLE_ENTITIES_AUD
+ add constraint FKjx8trfvt96fkdn6bafnh839id
+ foreign key (OBJECT_ID, REV)
+ references CCM_CMS.ASSETS_AUD;
+
+ alter table CCM_CMS.ContactableEntity_ContactEntry_AUD
+ add constraint FKs5tfdp1auj9ocgvfa9ivec517
+ foreign key (REV)
+ references CCM_CORE.CCM_REVISIONS;
+
+ alter table CCM_CMS.ContactableEntity_ContactEntry_AUD
+ add constraint FKskn2ovg24tnnnwd2o8y0biyje
+ foreign key (REVEND)
+ references CCM_CORE.CCM_REVISIONS;
+
alter table CCM_CMS.CONTENT_ITEM_COMPONENTS
add constraint FKp83o82kxo2ipa0xo03wxp4dcr
foreign key (COMPONENT_MODEL_ID)
@@ -2447,6 +2666,16 @@ create sequence hibernate_sequence start with 1 increment by 1;
foreign key (REVEND)
references CCM_CORE.CCM_REVISIONS;
+ alter table CCM_CMS.ORGANIZATIONS
+ add constraint FK77ig0to48xrlfx8qsc0vlfsp6
+ foreign key (OBJECT_ID)
+ references CCM_CMS.CONTACTABLE_ENTITIES;
+
+ alter table CCM_CMS.ORGANIZATIONS_AUD
+ add constraint FKp0k3bf008pih96sguio80siql
+ foreign key (OBJECT_ID, REV)
+ references CCM_CMS.CONTACTABLE_ENTITIES_AUD;
+
alter table CCM_CMS.PAGE_THEME_CONFIGURATIONS
add constraint FK6l6xp6ex6sh2uuxfmeekf6ckn
foreign key (PAGE_ID)
@@ -2477,6 +2706,41 @@ create sequence hibernate_sequence start with 1 increment by 1;
foreign key (OBJECT_ID)
references CCM_CORE.SITE_AWARE_APPLICATIONS;
+ alter table CCM_CMS.PERSON_NAMES
+ add constraint FK2yluyhmpuhwxafcbna6u8txrt
+ foreign key (PERSON_ID)
+ references CCM_CMS.PERSONS;
+
+ alter table CCM_CMS.PERSON_NAMES_AUD
+ add constraint FKtqtlwx8pa9ydh009sudtpfxie
+ foreign key (REV)
+ references CCM_CORE.CCM_REVISIONS;
+
+ alter table CCM_CMS.PERSON_NAMES_AUD
+ add constraint FKs6m8tgbp8agrd5q3klwbtcujg
+ foreign key (REVEND)
+ references CCM_CORE.CCM_REVISIONS;
+
+ alter table CCM_CMS.PERSONS
+ add constraint FKiv4ydysjekfx64pkb5v4vd9yj
+ foreign key (OBJECT_ID)
+ references CCM_CMS.CONTACTABLE_ENTITIES;
+
+ alter table CCM_CMS.PERSONS_AUD
+ add constraint FKpup1q3295qkuovaptq8aj5lxp
+ foreign key (OBJECT_ID, REV)
+ references CCM_CMS.CONTACTABLE_ENTITIES_AUD;
+
+ alter table CCM_CMS.POSTAL_ADDRESSES
+ add constraint FK4vajjjjo8ro0wns58t8f3i782
+ foreign key (OBJECT_ID)
+ references CCM_CMS.ASSETS;
+
+ alter table CCM_CMS.POSTAL_ADDRESSES_AUD
+ add constraint FKcrxgaot6kcp9rbxlg8gpp4grg
+ foreign key (OBJECT_ID, REV)
+ references CCM_CMS.ASSETS_AUD;
+
alter table CCM_CMS.RELATED_LINKS
add constraint FKb517dnfj56oby2s34jp1omuim
foreign key (BOOKMARK_ID)
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/CcmCore.java b/ccm-core/src/main/java/org/libreccm/core/CcmCore.java
index 684047481..c74208d6b 100644
--- a/ccm-core/src/main/java/org/libreccm/core/CcmCore.java
+++ b/ccm-core/src/main/java/org/libreccm/core/CcmCore.java
@@ -47,7 +47,6 @@ import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
-import javax.transaction.Transactional;
/**
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;
}
diff --git a/ccm-core/src/test/resources-wildfly-remote-h2-mem/scripts/001_create_schema.sql b/ccm-core/src/test/resources-wildfly-remote-h2-mem/scripts/001_create_schema.sql
index 643d210ad..520144928 100644
--- a/ccm-core/src/test/resources-wildfly-remote-h2-mem/scripts/001_create_schema.sql
+++ b/ccm-core/src/test/resources-wildfly-remote-h2-mem/scripts/001_create_schema.sql
@@ -1,4 +1,4 @@
-drop schema if exists CCM_CORE;
+drop schema if exists CCM_CORE CASCADE;
drop sequence if exists HIBERNATE_SEQUENCE;
diff --git a/ccm-docrepo/src/test/resources-wildfly-remote-h2-mem/scripts/create_ccm_docrepo_schema.sql b/ccm-docrepo/src/test/resources-wildfly-remote-h2-mem/scripts/create_ccm_docrepo_schema.sql
index 1e6174e67..7e6be987a 100644
--- a/ccm-docrepo/src/test/resources-wildfly-remote-h2-mem/scripts/create_ccm_docrepo_schema.sql
+++ b/ccm-docrepo/src/test/resources-wildfly-remote-h2-mem/scripts/create_ccm_docrepo_schema.sql
@@ -1,5 +1,5 @@
-DROP SCHEMA IF EXISTS ccm_docrepo;
-DROP SCHEMA IF EXISTS ccm_core;
+DROP SCHEMA IF EXISTS ccm_docrepo CASCADE;
+DROP SCHEMA IF EXISTS ccm_core CASCADE;
DROP SEQUENCE IF EXISTS hibernate_sequence;
diff --git a/ccm-shortcuts/src/test/resources-wildfly-remote-h2-mem/scripts/create_ccm_shortcuts_schema.sql b/ccm-shortcuts/src/test/resources-wildfly-remote-h2-mem/scripts/create_ccm_shortcuts_schema.sql
index 8719e64a2..a783ef6fd 100644
--- a/ccm-shortcuts/src/test/resources-wildfly-remote-h2-mem/scripts/create_ccm_shortcuts_schema.sql
+++ b/ccm-shortcuts/src/test/resources-wildfly-remote-h2-mem/scripts/create_ccm_shortcuts_schema.sql
@@ -1,5 +1,5 @@
-DROP SCHEMA IF EXISTS ccm_shortcuts;
-DROP SCHEMA IF EXISTS ccm_core;
+DROP SCHEMA IF EXISTS ccm_shortcuts CASCADE;
+DROP SCHEMA IF EXISTS ccm_core CASCADE;
DROP SEQUENCE IF EXISTS hibernate_sequence;