parent
ff9031861f
commit
a369979f79
|
|
@ -0,0 +1,104 @@
|
|||
/*
|
||||
* 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 org.librecms.contentsection.rs;
|
||||
|
||||
import org.librecms.contentsection.ContentItem;
|
||||
import org.librecms.contentsection.ContentItemRepository;
|
||||
import org.librecms.contentsection.ContentSection;
|
||||
import org.librecms.contentsection.ContentSectionRepository;
|
||||
import org.librecms.contentsection.Folder;
|
||||
import org.librecms.contentsection.FolderRepository;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
import javax.inject.Inject;
|
||||
import javax.transaction.Transactional;
|
||||
import javax.ws.rs.GET;
|
||||
import javax.ws.rs.Path;
|
||||
import javax.ws.rs.PathParam;
|
||||
import javax.ws.rs.Produces;
|
||||
import javax.ws.rs.WebApplicationException;
|
||||
import javax.ws.rs.core.Response;
|
||||
|
||||
import static javax.ws.rs.core.MediaType.*;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
||||
*/
|
||||
@Path("/{content-section}/items/{path: .*}")
|
||||
public class ContentItemController {
|
||||
|
||||
@Inject
|
||||
private FolderRepository folderRepo;
|
||||
|
||||
@Inject
|
||||
private ContentItemRepository itemRepo;
|
||||
|
||||
@Inject
|
||||
private ContentSectionRepository sectionRepo;
|
||||
|
||||
@GET
|
||||
@Path("/")
|
||||
@Produces(APPLICATION_JSON)
|
||||
@Transactional(Transactional.TxType.REQUIRED)
|
||||
public ContentItem getContentItem(
|
||||
@PathParam("content-section") final String sectionName,
|
||||
@PathParam("path") final String path
|
||||
) {
|
||||
final String[] pathTokens = path.split("/");
|
||||
|
||||
final ContentSection section = sectionRepo
|
||||
.findByLabel(sectionName)
|
||||
.orElseThrow(
|
||||
() -> new WebApplicationException(
|
||||
String.format(
|
||||
"ContentSection \"%s\" does not exist.",
|
||||
sectionName),
|
||||
Response.Status.NOT_FOUND
|
||||
)
|
||||
);
|
||||
|
||||
final Folder rootFolder = section.getRootDocumentsFolder();
|
||||
final StringBuilder folderPathBuilder = new StringBuilder("/");
|
||||
Folder folder = rootFolder;
|
||||
for (int i = 0; i < pathTokens.length - 1; i++) {
|
||||
final String pathToken = pathTokens[i];
|
||||
folderPathBuilder.append(pathToken);
|
||||
final Optional<Folder> result = folder
|
||||
.getSubFolders()
|
||||
.stream()
|
||||
.filter(subFolder -> subFolder.getName().equals(pathToken))
|
||||
.findAny();
|
||||
if (result.isPresent()) {
|
||||
folder = result.get();
|
||||
} else {
|
||||
throw new WebApplicationException(
|
||||
String.format(
|
||||
"Folder %s not found in ContentSection %s.",
|
||||
folderPathBuilder.toString(),
|
||||
sectionName
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
final String itemName = pathTokens[pathTokens.length - 1];
|
||||
final ContentItem item = itemRepo
|
||||
.findByNameInFolder(folder, itemName)
|
||||
.orElseThrow(
|
||||
() -> new WebApplicationException(
|
||||
String.format(
|
||||
"No ContentItem %s in folder %s of ContentSection %s.",
|
||||
itemName,
|
||||
folderPathBuilder.toString()
|
||||
),
|
||||
Response.Status.NOT_FOUND
|
||||
)
|
||||
);
|
||||
return item;
|
||||
}
|
||||
}
|
||||
|
|
@ -38,6 +38,7 @@ public class ContentSectionsApplication extends Application{
|
|||
|
||||
classes.add(Assets.class);
|
||||
classes.add(ContentItems.class);
|
||||
classes.add(ContentItemController.class);
|
||||
classes.add(ContentSections.class);
|
||||
classes.add(Images.class);
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,354 @@
|
|||
/*
|
||||
* Copyright (C) 2020 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 db.migrations.org.libreccm.ccm_core.pgsql;
|
||||
|
||||
import org.flywaydb.core.api.migration.BaseJavaMigration;
|
||||
import org.flywaydb.core.api.migration.Context;
|
||||
|
||||
import java.io.StringWriter;
|
||||
import java.sql.Connection;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import javax.json.Json;
|
||||
import javax.json.JsonObjectBuilder;
|
||||
import javax.json.JsonWriter;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
||||
*/
|
||||
public class V7_0_0_37__localized_string_embedded_to_json extends BaseJavaMigration {
|
||||
|
||||
private static final String[] ADD_COLUMN_STATEMENTS = new String[]{
|
||||
"alter table CCM_CORE.CATEGORIES add column TITLE jsonb",
|
||||
"alter table CCM_CORE.CATEGORIES add column DESCRIPTION jsonb",
|
||||
"alter table CCM_CORE.CATEGORY_DOMAINS add column DESCRIPTION jsonb",
|
||||
"alter table CCM_CORE.CATEGORY_DOMAINS add column TITLE jsonb",
|
||||
"alter table CCM_ROLES add column DESCRIPTION jsonb",
|
||||
"alter table CCM_CORE.FORMBUILDER_COMPONENTS add column DESCRIPTION jsonb",
|
||||
"alter table CCM_CORE.FORMBUILDER_DATA_QUERIES add column DESCRIPTION jsonb",
|
||||
"alter table CCM_CORE.FORMBUILDER_DATA_QUERIES add column QUERY_NAME jsonb",
|
||||
"alter table CCM_CORE.FORMBUILDER_OPTIONS add column LABEL jsonb",
|
||||
"alter table CCM_CORE.FORMBUILDER_PROCESS_LISTENERS add column DESCRIPTION jsonb",
|
||||
"alter table CCM_CORE.FORMBUILDER_PROCESS_LISTENERS add column LISTENER_NAME jsonb",
|
||||
"alter table CCM_CORE.PAGE_MODELS add column DESCRIPTION jsonb",
|
||||
"alter table CCM_CORE.PAGE_MODELS add column TITLE jsonb",
|
||||
"alter table CCM_CORE.RESOURCE_TYPES add column DESCRIPTION jsonb",
|
||||
"alter table CCM_CORE.RESOURCES add column DESCRIPTION jsonb",
|
||||
"alter table CCM_CORE.RESOURCES add column TITLE jsonb",
|
||||
"alter table CCM_CORE.SETTINGS add column SETTING_VALUE_LOCALIZED_STRING jsonb",
|
||||
"alter table CCM_CORE.WORKFLOW_TASKS add column DESCRIPTION jsonb",
|
||||
"alter table CCM_CORE.WORKFLOW_TASKS add column LABEL jsonb",
|
||||
"alter table CCM_CORE.WORKFLOWS add column DESCRIPTION jsonb",
|
||||
"alter table CCM_CORE.WORKFLOWS add column NAME jsonb"
|
||||
};
|
||||
|
||||
private static final int OBJECT_TABLE = 0;
|
||||
|
||||
private static final int LOCALIZED_STR_TABLE = 1;
|
||||
|
||||
private static final int OBJECT_ID_COL = 2;
|
||||
|
||||
private static final int VALUE_ID_COL = 3;
|
||||
|
||||
private static final int TARGET_COL = 4;
|
||||
|
||||
private static final String[][] MIGRATE = new String[][]{
|
||||
new String[]{
|
||||
"CCM_CORE.CATEGORIES",
|
||||
"CCM_CORE.CATEGORY_TITLES",
|
||||
"OBJECT_ID",
|
||||
"OBJECT_ID",
|
||||
"TITLE"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.CATEGORIES",
|
||||
"CCM_CORE.CATEGORY_DESCRIPTIONS",
|
||||
"OBJECT_ID",
|
||||
"OBJECT_ID",
|
||||
"DESCRIPTION"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.CATEGORY_DOMAINS",
|
||||
"CCM_CORE.DOMAIN_TITLES",
|
||||
"OBJECT_ID",
|
||||
"OBJECT_ID",
|
||||
"TITLE"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.CATEGORY_DOMAINS",
|
||||
"CCM_CORE.DOMAIN_DESCRIPTIONS",
|
||||
"OBJECT_ID",
|
||||
"OBJECT_ID",
|
||||
"DESCRIPTIONS"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.CCM_ROLES",
|
||||
"CCM_CORE.ROLE_DESCRIPTIONS",
|
||||
"ROLE_ID",
|
||||
"ROLE_ID",
|
||||
"DESCRIPTION"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.FORMBUILDER_COMPONENTS",
|
||||
"CCM_CORE.FORMBUILDER_COMPONENT_DESCRIPTIONS",
|
||||
"OBJECT_ID",
|
||||
"OBJECT_ID",
|
||||
"DESCRIPTION"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.FORMBUILDER_DATA_QUERIES",
|
||||
"FORMBUILDER_DATA_QUERY_DESCRIPTIONS",
|
||||
"OBJECT_ID",
|
||||
"OBJECT_ID",
|
||||
"DESCRIPTION"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.FORMBUILDER_DATA_QUERIES",
|
||||
"FORMBUILDER_DATA_QUERY_NAMES",
|
||||
"OBJECT_ID",
|
||||
"OBJECT_ID",
|
||||
"QUERY_NAME"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.FORMBUILDER_OPTIONS",
|
||||
"FORMBUILDER_OPTION_LABELS",
|
||||
"OBJECT_ID",
|
||||
"OBJECT_ID",
|
||||
"LABEL"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.FORMBUILDER_PROCESS_LISTENERS",
|
||||
"FORMBUILDER_LISTENER_DESCRIPTIONS",
|
||||
"OBJECT_ID",
|
||||
"OBJECT_ID",
|
||||
"DESCRIPTION"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.FORMBUILDER_PROCESS_LISTENERS",
|
||||
"FORMBUILDER_LISTENER_NAMES",
|
||||
"OBJECT_ID",
|
||||
"OBJECT_ID",
|
||||
"LISTENER_NAME"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.PAGE_MODELS",
|
||||
"CCM_CORE.PAGE_MODEL_DESCRIPTIONS",
|
||||
"PAGE_MODEL_ID",
|
||||
"PAGE_MODEL_ID",
|
||||
"DESCRIPTION"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.PAGE_MODELS",
|
||||
"CCM_CORE.PAGE_MODEL_TITLES",
|
||||
"PAGE_MODEL_ID",
|
||||
"PAGE_MODEL_ID",
|
||||
"TITLE"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.RESOURCE_TYPES",
|
||||
"CCM_CORE.RESOURCE_TYPE_DESCRIPTIONS",
|
||||
"RESOURCE_TYPE_ID",
|
||||
"RESOURCE_TYPE_ID",
|
||||
"DESCRIPTION"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.RESOURCES",
|
||||
"CCM_CORE.RESOURCE_DESCRIPTIONS",
|
||||
"OBJECT_ID", "OBJECT_ID",
|
||||
"DESCRIPTION"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.RESOURCES",
|
||||
"CCM_CORE.RESOURCE_TITLES",
|
||||
"OBJECT_ID",
|
||||
"OBJECT_ID",
|
||||
"TITLE"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.SETTINGS",
|
||||
"CCM_CORE.SETTINGS_L10N_STR_VALUES",
|
||||
"SETTING_ID",
|
||||
"ENTRY_ID",
|
||||
"SETTING_VALUE_LOCALIZED_STRING"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.WORKFLOW_TASKS",
|
||||
"CCM_CORE.WORKFLOW_TASK_DESCRIPTIONS",
|
||||
"TASK_ID",
|
||||
"TASK_ID",
|
||||
"DESCRIPTION"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.WORKFLOW_TASKS",
|
||||
"CCM_CORE.WORKFLOW_TASK_LABELS",
|
||||
"TASK_ID",
|
||||
"TASK_ID",
|
||||
"LABEL"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.WORKFLOWS",
|
||||
"CCM_CORE.WORKFLOW_DESCRIPTIONS",
|
||||
"WORKFLOW_ID",
|
||||
"WORKFLOW_ID",
|
||||
"DESCRIPTION"
|
||||
},
|
||||
new String[]{
|
||||
"CCM_CORE.WORKFLOWS",
|
||||
"CCM_CORE.WORKFLOW_NAMES",
|
||||
"WORKFLOW_ID",
|
||||
"WORKFLOW_ID",
|
||||
"NAME"
|
||||
}
|
||||
};
|
||||
|
||||
private static final String SELECT_IDS_QUERY_TEMPLATE = "select %s from %s";
|
||||
|
||||
private static final String SELECT_VALUES_QUERY_TEMPLATE
|
||||
= "select locale, localized_value from %s where %s = ?";
|
||||
|
||||
private static final String SET_VALUES_QUERY_TEMPLATE
|
||||
= "update %s set %s = ? where %s = ?";
|
||||
|
||||
private static final String[] DROP_TABLES = new String[]{
|
||||
"CCM_CORE.CATEGORY_TITLES",
|
||||
"CCM_CORE.CATEGORY_DESCRIPTIONS",
|
||||
"CCM_CORE.DOMAIN_TITLES",
|
||||
"CCM_CORE.DOMAIN_DESCRIPTIONS",
|
||||
"CCM_CORE.ROLE_DESCRIPTIONS",
|
||||
"CCM_CORE.FORMBUILDER_COMPONENT_DESCRIPTIONS",
|
||||
"FORMBUILDER_DATA_QUERY_DESCRIPTIONS",
|
||||
"FORMBUILDER_DATA_QUERY_NAMES",
|
||||
"FORMBUILDER_OPTION_LABELS",
|
||||
"FORMBUILDER_LISTENER_DESCRIPTIONS",
|
||||
"FORMBUILDER_LISTENER_NAMES",
|
||||
"CCM_CORE.PAGE_MODEL_DESCRIPTIONS",
|
||||
"CCM_CORE.PAGE_MODEL_TITLES",
|
||||
"CCM_CORE.RESOURCE_TYPE_DESCRIPTIONS",
|
||||
"CCM_CORE.RESOURCE_DESCRIPTIONS",
|
||||
"CCM_CORE.RESOURCE_TITLES",
|
||||
"CCM_CORE.SETTINGS_L10N_STR_VALUES",
|
||||
"CCM_CORE.WORKFLOW_TASK_DESCRIPTIONS",
|
||||
"CCM_CORE.WORKFLOW_TASK_LABELS",
|
||||
"CCM_CORE.WORKFLOW_DESCRIPTIONS",
|
||||
"CCM_CORE.WORKFLOW_NAMES",};
|
||||
|
||||
private static final String DROP_TABLES_QUERY_TEMPLATE = "drop table %s";
|
||||
|
||||
@Override
|
||||
public void migrate(final Context context) throws Exception {
|
||||
final Connection connection = context.getConnection();
|
||||
|
||||
// Add columns for localized strings
|
||||
for (final String addColStatement : ADD_COLUMN_STATEMENTS) {
|
||||
try (PreparedStatement statement = connection.prepareStatement(
|
||||
addColStatement
|
||||
)) {
|
||||
statement.execute();
|
||||
}
|
||||
}
|
||||
|
||||
for (final String[] migrate : MIGRATE) {
|
||||
final String objectTable = migrate[OBJECT_TABLE];
|
||||
final String localizedStringTable = migrate[LOCALIZED_STR_TABLE];
|
||||
final String objectIdCol = migrate[OBJECT_ID_COL];
|
||||
final String valueIdCol = migrate[VALUE_ID_COL];
|
||||
final String targetCol = migrate[TARGET_COL];
|
||||
|
||||
final List<Long> objectIds = new ArrayList<>();
|
||||
final String selectIdsQuerySql = String.format(
|
||||
SELECT_IDS_QUERY_TEMPLATE,
|
||||
objectIdCol,
|
||||
objectTable
|
||||
);
|
||||
try (PreparedStatement stmt = connection.prepareStatement(
|
||||
selectIdsQuerySql
|
||||
);
|
||||
ResultSet resultSet = stmt.executeQuery()) {
|
||||
while (resultSet.next()) {
|
||||
objectIds.add(resultSet.getLong(objectIdCol));
|
||||
}
|
||||
}
|
||||
|
||||
final String valuesQuerySql = String.format(
|
||||
SELECT_VALUES_QUERY_TEMPLATE,
|
||||
localizedStringTable,
|
||||
valueIdCol
|
||||
);
|
||||
final String setValuesQuerySql = String.format(
|
||||
SET_VALUES_QUERY_TEMPLATE,
|
||||
objectTable,
|
||||
targetCol,
|
||||
objectIdCol
|
||||
);
|
||||
try (PreparedStatement selectValuesStmt = connection
|
||||
.prepareStatement(valuesQuerySql);
|
||||
PreparedStatement setValuesStmt = connection.prepareStatement(
|
||||
setValuesQuerySql
|
||||
)) {
|
||||
for (final Long objectId : objectIds) {
|
||||
selectValuesStmt.setLong(1, objectId);
|
||||
final JsonObjectBuilder jsonObjBuilder = Json
|
||||
.createObjectBuilder();
|
||||
try (ResultSet resultSet = selectValuesStmt.executeQuery()) {
|
||||
while (resultSet.next()) {
|
||||
final String locale = resultSet.getString(
|
||||
"locale"
|
||||
);
|
||||
final String localizedValue = resultSet.getString(
|
||||
"localizedValue"
|
||||
);
|
||||
jsonObjBuilder.add(locale, localizedValue);
|
||||
}
|
||||
}
|
||||
|
||||
try (StringWriter strWriter = new StringWriter();
|
||||
JsonWriter jsonWriter = Json.createWriter(strWriter)) {
|
||||
jsonWriter.writeObject(jsonObjBuilder.build());
|
||||
setValuesStmt.setString(1, strWriter.toString());
|
||||
}
|
||||
setValuesStmt.setLong(2, objectId);
|
||||
setValuesStmt.execute();
|
||||
|
||||
setValuesStmt.clearParameters();
|
||||
selectValuesStmt.clearParameters();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
for (final String dropTable : DROP_TABLES) {
|
||||
try(PreparedStatement stmt = connection.prepareStatement(
|
||||
String.format(DROP_TABLES_QUERY_TEMPLATE, dropTable)
|
||||
)) {
|
||||
stmt.execute();
|
||||
}
|
||||
}
|
||||
|
||||
// SELECT object_id FROM ... order by object_id;
|
||||
// for all object_id SELECT locale, localized_value FROM ... WHERE object_id = :object_id
|
||||
// build json
|
||||
// INSERT INTO ... WHERE object_id = :object_id
|
||||
// Drop tables
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
@ -40,6 +40,7 @@ import java.util.Objects;
|
|||
import static org.libreccm.categorization.CategorizationConstants.CAT_XML_NS;
|
||||
import static org.libreccm.core.CoreConstants.DB_SCHEMA;
|
||||
|
||||
import org.hibernate.annotations.Type;
|
||||
import org.libreccm.imexport.Exportable;
|
||||
|
||||
import javax.persistence.AssociationOverride;
|
||||
|
|
@ -77,59 +78,48 @@ import javax.persistence.Table;
|
|||
@NamedQueries({
|
||||
@NamedQuery(
|
||||
name = "Category.topLevelCategories",
|
||||
query = "SELECT c FROM Category c WHERE c.parentCategory IS NULL")
|
||||
,
|
||||
query = "SELECT c FROM Category c WHERE c.parentCategory IS NULL"),
|
||||
@NamedQuery(
|
||||
name = "Category.findByName",
|
||||
query = "SELECT c FROM Category c WHERE c.name = :name")
|
||||
,
|
||||
query = "SELECT c FROM Category c WHERE c.name = :name"),
|
||||
@NamedQuery(
|
||||
name = "Category.findByUuid",
|
||||
query = "SELECT c FROM Category c WHERE c.uuid = :uuid")
|
||||
,
|
||||
query = "SELECT c FROM Category c WHERE c.uuid = :uuid"),
|
||||
@NamedQuery(
|
||||
name = "Category.findParentCategory",
|
||||
query = "SELECT c.parentCategory FROM Category c WHERE c = :category")
|
||||
,
|
||||
query = "SELECT c.parentCategory FROM Category c WHERE c = :category"),
|
||||
@NamedQuery(
|
||||
name = "Category.countAssignedCategories",
|
||||
query = "SELECT COUNT(c) FROM Categorization c "
|
||||
+ "WHERE c.categorizedObject = :object"
|
||||
)
|
||||
,
|
||||
),
|
||||
@NamedQuery(
|
||||
name = "Category.isCategorized",
|
||||
query = "SELECT (CASE WHEN COUNT(c) > 0 THEN true ELSE false END) "
|
||||
+ "FROM Categorization c "
|
||||
+ "WHERE c.categorizedObject = :object")
|
||||
,
|
||||
+ "WHERE c.categorizedObject = :object"),
|
||||
@NamedQuery(
|
||||
name = "Category.countObjects",
|
||||
query = "SELECT COUNT(c) FROM Categorization c "
|
||||
+ "WHERE c.category = :category")
|
||||
,
|
||||
+ "WHERE c.category = :category"),
|
||||
@NamedQuery(
|
||||
name = "Category.hasObjects",
|
||||
query = "SELECT (CASE WHEN COUNT(c) > 0 THEN true ELSE false END) "
|
||||
+ "FROM Categorization c "
|
||||
+ "WHERE c.category = :category")
|
||||
,
|
||||
+ "WHERE c.category = :category"),
|
||||
@NamedQuery(
|
||||
name = "Category.countSubCategories",
|
||||
query = "SELECT COUNT(c) FROM Category c "
|
||||
+ "WHERE c.parentCategory =:category")
|
||||
,
|
||||
+ "WHERE c.parentCategory =:category"),
|
||||
@NamedQuery(
|
||||
name = "Category.hasSubCategories",
|
||||
query = "SELECT (CASE WHEN COUNT(c) > 0 THEN true ELSE false END) "
|
||||
+ "FROM Category c "
|
||||
+ "WHERE c.parentCategory = :category")
|
||||
,
|
||||
+ "WHERE c.parentCategory = :category"),
|
||||
@NamedQuery(
|
||||
name = "Category.findByNameAndParent",
|
||||
query = "SELECT c FROM Category c "
|
||||
+ "WHERE c.name = :name AND c.parentCategory = :parent")
|
||||
,
|
||||
+ "WHERE c.name = :name AND c.parentCategory = :parent"),
|
||||
@NamedQuery(
|
||||
name = "Category.hasSubCategoryWithName",
|
||||
query = "SELECT (CASE WHEN COUNT(c) > 0 THEN true ELSE False END) "
|
||||
|
|
@ -174,28 +164,32 @@ public class Category extends CcmObject implements Serializable, Exportable {
|
|||
/**
|
||||
* The human readable and localisable title of the category.
|
||||
*/
|
||||
@Embedded
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(name = "CATEGORY_TITLES",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "OBJECT_ID")}
|
||||
))
|
||||
// @Embedded
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(name = "CATEGORY_TITLES",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "OBJECT_ID")}
|
||||
// ))
|
||||
@Column(name = "TITLE")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
@XmlElement(name = "title", namespace = CAT_XML_NS)
|
||||
private LocalizedString title;
|
||||
|
||||
/**
|
||||
* A localisable description of the category.
|
||||
*/
|
||||
@Embedded
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(name = "CATEGORY_DESCRIPTIONS",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "OBJECT_ID")}
|
||||
))
|
||||
// @Embedded
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(name = "CATEGORY_DESCRIPTIONS",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "OBJECT_ID")}
|
||||
// ))
|
||||
@Column(name = "DESCRIPTION")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
@XmlElement(name = "description", namespace = CAT_XML_NS)
|
||||
private LocalizedString description;
|
||||
|
||||
|
|
|
|||
|
|
@ -142,9 +142,10 @@ public class CategoryTreeModelLite implements TreeModel {
|
|||
return category.getName();
|
||||
} else {
|
||||
final CdiUtil cdiUtil = CdiUtil.createCdiUtil();
|
||||
final CategoryTreeModelLiteController controller = cdiUtil
|
||||
.findBean(CategoryTreeModelLiteController.class);
|
||||
return controller.getTitle(category);
|
||||
final GlobalizationHelper globalizationHelper = cdiUtil
|
||||
.findBean(GlobalizationHelper.class);
|
||||
return globalizationHelper
|
||||
.getValueFromLocalizedString(category.getTitle());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -40,6 +40,7 @@ import java.io.Serializable;
|
|||
import static org.libreccm.categorization.CategorizationConstants.CAT_XML_NS;
|
||||
import static org.libreccm.core.CoreConstants.DB_SCHEMA;
|
||||
|
||||
import org.hibernate.annotations.Type;
|
||||
import org.libreccm.imexport.Exportable;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
|
@ -160,26 +161,30 @@ public class Domain extends CcmObject implements Serializable, Exportable {
|
|||
* A human readable title for the {@code Domain}. The title can be
|
||||
* localised.
|
||||
*/
|
||||
@Embedded
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(name = "DOMAIN_TITLES",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "OBJECT_ID")}))
|
||||
// @Embedded
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(name = "DOMAIN_TITLES",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "OBJECT_ID")}))
|
||||
@Column(name = "TITLE")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
@XmlElement(name = "title", namespace = CAT_XML_NS)
|
||||
private LocalizedString title;
|
||||
|
||||
/**
|
||||
* A description of the domain. The description can be localised.
|
||||
*/
|
||||
@Embedded
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(name = "DOMAIN_DESCRIPTIONS",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "OBJECT_ID")}))
|
||||
// @Embedded
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(name = "DOMAIN_DESCRIPTIONS",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "OBJECT_ID")}))
|
||||
@Column(name = "DESCRIPTION")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
@XmlElement(name = "description", namespace = CAT_XML_NS)
|
||||
private LocalizedString description;
|
||||
|
||||
|
|
|
|||
|
|
@ -23,13 +23,10 @@ import org.libreccm.l10n.LocalizedString;
|
|||
import java.io.Serializable;
|
||||
import java.util.Objects;
|
||||
|
||||
import static org.libreccm.core.CoreConstants.DB_SCHEMA;
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.AssociationOverride;
|
||||
import javax.persistence.Embedded;
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.JoinColumn;
|
||||
import javax.persistence.JoinTable;
|
||||
|
||||
/**
|
||||
* A setting which stores a {@link LocalizedString} . This can be used for
|
||||
|
|
@ -44,13 +41,15 @@ public class LocalizedStringSetting
|
|||
|
||||
private static final long serialVersionUID = 667750736151545279L;
|
||||
|
||||
@Embedded
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(name = "SETTINGS_L10N_STR_VALUES",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "ENTRY_ID")}))
|
||||
// @Embedded
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(name = "SETTINGS_L10N_STR_VALUES",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "ENTRY_ID")}))
|
||||
@Column(name = "SETTING_VALUE_LOCALIZED_STRING")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
private LocalizedString value;
|
||||
|
||||
public LocalizedStringSetting() {
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@ import java.io.Serializable;
|
|||
|
||||
import static org.libreccm.core.CoreConstants.DB_SCHEMA;
|
||||
|
||||
import org.hibernate.annotations.Type;
|
||||
import org.libreccm.imexport.Exportable;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
|
@ -82,25 +83,29 @@ public class Resource extends CcmObject implements Serializable, Exportable {
|
|||
/**
|
||||
* A localisable title for the {@code Resource}.
|
||||
*/
|
||||
@Embedded
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(name = "RESOURCE_TITLES",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "OBJECT_ID")}))
|
||||
// @Embedded
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(name = "RESOURCE_TITLES",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "OBJECT_ID")}))
|
||||
@Column(name = "TITLE")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
private LocalizedString title;
|
||||
|
||||
/**
|
||||
* A localisable description for the {@code Resource}.
|
||||
*/
|
||||
@Embedded
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(name = "RESOURCE_DESCRIPTIONS",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "OBJECT_ID")}))
|
||||
// @Embedded
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(name = "RESOURCE_DESCRIPTIONS",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "OBJECT_ID")}))
|
||||
@Column(name = "DESCRIPTION")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
private LocalizedString description;
|
||||
|
||||
@ManyToOne
|
||||
|
|
|
|||
|
|
@ -27,17 +27,14 @@ import java.util.Objects;
|
|||
|
||||
import static org.libreccm.core.CoreConstants.DB_SCHEMA;
|
||||
|
||||
import org.hibernate.annotations.Type;
|
||||
import org.libreccm.imexport.Exportable;
|
||||
|
||||
import javax.persistence.AssociationOverride;
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Embedded;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.Inheritance;
|
||||
import javax.persistence.InheritanceType;
|
||||
import javax.persistence.JoinColumn;
|
||||
import javax.persistence.JoinTable;
|
||||
import javax.persistence.NamedQueries;
|
||||
import javax.persistence.NamedQuery;
|
||||
import javax.persistence.Table;
|
||||
|
|
@ -87,13 +84,15 @@ public class ResourceType implements Serializable, Exportable {
|
|||
@Column(name = "TITLE", length = 254, nullable = false)
|
||||
private String title;
|
||||
|
||||
@Embedded
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(name = "RESOURCE_TYPE_DESCRIPTIONS",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "RESOURCE_TYPE_ID")}))
|
||||
// @Embedded
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(name = "RESOURCE_TYPE_DESCRIPTIONS",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "RESOURCE_TYPE_ID")}))
|
||||
@Column(name = "DESCRIPTION")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
private LocalizedString description;
|
||||
|
||||
@Column(name = "WORKSPACE_APP")
|
||||
|
|
|
|||
|
|
@ -21,7 +21,6 @@ package org.libreccm.formbuilder;
|
|||
import org.libreccm.core.CcmObject;
|
||||
import org.libreccm.l10n.LocalizedString;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.io.Serializable;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
|
@ -29,6 +28,14 @@ import java.util.Objects;
|
|||
|
||||
import static org.libreccm.core.CoreConstants.DB_SCHEMA;
|
||||
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.ManyToOne;
|
||||
import javax.persistence.OneToMany;
|
||||
import javax.persistence.Table;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
||||
|
|
@ -46,13 +53,15 @@ public class Component extends CcmObject implements Serializable {
|
|||
@Column(name = "ADMIN_NAME")
|
||||
private String adminName;
|
||||
|
||||
@Embedded
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(name = "FORMBUILDER_COMPONENT_DESCRIPTIONS",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "COMPONENT_ID")}))
|
||||
// @Embedded
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(name = "FORMBUILDER_COMPONENT_DESCRIPTIONS",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "COMPONENT_ID")}))
|
||||
@Column(name = "DESCRIPTION")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
private LocalizedString description;
|
||||
|
||||
@Column(name = "ATTRIBUTE_STRING")
|
||||
|
|
|
|||
|
|
@ -20,12 +20,17 @@ package org.libreccm.formbuilder;
|
|||
|
||||
import org.libreccm.l10n.LocalizedString;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.io.Serializable;
|
||||
import java.util.Objects;
|
||||
|
||||
import static org.libreccm.core.CoreConstants.DB_SCHEMA;
|
||||
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.Table;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
||||
|
|
@ -39,12 +44,14 @@ public class Option extends Component implements Serializable {
|
|||
@Column(name = "PARAMETER_VALUE")
|
||||
private String parameterValue;
|
||||
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(name = "FORMBUILDER_OPTION_LABELS",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "OPTION_ID")}))
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(name = "FORMBUILDER_OPTION_LABELS",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "OPTION_ID")}))
|
||||
@Column(name = "LABEL")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
private LocalizedString label;
|
||||
|
||||
public String getParameterValue() {
|
||||
|
|
|
|||
|
|
@ -21,12 +21,20 @@ package org.libreccm.formbuilder;
|
|||
import org.libreccm.core.CcmObject;
|
||||
import org.libreccm.l10n.LocalizedString;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.io.Serializable;
|
||||
import java.util.Objects;
|
||||
|
||||
import static org.libreccm.core.CoreConstants.DB_SCHEMA;
|
||||
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.AssociationOverride;
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.JoinColumn;
|
||||
import javax.persistence.JoinTable;
|
||||
import javax.persistence.Table;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
||||
|
|
@ -40,22 +48,26 @@ public class PersistentDataQuery extends CcmObject implements Serializable {
|
|||
@Column(name = "QUERY_ID")
|
||||
private String queryId;
|
||||
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(
|
||||
name = "FORMBUILDER_DATA_QUERY_NAMES",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "DATA_QUERY_ID")}))
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(
|
||||
// name = "FORMBUILDER_DATA_QUERY_NAMES",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "DATA_QUERY_ID")}))
|
||||
@Column(name = "QUERY_NAME")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
private LocalizedString name;
|
||||
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(
|
||||
name = "FORMBUILDER_DATA_QUERY_DESCRIPTIONS",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "DATA_QUERY_ID")}))
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(
|
||||
// name = "FORMBUILDER_DATA_QUERY_DESCRIPTIONS",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "DATA_QUERY_ID")}))
|
||||
@Column(name = "DESCRIPTION")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
private LocalizedString description;
|
||||
|
||||
public PersistentDataQuery() {
|
||||
|
|
|
|||
|
|
@ -26,11 +26,10 @@ import java.util.Objects;
|
|||
|
||||
import static org.libreccm.core.CoreConstants.DB_SCHEMA;
|
||||
|
||||
import javax.persistence.AssociationOverride;
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.JoinColumn;
|
||||
import javax.persistence.JoinTable;
|
||||
import javax.persistence.ManyToOne;
|
||||
import javax.persistence.Table;
|
||||
|
||||
|
|
@ -44,23 +43,26 @@ public class ProcessListener extends CcmObject implements Serializable {
|
|||
|
||||
private static final long serialVersionUID = -3029184333026605708L;
|
||||
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(
|
||||
name = "FORMBUILDER_PROCESS_LISTENER_NAMES",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "PROCESS_LISTENER_ID")}))
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(
|
||||
// name = "FORMBUILDER_PROCESS_LISTENER_NAMES",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "PROCESS_LISTENER_ID")}))
|
||||
@Column(name = "LISTENER_NAME")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
private LocalizedString name;
|
||||
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(
|
||||
name = "FORMBUILDER_PROCESS_LISTENER_DESCRIPTIONS",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "PROCESS_LISTENER_ID")}))
|
||||
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(
|
||||
// name = "FORMBUILDER_PROCESS_LISTENER_DESCRIPTIONS",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "PROCESS_LISTENER_ID")}))
|
||||
@Column(name = "DESCRIPTION")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
private LocalizedString description;
|
||||
|
||||
@Column(name = "LISTENER_CLASS")
|
||||
|
|
|
|||
|
|
@ -0,0 +1,36 @@
|
|||
/*
|
||||
* Copyright (C) 2020 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.libreccm.hibernate.dialects;
|
||||
|
||||
import org.hibernate.dialect.H2Dialect;
|
||||
|
||||
import java.sql.Types;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
||||
*/
|
||||
public class LibreCcmH2Dialect extends H2Dialect {
|
||||
|
||||
public LibreCcmH2Dialect() {
|
||||
super();
|
||||
super.registerColumnType(Types.JAVA_OBJECT, "json");
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
/*
|
||||
* Copyright (C) 2020 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.libreccm.hibernate.dialects;
|
||||
|
||||
import org.hibernate.dialect.PostgreSQL9Dialect;
|
||||
|
||||
import java.sql.Types;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
||||
*/
|
||||
public class LibreCcmPgSql9Dialect extends PostgreSQL9Dialect {
|
||||
|
||||
public LibreCcmPgSql9Dialect() {
|
||||
super();
|
||||
super.registerColumnType(Types.JAVA_OBJECT, "jsonb");
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -19,22 +19,14 @@
|
|||
package org.libreccm.l10n;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import org.hibernate.annotations.Type;
|
||||
import org.hibernate.search.annotations.Field;
|
||||
import org.libreccm.l10n.jaxb.LocalizedStringValuesAdapter;
|
||||
|
||||
import javax.persistence.Basic;
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.ElementCollection;
|
||||
import javax.persistence.Embeddable;
|
||||
import javax.persistence.FetchType;
|
||||
import javax.persistence.Lob;
|
||||
import javax.persistence.MapKeyColumn;
|
||||
import javax.xml.bind.annotation.XmlAccessType;
|
||||
import javax.xml.bind.annotation.XmlAccessorType;
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
import javax.xml.bind.annotation.XmlRootElement;
|
||||
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
|
|
@ -45,6 +37,10 @@ import java.util.Set;
|
|||
|
||||
import static org.libreccm.l10n.L10NConstants.L10N_XML_NS;
|
||||
|
||||
import javax.json.Json;
|
||||
import javax.json.JsonObject;
|
||||
import javax.json.JsonObjectBuilder;
|
||||
|
||||
/**
|
||||
* A helper class for localisable string properties. This class is declared as
|
||||
* embeddable, so that it can be used in every other entity. The localised
|
||||
|
|
@ -53,7 +49,7 @@ import static org.libreccm.l10n.L10NConstants.L10N_XML_NS;
|
|||
*
|
||||
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
||||
*/
|
||||
@Embeddable
|
||||
//@Embeddable
|
||||
@XmlRootElement(name = "localized-string", namespace = L10N_XML_NS)
|
||||
@XmlAccessorType(XmlAccessType.FIELD)
|
||||
public class LocalizedString implements Serializable {
|
||||
|
|
@ -63,13 +59,13 @@ public class LocalizedString implements Serializable {
|
|||
/**
|
||||
* The localised values of the string.
|
||||
*/
|
||||
@ElementCollection(fetch = FetchType.LAZY)
|
||||
@MapKeyColumn(name = "LOCALE")
|
||||
@Column(name = "LOCALIZED_VALUE")
|
||||
@Basic
|
||||
@Lob
|
||||
@Type(type = "org.hibernate.type.TextType")
|
||||
@Field
|
||||
// @ElementCollection(fetch = FetchType.LAZY)
|
||||
// @MapKeyColumn(name = "LOCALE")
|
||||
// @Column(name = "LOCALIZED_VALUE")
|
||||
// @Basic
|
||||
// @Lob
|
||||
// @Type(type = "org.hibernate.type.TextType")
|
||||
// @Field
|
||||
@XmlElement(name = "values", namespace = L10N_XML_NS)
|
||||
@XmlJavaTypeAdapter(LocalizedStringValuesAdapter.class)
|
||||
private Map<Locale, String> values;
|
||||
|
|
@ -202,6 +198,41 @@ public class LocalizedString implements Serializable {
|
|||
return obj instanceof LocalizedString;
|
||||
}
|
||||
|
||||
public static LocalizedString fromJson(final JsonObject jsonObject) {
|
||||
final LocalizedString localizedString = new LocalizedString();
|
||||
|
||||
jsonObject
|
||||
.entrySet()
|
||||
.stream()
|
||||
.forEach(
|
||||
entry -> localizedString.addValue(
|
||||
new Locale(entry.getKey()),
|
||||
jsonObject.getString(entry.getKey())
|
||||
)
|
||||
);
|
||||
|
||||
return localizedString;
|
||||
}
|
||||
|
||||
public JsonObjectBuilder buildJson() {
|
||||
final JsonObjectBuilder builder = Json.createObjectBuilder();
|
||||
|
||||
values
|
||||
.entrySet()
|
||||
.stream()
|
||||
.forEach(
|
||||
entry -> builder.add(
|
||||
entry.getKey().toString(), entry.getValue()
|
||||
)
|
||||
);
|
||||
|
||||
return builder;
|
||||
}
|
||||
|
||||
public JsonObject toJson() {
|
||||
return buildJson().build();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return String.format(
|
||||
|
|
|
|||
|
|
@ -0,0 +1,155 @@
|
|||
/*
|
||||
* Copyright (C) 2020 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.libreccm.l10n;
|
||||
|
||||
import org.hibernate.HibernateException;
|
||||
import org.hibernate.engine.spi.SharedSessionContractImplementor;
|
||||
import org.hibernate.usertype.UserType;
|
||||
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.ObjectInputStream;
|
||||
import java.io.ObjectOutputStream;
|
||||
import java.io.Serializable;
|
||||
import java.io.StringReader;
|
||||
import java.io.StringWriter;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.sql.Types;
|
||||
import java.util.Objects;
|
||||
|
||||
import javax.json.Json;
|
||||
import javax.json.JsonObject;
|
||||
import javax.json.JsonWriter;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
||||
*/
|
||||
public class LocalizedStringType implements UserType {
|
||||
|
||||
@Override
|
||||
public int[] sqlTypes() {
|
||||
return new int[]{Types.JAVA_OBJECT};
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<LocalizedString> returnedClass() {
|
||||
return LocalizedString.class;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(final Object obj1, final Object obj2)
|
||||
throws HibernateException {
|
||||
return Objects.equals(obj1, obj2);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode(final Object obj) throws HibernateException {
|
||||
return Objects.hashCode(obj);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object nullSafeGet(
|
||||
final ResultSet resultSet,
|
||||
final String[] names,
|
||||
final SharedSessionContractImplementor session,
|
||||
final Object owner
|
||||
) throws HibernateException, SQLException {
|
||||
final String cellContent = resultSet.getString(names[0]);
|
||||
if (cellContent == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return LocalizedString.fromJson(
|
||||
Json.createReader(new StringReader(cellContent)).readObject()
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void nullSafeSet(
|
||||
final PreparedStatement statement,
|
||||
final Object value,
|
||||
final int index,
|
||||
final SharedSessionContractImplementor session
|
||||
) throws HibernateException, SQLException {
|
||||
final JsonObject jsonObject = ((LocalizedString) value).toJson();
|
||||
try (StringWriter strWriter = new StringWriter();
|
||||
JsonWriter jsonWriter = Json.createWriter(strWriter)) {
|
||||
jsonWriter.writeObject(jsonObject);
|
||||
statement.setObject(index, strWriter.toString(), Types.OTHER);
|
||||
} catch (IOException ex) {
|
||||
throw new HibernateException(ex);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object deepCopy(final Object value) throws HibernateException {
|
||||
final byte[] serialized;
|
||||
try (ByteArrayOutputStream bos = new ByteArrayOutputStream();
|
||||
ObjectOutputStream oos = new ObjectOutputStream(bos)) {
|
||||
oos.writeObject(value);
|
||||
oos.flush();
|
||||
serialized = bos.toByteArray();
|
||||
} catch (IOException ex) {
|
||||
throw new HibernateException(ex);
|
||||
}
|
||||
|
||||
final Object obj;
|
||||
try (final ByteArrayInputStream bais = new ByteArrayInputStream(
|
||||
serialized
|
||||
);
|
||||
final ObjectInputStream ois = new ObjectInputStream(bais);) {
|
||||
obj = ois.readObject();
|
||||
} catch (IOException | ClassNotFoundException ex) {
|
||||
throw new HibernateException(ex);
|
||||
}
|
||||
|
||||
return obj;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isMutable() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Serializable disassemble(final Object value)
|
||||
throws HibernateException {
|
||||
return (Serializable) deepCopy(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object assemble(final Serializable cached, final Object owner) throws
|
||||
HibernateException {
|
||||
throw new UnsupportedOperationException("Not supported yet.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object replace(
|
||||
final Object original,
|
||||
final Object target,
|
||||
final Object owner
|
||||
) throws HibernateException {
|
||||
return deepCopy(original);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -18,6 +18,7 @@
|
|||
*/
|
||||
package org.libreccm.pagemodel;
|
||||
|
||||
import org.hibernate.annotations.Type;
|
||||
import org.libreccm.core.CoreConstants;
|
||||
import org.libreccm.l10n.LocalizedString;
|
||||
import org.libreccm.web.CcmApplication;
|
||||
|
|
@ -225,27 +226,31 @@ public class PageModel implements Serializable {
|
|||
* The localised title of this {@code PageModel} (shown in the
|
||||
* administration UI),
|
||||
*/
|
||||
@Embedded
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(name = "PAGE_MODEL_TITLES",
|
||||
schema = CoreConstants.DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "PAGE_MODEL_ID")
|
||||
}))
|
||||
// @Embedded
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(name = "PAGE_MODEL_TITLES",
|
||||
// schema = CoreConstants.DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "PAGE_MODEL_ID")
|
||||
// }))
|
||||
@Column(name = "TITLE")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
private LocalizedString title;
|
||||
|
||||
/**
|
||||
* A description of this {@code PageModel} describing its purpose.
|
||||
*/
|
||||
@Embedded
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(name = "PAGE_MODEL_DESCRIPTIONS",
|
||||
schema = CoreConstants.DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "PAGE_MODEL_ID")
|
||||
}))
|
||||
// @Embedded
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(name = "PAGE_MODEL_DESCRIPTIONS",
|
||||
// schema = CoreConstants.DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "PAGE_MODEL_ID")
|
||||
// }))
|
||||
@Column(name = "DESCRIPTION")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
private LocalizedString description;
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@ import org.libreccm.workflow.TaskAssignment;
|
|||
import static org.libreccm.core.CoreConstants.CORE_XML_NS;
|
||||
import static org.libreccm.core.CoreConstants.DB_SCHEMA;
|
||||
|
||||
import org.hibernate.annotations.Type;
|
||||
import org.libreccm.imexport.Exportable;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
|
@ -182,14 +183,16 @@ public class Role implements Serializable, Exportable {
|
|||
/**
|
||||
* An optional description for a role.
|
||||
*/
|
||||
@Embedded
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(name = "ROLE_DESCRIPTIONS",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "ROLE_ID")
|
||||
}))
|
||||
// @Embedded
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(name = "ROLE_DESCRIPTIONS",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "ROLE_ID")
|
||||
// }))
|
||||
@Column(name = "DESCRIPTION")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
@XmlElement(name = "description", namespace = CORE_XML_NS)
|
||||
private LocalizedString description = new LocalizedString();
|
||||
|
||||
|
|
|
|||
|
|
@ -36,6 +36,8 @@ import java.util.Objects;
|
|||
|
||||
import static org.libreccm.core.CoreConstants.DB_SCHEMA;
|
||||
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.AssociationOverride;
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Embedded;
|
||||
|
|
@ -147,25 +149,29 @@ public class Task implements Identifiable, Serializable {
|
|||
/**
|
||||
* A human readable, localisable label for the task.
|
||||
*/
|
||||
@Embedded
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(name = "WORKFLOW_TASK_LABELS",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "TASK_ID")}))
|
||||
// @Embedded
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(name = "WORKFLOW_TASK_LABELS",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "TASK_ID")}))
|
||||
@Column(name = "LABEL")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
private LocalizedString label;
|
||||
|
||||
/**
|
||||
* A description of the task.
|
||||
*/
|
||||
@Embedded
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(name = "WORKFLOW_TASK_DESCRIPTIONS",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "TASK_ID")}))
|
||||
// @Embedded
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(name = "WORKFLOW_TASK_DESCRIPTIONS",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "TASK_ID")}))
|
||||
@Column(name = "DESCRIPTION")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
private LocalizedString description;
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -56,6 +56,7 @@ import java.util.Objects;
|
|||
|
||||
import static org.libreccm.core.CoreConstants.DB_SCHEMA;
|
||||
|
||||
import org.hibernate.annotations.Type;
|
||||
import org.libreccm.imexport.Exportable;
|
||||
|
||||
/**
|
||||
|
|
@ -116,26 +117,30 @@ public class Workflow implements Identifiable, Serializable, Exportable {
|
|||
/**
|
||||
* Human readable name of the workflow.
|
||||
*/
|
||||
@Embedded
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(name = "WORKFLOW_NAMES",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "WORKFLOW_ID")}))
|
||||
// @Embedded
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(name = "WORKFLOW_NAMES",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "WORKFLOW_ID")}))
|
||||
@Column(name = "NAME")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
private LocalizedString name = new LocalizedString();
|
||||
|
||||
/**
|
||||
* Description of the workflow.
|
||||
*/
|
||||
@Embedded
|
||||
@AssociationOverride(
|
||||
name = "values",
|
||||
joinTable = @JoinTable(name = "WORKFLOW_DESCRIPTIONS",
|
||||
schema = DB_SCHEMA,
|
||||
joinColumns = {
|
||||
@JoinColumn(name = "WORKFLOW_ID")
|
||||
}))
|
||||
// @Embedded
|
||||
// @AssociationOverride(
|
||||
// name = "values",
|
||||
// joinTable = @JoinTable(name = "WORKFLOW_DESCRIPTIONS",
|
||||
// schema = DB_SCHEMA,
|
||||
// joinColumns = {
|
||||
// @JoinColumn(name = "WORKFLOW_ID")
|
||||
// }))
|
||||
@Column(name = "DESCRIPTION")
|
||||
@Type(type = "org.libreccm.l10n.LocalizedStringType")
|
||||
private LocalizedString description = new LocalizedString();
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -24,8 +24,10 @@
|
|||
create table CCM_CORE.CATEGORIES (
|
||||
ABSTRACT_CATEGORY boolean,
|
||||
CATEGORY_ORDER bigint,
|
||||
DESCRIPTION json,
|
||||
ENABLED boolean,
|
||||
NAME varchar(255) not null,
|
||||
TITLE json,
|
||||
UNIQUE_ID varchar(255),
|
||||
VISIBLE boolean,
|
||||
OBJECT_ID bigint not null,
|
||||
|
|
@ -45,16 +47,11 @@
|
|||
primary key (CATEGORIZATION_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.CATEGORY_DESCRIPTIONS (
|
||||
OBJECT_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.CATEGORY_DOMAINS (
|
||||
DESCRIPTION json,
|
||||
DOMAIN_KEY varchar(255) not null,
|
||||
RELEASED timestamp,
|
||||
TITLE json,
|
||||
URI varchar(1024),
|
||||
VERSION varchar(255),
|
||||
OBJECT_ID bigint not null,
|
||||
|
|
@ -62,13 +59,6 @@
|
|||
primary key (OBJECT_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.CATEGORY_TITLES (
|
||||
OBJECT_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.CCM_OBJECTS (
|
||||
OBJECT_ID bigint not null,
|
||||
DISPLAY_NAME varchar(255),
|
||||
|
|
@ -94,6 +84,7 @@
|
|||
|
||||
create table CCM_CORE.CCM_ROLES (
|
||||
ROLE_ID bigint not null,
|
||||
DESCRIPTION json,
|
||||
NAME varchar(512) not null,
|
||||
UUID varchar(255) not null,
|
||||
primary key (ROLE_ID)
|
||||
|
|
@ -111,13 +102,6 @@
|
|||
primary key (OBJECT_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.DOMAIN_DESCRIPTIONS (
|
||||
OBJECT_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.DOMAIN_OWNERSHIPS (
|
||||
OWNERSHIP_ID bigint not null,
|
||||
CONTEXT varchar(255),
|
||||
|
|
@ -129,25 +113,12 @@
|
|||
primary key (OWNERSHIP_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.DOMAIN_TITLES (
|
||||
OBJECT_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_COMPONENT_DESCRIPTIONS (
|
||||
COMPONENT_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (COMPONENT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_COMPONENTS (
|
||||
ACTIVE boolean,
|
||||
ADMIN_NAME varchar(255),
|
||||
ATTRIBUTE_STRING varchar(255),
|
||||
COMPONENT_ORDER bigint,
|
||||
DESCRIPTION json,
|
||||
SELECTED boolean,
|
||||
OBJECT_ID bigint not null,
|
||||
parentComponent_OBJECT_ID bigint,
|
||||
|
|
@ -176,25 +147,13 @@
|
|||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_DATA_QUERIES (
|
||||
DESCRIPTION json,
|
||||
NAME json,
|
||||
QUERY_ID varchar(255),
|
||||
OBJECT_ID bigint not null,
|
||||
primary key (OBJECT_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_DATA_QUERY_DESCRIPTIONS (
|
||||
DATA_QUERY_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (DATA_QUERY_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_DATA_QUERY_NAMES (
|
||||
DATA_QUERY_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (DATA_QUERY_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_FORMSECTIONS (
|
||||
FORMSECTION_ACTION varchar(255),
|
||||
OBJECT_ID bigint not null,
|
||||
|
|
@ -225,35 +184,17 @@
|
|||
primary key (OBJECT_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_OPTION_LABELS (
|
||||
OPTION_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OPTION_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_OPTIONS (
|
||||
LABEL json,
|
||||
PARAMETER_VALUE varchar(255),
|
||||
OBJECT_ID bigint not null,
|
||||
primary key (OBJECT_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_PROCESS_LISTENER_DESCRIPTIONS (
|
||||
PROCESS_LISTENER_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (PROCESS_LISTENER_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_PROCESS_LISTENER_NAMES (
|
||||
PROCESS_LISTENER_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (PROCESS_LISTENER_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_PROCESS_LISTENERS (
|
||||
DESCRIPTION json,
|
||||
LISTENER_CLASS varchar(255),
|
||||
NAME json,
|
||||
PROCESS_LISTENER_ORDER bigint,
|
||||
OBJECT_ID bigint not null,
|
||||
formSection_OBJECT_ID bigint,
|
||||
|
|
@ -415,25 +356,13 @@
|
|||
primary key (CONTAINER_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.PAGE_MODEL_DESCRIPTIONS (
|
||||
PAGE_MODEL_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (PAGE_MODEL_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.PAGE_MODEL_TITLES (
|
||||
PAGE_MODEL_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (PAGE_MODEL_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.PAGE_MODELS (
|
||||
PAGE_MODEL_ID bigint not null,
|
||||
DESCRIPTION json,
|
||||
LAST_MODIFIED timestamp,
|
||||
MODEL_UUID varchar(255) not null,
|
||||
NAME varchar(255),
|
||||
TITLE json,
|
||||
TYPE varchar(255) not null,
|
||||
UUID varchar(255) not null,
|
||||
VERSION varchar(255) not null,
|
||||
|
|
@ -488,29 +417,9 @@
|
|||
primary key (QUEUE_ITEM_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.RESOURCE_DESCRIPTIONS (
|
||||
OBJECT_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.RESOURCE_TITLES (
|
||||
OBJECT_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.RESOURCE_TYPE_DESCRIPTIONS (
|
||||
RESOURCE_TYPE_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (RESOURCE_TYPE_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.RESOURCE_TYPES (
|
||||
RESOURCE_TYPE_ID bigint not null,
|
||||
DESCRIPTION json,
|
||||
SINGLETON boolean,
|
||||
TITLE varchar(254) not null,
|
||||
UUID varchar(255) not null,
|
||||
|
|
@ -522,19 +431,14 @@
|
|||
|
||||
create table CCM_CORE.RESOURCES (
|
||||
CREATED timestamp,
|
||||
DESCRIPTION json,
|
||||
TITLE json,
|
||||
OBJECT_ID bigint not null,
|
||||
parent_OBJECT_ID bigint,
|
||||
resourceType_RESOURCE_TYPE_ID bigint,
|
||||
primary key (OBJECT_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.ROLE_DESCRIPTIONS (
|
||||
ROLE_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (ROLE_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.ROLE_MEMBERSHIPS (
|
||||
MEMBERSHIP_ID bigint not null,
|
||||
UUID varchar(255) not null,
|
||||
|
|
@ -548,11 +452,12 @@
|
|||
SETTING_ID bigint not null,
|
||||
CONFIGURATION_CLASS varchar(512) not null,
|
||||
NAME varchar(512) not null,
|
||||
SETTING_VALUE_DOUBLE double,
|
||||
SETTING_VALUE_BIG_DECIMAL decimal(19,2),
|
||||
SETTING_VALUE json,
|
||||
SETTING_VALUE_BOOLEAN boolean,
|
||||
SETTING_VALUE_LONG bigint,
|
||||
SETTING_VALUE_STRING varchar(1024),
|
||||
SETTING_VALUE_DOUBLE double,
|
||||
SETTING_VALUE_BIG_DECIMAL decimal(19,2),
|
||||
primary key (SETTING_ID)
|
||||
);
|
||||
|
||||
|
|
@ -561,13 +466,6 @@
|
|||
value varchar(255)
|
||||
);
|
||||
|
||||
create table CCM_CORE.SETTINGS_L10N_STR_VALUES (
|
||||
ENTRY_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (ENTRY_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.SETTINGS_STRING_LIST (
|
||||
LIST_ID bigint not null,
|
||||
value varchar(255)
|
||||
|
|
@ -697,20 +595,6 @@
|
|||
primary key (TASK_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.WORKFLOW_DESCRIPTIONS (
|
||||
WORKFLOW_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (WORKFLOW_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.WORKFLOW_NAMES (
|
||||
WORKFLOW_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (WORKFLOW_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.WORKFLOW_TASK_ASSIGNMENTS (
|
||||
TASK_ASSIGNMENT_ID bigint not null,
|
||||
UUID varchar(255) not null,
|
||||
|
|
@ -736,23 +620,11 @@
|
|||
primary key (TASK_DEPENDENCY_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.WORKFLOW_TASK_DESCRIPTIONS (
|
||||
TASK_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (TASK_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.WORKFLOW_TASK_LABELS (
|
||||
TASK_ID bigint not null,
|
||||
LOCALIZED_VALUE varchar(2147483647),
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (TASK_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.WORKFLOW_TASKS (
|
||||
TASK_ID bigint not null,
|
||||
ACTIVE boolean,
|
||||
DESCRIPTION json,
|
||||
LABEL json,
|
||||
TASK_STATE varchar(512),
|
||||
UUID varchar(255) not null,
|
||||
WORKFLOW_ID bigint,
|
||||
|
|
@ -763,6 +635,8 @@
|
|||
WORKFLOW_ID bigint not null,
|
||||
abstract_workflow boolean,
|
||||
ACTIVE boolean,
|
||||
DESCRIPTION json,
|
||||
NAME json,
|
||||
WORKFLOW_STATE varchar(255),
|
||||
TASKS_STATE varchar(255),
|
||||
UUID varchar(255) not null,
|
||||
|
|
@ -830,7 +704,7 @@
|
|||
|
||||
alter table CCM_CORE.WORKFLOWS
|
||||
add constraint UK_o113id7d1cxql0edsrohlnn9x unique (UUID);
|
||||
create sequence hibernate_sequence start with 100000 increment by 1;
|
||||
create sequence hibernate_sequence start with 1 increment by 1;
|
||||
|
||||
alter table CCM_CORE.APPLICATIONS
|
||||
add constraint FKatcp9ij6mbkx0nfeig1o6n3lm
|
||||
|
|
@ -862,11 +736,6 @@ create sequence hibernate_sequence start with 100000 increment by 1;
|
|||
foreign key (CATEGORY_ID)
|
||||
references CCM_CORE.CATEGORIES;
|
||||
|
||||
alter table CCM_CORE.CATEGORY_DESCRIPTIONS
|
||||
add constraint FKhiwjlmh5vkbu3v3vng1la1qum
|
||||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.CATEGORIES;
|
||||
|
||||
alter table CCM_CORE.CATEGORY_DOMAINS
|
||||
add constraint FKf25vi73cji01w8fgo6ow1dgg
|
||||
foreign key (ROOT_CATEGORY_ID)
|
||||
|
|
@ -877,11 +746,6 @@ create sequence hibernate_sequence start with 100000 increment by 1;
|
|||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.CCM_OBJECTS;
|
||||
|
||||
alter table CCM_CORE.CATEGORY_TITLES
|
||||
add constraint FKka9bt9f5br0kji5bcjxcmf6ch
|
||||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.CATEGORIES;
|
||||
|
||||
alter table CCM_CORE.CCM_OBJECTS_AUD
|
||||
add constraint FKr00eauutiyvocno8ckx6h9nw6
|
||||
foreign key (REV)
|
||||
|
|
@ -902,11 +766,6 @@ create sequence hibernate_sequence start with 100000 increment by 1;
|
|||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.CCM_OBJECTS;
|
||||
|
||||
alter table CCM_CORE.DOMAIN_DESCRIPTIONS
|
||||
add constraint FKn4i2dxgn8cqysa62dds6eih6a
|
||||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.CATEGORY_DOMAINS;
|
||||
|
||||
alter table CCM_CORE.DOMAIN_OWNERSHIPS
|
||||
add constraint FK47nsasr7jrdwlky5gx0u6e9py
|
||||
foreign key (domain_OBJECT_ID)
|
||||
|
|
@ -917,16 +776,6 @@ create sequence hibernate_sequence start with 100000 increment by 1;
|
|||
foreign key (owner_OBJECT_ID)
|
||||
references CCM_CORE.APPLICATIONS;
|
||||
|
||||
alter table CCM_CORE.DOMAIN_TITLES
|
||||
add constraint FK5p526dsdwn94els6lp5w0hdn4
|
||||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.CATEGORY_DOMAINS;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_COMPONENT_DESCRIPTIONS
|
||||
add constraint FKfh0k9lj3pf4amfc9bbbss0tr1
|
||||
foreign key (COMPONENT_ID)
|
||||
references CCM_CORE.FORMBUILDER_COMPONENTS;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_COMPONENTS
|
||||
add constraint FKpcpmvyiix023b4g5n4q8nkfca
|
||||
foreign key (parentComponent_OBJECT_ID)
|
||||
|
|
@ -957,16 +806,6 @@ create sequence hibernate_sequence start with 100000 increment by 1;
|
|||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.CCM_OBJECTS;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_DATA_QUERY_DESCRIPTIONS
|
||||
add constraint FKsmduu1opoiulkeo2gc8v7lsbn
|
||||
foreign key (DATA_QUERY_ID)
|
||||
references CCM_CORE.FORMBUILDER_DATA_QUERIES;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_DATA_QUERY_NAMES
|
||||
add constraint FKju1x82inrw3kguyjuxoetn6gn
|
||||
foreign key (DATA_QUERY_ID)
|
||||
references CCM_CORE.FORMBUILDER_DATA_QUERIES;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_FORMSECTIONS
|
||||
add constraint FKnfhsgxp4lvigq2pm33pn4afac
|
||||
foreign key (OBJECT_ID)
|
||||
|
|
@ -992,26 +831,11 @@ create sequence hibernate_sequence start with 100000 increment by 1;
|
|||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.CCM_OBJECTS;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_OPTION_LABELS
|
||||
add constraint FKatlsylsvln6yse55eof6wwkj6
|
||||
foreign key (OPTION_ID)
|
||||
references CCM_CORE.FORMBUILDER_OPTIONS;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_OPTIONS
|
||||
add constraint FKhe5q71wby9g4i56sotc501h11
|
||||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.FORMBUILDER_COMPONENTS;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_PROCESS_LISTENER_DESCRIPTIONS
|
||||
add constraint FKcv3iu04gxjk9c0pn6tl8rqqv3
|
||||
foreign key (PROCESS_LISTENER_ID)
|
||||
references CCM_CORE.FORMBUILDER_PROCESS_LISTENERS;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_PROCESS_LISTENER_NAMES
|
||||
add constraint FK8rnyb1m6ij3b9hhmhr7klgd4p
|
||||
foreign key (PROCESS_LISTENER_ID)
|
||||
references CCM_CORE.FORMBUILDER_PROCESS_LISTENERS;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_PROCESS_LISTENERS
|
||||
add constraint FK7uiaeax8qafm82e5k729ms5ku
|
||||
foreign key (formSection_OBJECT_ID)
|
||||
|
|
@ -1137,16 +961,6 @@ create sequence hibernate_sequence start with 100000 increment by 1;
|
|||
foreign key (STYLE_ID)
|
||||
references CCM_CORE.STYLES;
|
||||
|
||||
alter table CCM_CORE.PAGE_MODEL_DESCRIPTIONS
|
||||
add constraint FKcc5d6eqxu1369k8ycyyt6vn3e
|
||||
foreign key (PAGE_MODEL_ID)
|
||||
references CCM_CORE.PAGE_MODELS;
|
||||
|
||||
alter table CCM_CORE.PAGE_MODEL_TITLES
|
||||
add constraint FKj14q9911yhd4js9p6rs21rwjf
|
||||
foreign key (PAGE_MODEL_ID)
|
||||
references CCM_CORE.PAGE_MODELS;
|
||||
|
||||
alter table CCM_CORE.PAGE_MODELS
|
||||
add constraint FKk2lihllrxj89mn3tqv43amafe
|
||||
foreign key (APPLICATION_ID)
|
||||
|
|
@ -1197,21 +1011,6 @@ create sequence hibernate_sequence start with 100000 increment by 1;
|
|||
foreign key (RECEIVER_ID)
|
||||
references CCM_CORE.PARTIES;
|
||||
|
||||
alter table CCM_CORE.RESOURCE_DESCRIPTIONS
|
||||
add constraint FKk9arvj5u21rv23ce3cav4opqx
|
||||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.RESOURCES;
|
||||
|
||||
alter table CCM_CORE.RESOURCE_TITLES
|
||||
add constraint FKto4p6n2wklljyf7tmuxtmyfe0
|
||||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.RESOURCES;
|
||||
|
||||
alter table CCM_CORE.RESOURCE_TYPE_DESCRIPTIONS
|
||||
add constraint FKckpihjtv23iahbg3imnpbsr2
|
||||
foreign key (RESOURCE_TYPE_ID)
|
||||
references CCM_CORE.RESOURCE_TYPES;
|
||||
|
||||
alter table CCM_CORE.RESOURCES
|
||||
add constraint FKbo7ibfgodicn9flv2gfo11g5a
|
||||
foreign key (parent_OBJECT_ID)
|
||||
|
|
@ -1227,11 +1026,6 @@ create sequence hibernate_sequence start with 100000 increment by 1;
|
|||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.CCM_OBJECTS;
|
||||
|
||||
alter table CCM_CORE.ROLE_DESCRIPTIONS
|
||||
add constraint FKo09bh4j3k3k0ph3awvjwx31ft
|
||||
foreign key (ROLE_ID)
|
||||
references CCM_CORE.CCM_ROLES;
|
||||
|
||||
alter table CCM_CORE.ROLE_MEMBERSHIPS
|
||||
add constraint FK9m88ywi7rcin7b7jrgh53emrq
|
||||
foreign key (MEMBER_ID)
|
||||
|
|
@ -1247,11 +1041,6 @@ create sequence hibernate_sequence start with 100000 increment by 1;
|
|||
foreign key (ENUM_ID)
|
||||
references CCM_CORE.SETTINGS;
|
||||
|
||||
alter table CCM_CORE.SETTINGS_L10N_STR_VALUES
|
||||
add constraint FK5knjq7cisej0qfx5dw1y93rou
|
||||
foreign key (ENTRY_ID)
|
||||
references CCM_CORE.SETTINGS;
|
||||
|
||||
alter table CCM_CORE.SETTINGS_STRING_LIST
|
||||
add constraint FKqeclqa5sf1g53vxs857tpwrus
|
||||
foreign key (LIST_ID)
|
||||
|
|
@ -1352,16 +1141,6 @@ create sequence hibernate_sequence start with 100000 increment by 1;
|
|||
foreign key (TASK_ID)
|
||||
references CCM_CORE.WORKFLOW_TASKS;
|
||||
|
||||
alter table CCM_CORE.WORKFLOW_DESCRIPTIONS
|
||||
add constraint FKgx7upkqky82dpxvbs95imfl9l
|
||||
foreign key (WORKFLOW_ID)
|
||||
references CCM_CORE.WORKFLOWS;
|
||||
|
||||
alter table CCM_CORE.WORKFLOW_NAMES
|
||||
add constraint FKkxedy9p48avfk45r0bn4uc09i
|
||||
foreign key (WORKFLOW_ID)
|
||||
references CCM_CORE.WORKFLOWS;
|
||||
|
||||
alter table CCM_CORE.WORKFLOW_TASK_ASSIGNMENTS
|
||||
add constraint FKpq4paqtfbi5erhh98wl1ja005
|
||||
foreign key (ROLE_ID)
|
||||
|
|
@ -1392,16 +1171,6 @@ create sequence hibernate_sequence start with 100000 increment by 1;
|
|||
foreign key (BLOCKING_TASK_ID)
|
||||
references CCM_CORE.WORKFLOW_TASKS;
|
||||
|
||||
alter table CCM_CORE.WORKFLOW_TASK_DESCRIPTIONS
|
||||
add constraint FKeb7mqbdx3bk7t01vo7kp2hpf
|
||||
foreign key (TASK_ID)
|
||||
references CCM_CORE.WORKFLOW_TASKS;
|
||||
|
||||
alter table CCM_CORE.WORKFLOW_TASK_LABELS
|
||||
add constraint FKf715qud6g9xv2xeb8rrpnv4xs
|
||||
foreign key (TASK_ID)
|
||||
references CCM_CORE.WORKFLOW_TASKS;
|
||||
|
||||
alter table CCM_CORE.WORKFLOW_TASKS
|
||||
add constraint FK1693cbc36e4d8gucg8q7sc57e
|
||||
foreign key (WORKFLOW_ID)
|
||||
|
|
|
|||
|
|
@ -18,8 +18,10 @@
|
|||
create table CCM_CORE.CATEGORIES (
|
||||
ABSTRACT_CATEGORY boolean,
|
||||
CATEGORY_ORDER int8,
|
||||
DESCRIPTION jsonb,
|
||||
ENABLED boolean,
|
||||
NAME varchar(255) not null,
|
||||
TITLE jsonb,
|
||||
UNIQUE_ID varchar(255),
|
||||
VISIBLE boolean,
|
||||
OBJECT_ID int8 not null,
|
||||
|
|
@ -39,16 +41,11 @@
|
|||
primary key (CATEGORIZATION_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.CATEGORY_DESCRIPTIONS (
|
||||
OBJECT_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.CATEGORY_DOMAINS (
|
||||
DESCRIPTION jsonb,
|
||||
DOMAIN_KEY varchar(255) not null,
|
||||
RELEASED timestamp,
|
||||
TITLE jsonb,
|
||||
URI varchar(1024),
|
||||
VERSION varchar(255),
|
||||
OBJECT_ID int8 not null,
|
||||
|
|
@ -56,13 +53,6 @@
|
|||
primary key (OBJECT_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.CATEGORY_TITLES (
|
||||
OBJECT_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.CCM_OBJECTS (
|
||||
OBJECT_ID int8 not null,
|
||||
DISPLAY_NAME varchar(255),
|
||||
|
|
@ -88,6 +78,7 @@
|
|||
|
||||
create table CCM_CORE.CCM_ROLES (
|
||||
ROLE_ID int8 not null,
|
||||
DESCRIPTION jsonb,
|
||||
NAME varchar(512) not null,
|
||||
UUID varchar(255) not null,
|
||||
primary key (ROLE_ID)
|
||||
|
|
@ -105,13 +96,6 @@
|
|||
primary key (OBJECT_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.DOMAIN_DESCRIPTIONS (
|
||||
OBJECT_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.DOMAIN_OWNERSHIPS (
|
||||
OWNERSHIP_ID int8 not null,
|
||||
CONTEXT varchar(255),
|
||||
|
|
@ -123,25 +107,12 @@
|
|||
primary key (OWNERSHIP_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.DOMAIN_TITLES (
|
||||
OBJECT_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_COMPONENT_DESCRIPTIONS (
|
||||
COMPONENT_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (COMPONENT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_COMPONENTS (
|
||||
ACTIVE boolean,
|
||||
ADMIN_NAME varchar(255),
|
||||
ATTRIBUTE_STRING varchar(255),
|
||||
COMPONENT_ORDER int8,
|
||||
DESCRIPTION jsonb,
|
||||
SELECTED boolean,
|
||||
OBJECT_ID int8 not null,
|
||||
parentComponent_OBJECT_ID int8,
|
||||
|
|
@ -170,25 +141,13 @@
|
|||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_DATA_QUERIES (
|
||||
DESCRIPTION jsonb,
|
||||
QUERY_NAME jsonb,
|
||||
QUERY_ID varchar(255),
|
||||
OBJECT_ID int8 not null,
|
||||
primary key (OBJECT_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_DATA_QUERY_DESCRIPTIONS (
|
||||
DATA_QUERY_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (DATA_QUERY_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_DATA_QUERY_NAMES (
|
||||
DATA_QUERY_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (DATA_QUERY_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_FORMSECTIONS (
|
||||
FORMSECTION_ACTION varchar(255),
|
||||
OBJECT_ID int8 not null,
|
||||
|
|
@ -219,35 +178,17 @@
|
|||
primary key (OBJECT_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_OPTION_LABELS (
|
||||
OPTION_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OPTION_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_OPTIONS (
|
||||
LABEL jsonb,
|
||||
PARAMETER_VALUE varchar(255),
|
||||
OBJECT_ID int8 not null,
|
||||
primary key (OBJECT_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_PROCESS_LISTENER_DESCRIPTIONS (
|
||||
PROCESS_LISTENER_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (PROCESS_LISTENER_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_PROCESS_LISTENER_NAMES (
|
||||
PROCESS_LISTENER_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (PROCESS_LISTENER_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.FORMBUILDER_PROCESS_LISTENERS (
|
||||
DESCRIPTION jsonb,
|
||||
LISTENER_CLASS varchar(255),
|
||||
LISTENER_NAME jsonb,
|
||||
PROCESS_LISTENER_ORDER int8,
|
||||
OBJECT_ID int8 not null,
|
||||
formSection_OBJECT_ID int8,
|
||||
|
|
@ -409,25 +350,13 @@
|
|||
primary key (CONTAINER_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.PAGE_MODEL_DESCRIPTIONS (
|
||||
PAGE_MODEL_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (PAGE_MODEL_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.PAGE_MODEL_TITLES (
|
||||
PAGE_MODEL_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (PAGE_MODEL_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.PAGE_MODELS (
|
||||
PAGE_MODEL_ID int8 not null,
|
||||
DESCRIPTION jsonb,
|
||||
LAST_MODIFIED timestamp,
|
||||
MODEL_UUID varchar(255) not null,
|
||||
NAME varchar(255),
|
||||
TITLE jsonb,
|
||||
TYPE varchar(255) not null,
|
||||
UUID varchar(255) not null,
|
||||
VERSION varchar(255) not null,
|
||||
|
|
@ -482,29 +411,9 @@
|
|||
primary key (QUEUE_ITEM_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.RESOURCE_DESCRIPTIONS (
|
||||
OBJECT_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.RESOURCE_TITLES (
|
||||
OBJECT_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (OBJECT_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.RESOURCE_TYPE_DESCRIPTIONS (
|
||||
RESOURCE_TYPE_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (RESOURCE_TYPE_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.RESOURCE_TYPES (
|
||||
RESOURCE_TYPE_ID int8 not null,
|
||||
DESCRIPTION jsonb,
|
||||
SINGLETON boolean,
|
||||
TITLE varchar(254) not null,
|
||||
UUID varchar(255) not null,
|
||||
|
|
@ -516,19 +425,14 @@
|
|||
|
||||
create table CCM_CORE.RESOURCES (
|
||||
CREATED timestamp,
|
||||
DESCRIPTION jsonb,
|
||||
TITLE jsonb,
|
||||
OBJECT_ID int8 not null,
|
||||
parent_OBJECT_ID int8,
|
||||
resourceType_RESOURCE_TYPE_ID int8,
|
||||
primary key (OBJECT_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.ROLE_DESCRIPTIONS (
|
||||
ROLE_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (ROLE_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.ROLE_MEMBERSHIPS (
|
||||
MEMBERSHIP_ID int8 not null,
|
||||
UUID varchar(255) not null,
|
||||
|
|
@ -542,11 +446,12 @@
|
|||
SETTING_ID int8 not null,
|
||||
CONFIGURATION_CLASS varchar(512) not null,
|
||||
NAME varchar(512) not null,
|
||||
SETTING_VALUE_DOUBLE float8,
|
||||
SETTING_VALUE_BIG_DECIMAL numeric(19, 2),
|
||||
SETTING_VALUE_LOCALIZED_STRING jsonb,
|
||||
SETTING_VALUE_BOOLEAN boolean,
|
||||
SETTING_VALUE_LONG int8,
|
||||
SETTING_VALUE_STRING varchar(1024),
|
||||
SETTING_VALUE_DOUBLE float8,
|
||||
SETTING_VALUE_BIG_DECIMAL numeric(19, 2),
|
||||
primary key (SETTING_ID)
|
||||
);
|
||||
|
||||
|
|
@ -555,13 +460,6 @@
|
|||
value varchar(255)
|
||||
);
|
||||
|
||||
create table CCM_CORE.SETTINGS_L10N_STR_VALUES (
|
||||
ENTRY_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (ENTRY_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.SETTINGS_STRING_LIST (
|
||||
LIST_ID int8 not null,
|
||||
value varchar(255)
|
||||
|
|
@ -691,20 +589,6 @@
|
|||
primary key (TASK_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.WORKFLOW_DESCRIPTIONS (
|
||||
WORKFLOW_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (WORKFLOW_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.WORKFLOW_NAMES (
|
||||
WORKFLOW_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (WORKFLOW_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.WORKFLOW_TASK_ASSIGNMENTS (
|
||||
TASK_ASSIGNMENT_ID int8 not null,
|
||||
UUID varchar(255) not null,
|
||||
|
|
@ -730,23 +614,11 @@
|
|||
primary key (TASK_DEPENDENCY_ID)
|
||||
);
|
||||
|
||||
create table CCM_CORE.WORKFLOW_TASK_DESCRIPTIONS (
|
||||
TASK_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (TASK_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.WORKFLOW_TASK_LABELS (
|
||||
TASK_ID int8 not null,
|
||||
LOCALIZED_VALUE text,
|
||||
LOCALE varchar(255) not null,
|
||||
primary key (TASK_ID, LOCALE)
|
||||
);
|
||||
|
||||
create table CCM_CORE.WORKFLOW_TASKS (
|
||||
TASK_ID int8 not null,
|
||||
ACTIVE boolean,
|
||||
DESCRIPTION jsonb,
|
||||
LABEL jsonb,
|
||||
TASK_STATE varchar(512),
|
||||
UUID varchar(255) not null,
|
||||
WORKFLOW_ID int8,
|
||||
|
|
@ -757,6 +629,8 @@
|
|||
WORKFLOW_ID int8 not null,
|
||||
abstract_workflow boolean,
|
||||
ACTIVE boolean,
|
||||
DESCRIPTION jsonb,
|
||||
NAME jsonb,
|
||||
WORKFLOW_STATE varchar(255),
|
||||
TASKS_STATE varchar(255),
|
||||
UUID varchar(255) not null,
|
||||
|
|
@ -824,7 +698,7 @@
|
|||
|
||||
alter table CCM_CORE.WORKFLOWS
|
||||
add constraint UK_o113id7d1cxql0edsrohlnn9x unique (UUID);
|
||||
create sequence hibernate_sequence start 100000 increment 1;
|
||||
create sequence hibernate_sequence start 1 increment 1;
|
||||
|
||||
alter table CCM_CORE.APPLICATIONS
|
||||
add constraint FKatcp9ij6mbkx0nfeig1o6n3lm
|
||||
|
|
@ -856,11 +730,6 @@ create sequence hibernate_sequence start 100000 increment 1;
|
|||
foreign key (CATEGORY_ID)
|
||||
references CCM_CORE.CATEGORIES;
|
||||
|
||||
alter table CCM_CORE.CATEGORY_DESCRIPTIONS
|
||||
add constraint FKhiwjlmh5vkbu3v3vng1la1qum
|
||||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.CATEGORIES;
|
||||
|
||||
alter table CCM_CORE.CATEGORY_DOMAINS
|
||||
add constraint FKf25vi73cji01w8fgo6ow1dgg
|
||||
foreign key (ROOT_CATEGORY_ID)
|
||||
|
|
@ -871,11 +740,6 @@ create sequence hibernate_sequence start 100000 increment 1;
|
|||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.CCM_OBJECTS;
|
||||
|
||||
alter table CCM_CORE.CATEGORY_TITLES
|
||||
add constraint FKka9bt9f5br0kji5bcjxcmf6ch
|
||||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.CATEGORIES;
|
||||
|
||||
alter table CCM_CORE.CCM_OBJECTS_AUD
|
||||
add constraint FKr00eauutiyvocno8ckx6h9nw6
|
||||
foreign key (REV)
|
||||
|
|
@ -896,11 +760,6 @@ create sequence hibernate_sequence start 100000 increment 1;
|
|||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.CCM_OBJECTS;
|
||||
|
||||
alter table CCM_CORE.DOMAIN_DESCRIPTIONS
|
||||
add constraint FKn4i2dxgn8cqysa62dds6eih6a
|
||||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.CATEGORY_DOMAINS;
|
||||
|
||||
alter table CCM_CORE.DOMAIN_OWNERSHIPS
|
||||
add constraint FK47nsasr7jrdwlky5gx0u6e9py
|
||||
foreign key (domain_OBJECT_ID)
|
||||
|
|
@ -911,16 +770,6 @@ create sequence hibernate_sequence start 100000 increment 1;
|
|||
foreign key (owner_OBJECT_ID)
|
||||
references CCM_CORE.APPLICATIONS;
|
||||
|
||||
alter table CCM_CORE.DOMAIN_TITLES
|
||||
add constraint FK5p526dsdwn94els6lp5w0hdn4
|
||||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.CATEGORY_DOMAINS;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_COMPONENT_DESCRIPTIONS
|
||||
add constraint FKfh0k9lj3pf4amfc9bbbss0tr1
|
||||
foreign key (COMPONENT_ID)
|
||||
references CCM_CORE.FORMBUILDER_COMPONENTS;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_COMPONENTS
|
||||
add constraint FKpcpmvyiix023b4g5n4q8nkfca
|
||||
foreign key (parentComponent_OBJECT_ID)
|
||||
|
|
@ -951,16 +800,6 @@ create sequence hibernate_sequence start 100000 increment 1;
|
|||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.CCM_OBJECTS;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_DATA_QUERY_DESCRIPTIONS
|
||||
add constraint FKsmduu1opoiulkeo2gc8v7lsbn
|
||||
foreign key (DATA_QUERY_ID)
|
||||
references CCM_CORE.FORMBUILDER_DATA_QUERIES;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_DATA_QUERY_NAMES
|
||||
add constraint FKju1x82inrw3kguyjuxoetn6gn
|
||||
foreign key (DATA_QUERY_ID)
|
||||
references CCM_CORE.FORMBUILDER_DATA_QUERIES;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_FORMSECTIONS
|
||||
add constraint FKnfhsgxp4lvigq2pm33pn4afac
|
||||
foreign key (OBJECT_ID)
|
||||
|
|
@ -986,26 +825,11 @@ create sequence hibernate_sequence start 100000 increment 1;
|
|||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.CCM_OBJECTS;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_OPTION_LABELS
|
||||
add constraint FKatlsylsvln6yse55eof6wwkj6
|
||||
foreign key (OPTION_ID)
|
||||
references CCM_CORE.FORMBUILDER_OPTIONS;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_OPTIONS
|
||||
add constraint FKhe5q71wby9g4i56sotc501h11
|
||||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.FORMBUILDER_COMPONENTS;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_PROCESS_LISTENER_DESCRIPTIONS
|
||||
add constraint FKcv3iu04gxjk9c0pn6tl8rqqv3
|
||||
foreign key (PROCESS_LISTENER_ID)
|
||||
references CCM_CORE.FORMBUILDER_PROCESS_LISTENERS;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_PROCESS_LISTENER_NAMES
|
||||
add constraint FK8rnyb1m6ij3b9hhmhr7klgd4p
|
||||
foreign key (PROCESS_LISTENER_ID)
|
||||
references CCM_CORE.FORMBUILDER_PROCESS_LISTENERS;
|
||||
|
||||
alter table CCM_CORE.FORMBUILDER_PROCESS_LISTENERS
|
||||
add constraint FK7uiaeax8qafm82e5k729ms5ku
|
||||
foreign key (formSection_OBJECT_ID)
|
||||
|
|
@ -1131,16 +955,6 @@ create sequence hibernate_sequence start 100000 increment 1;
|
|||
foreign key (STYLE_ID)
|
||||
references CCM_CORE.STYLES;
|
||||
|
||||
alter table CCM_CORE.PAGE_MODEL_DESCRIPTIONS
|
||||
add constraint FKcc5d6eqxu1369k8ycyyt6vn3e
|
||||
foreign key (PAGE_MODEL_ID)
|
||||
references CCM_CORE.PAGE_MODELS;
|
||||
|
||||
alter table CCM_CORE.PAGE_MODEL_TITLES
|
||||
add constraint FKj14q9911yhd4js9p6rs21rwjf
|
||||
foreign key (PAGE_MODEL_ID)
|
||||
references CCM_CORE.PAGE_MODELS;
|
||||
|
||||
alter table CCM_CORE.PAGE_MODELS
|
||||
add constraint FKk2lihllrxj89mn3tqv43amafe
|
||||
foreign key (APPLICATION_ID)
|
||||
|
|
@ -1191,21 +1005,6 @@ create sequence hibernate_sequence start 100000 increment 1;
|
|||
foreign key (RECEIVER_ID)
|
||||
references CCM_CORE.PARTIES;
|
||||
|
||||
alter table CCM_CORE.RESOURCE_DESCRIPTIONS
|
||||
add constraint FKk9arvj5u21rv23ce3cav4opqx
|
||||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.RESOURCES;
|
||||
|
||||
alter table CCM_CORE.RESOURCE_TITLES
|
||||
add constraint FKto4p6n2wklljyf7tmuxtmyfe0
|
||||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.RESOURCES;
|
||||
|
||||
alter table CCM_CORE.RESOURCE_TYPE_DESCRIPTIONS
|
||||
add constraint FKckpihjtv23iahbg3imnpbsr2
|
||||
foreign key (RESOURCE_TYPE_ID)
|
||||
references CCM_CORE.RESOURCE_TYPES;
|
||||
|
||||
alter table CCM_CORE.RESOURCES
|
||||
add constraint FKbo7ibfgodicn9flv2gfo11g5a
|
||||
foreign key (parent_OBJECT_ID)
|
||||
|
|
@ -1221,11 +1020,6 @@ create sequence hibernate_sequence start 100000 increment 1;
|
|||
foreign key (OBJECT_ID)
|
||||
references CCM_CORE.CCM_OBJECTS;
|
||||
|
||||
alter table CCM_CORE.ROLE_DESCRIPTIONS
|
||||
add constraint FKo09bh4j3k3k0ph3awvjwx31ft
|
||||
foreign key (ROLE_ID)
|
||||
references CCM_CORE.CCM_ROLES;
|
||||
|
||||
alter table CCM_CORE.ROLE_MEMBERSHIPS
|
||||
add constraint FK9m88ywi7rcin7b7jrgh53emrq
|
||||
foreign key (MEMBER_ID)
|
||||
|
|
@ -1241,11 +1035,6 @@ create sequence hibernate_sequence start 100000 increment 1;
|
|||
foreign key (ENUM_ID)
|
||||
references CCM_CORE.SETTINGS;
|
||||
|
||||
alter table CCM_CORE.SETTINGS_L10N_STR_VALUES
|
||||
add constraint FK5knjq7cisej0qfx5dw1y93rou
|
||||
foreign key (ENTRY_ID)
|
||||
references CCM_CORE.SETTINGS;
|
||||
|
||||
alter table CCM_CORE.SETTINGS_STRING_LIST
|
||||
add constraint FKqeclqa5sf1g53vxs857tpwrus
|
||||
foreign key (LIST_ID)
|
||||
|
|
@ -1346,16 +1135,6 @@ create sequence hibernate_sequence start 100000 increment 1;
|
|||
foreign key (TASK_ID)
|
||||
references CCM_CORE.WORKFLOW_TASKS;
|
||||
|
||||
alter table CCM_CORE.WORKFLOW_DESCRIPTIONS
|
||||
add constraint FKgx7upkqky82dpxvbs95imfl9l
|
||||
foreign key (WORKFLOW_ID)
|
||||
references CCM_CORE.WORKFLOWS;
|
||||
|
||||
alter table CCM_CORE.WORKFLOW_NAMES
|
||||
add constraint FKkxedy9p48avfk45r0bn4uc09i
|
||||
foreign key (WORKFLOW_ID)
|
||||
references CCM_CORE.WORKFLOWS;
|
||||
|
||||
alter table CCM_CORE.WORKFLOW_TASK_ASSIGNMENTS
|
||||
add constraint FKpq4paqtfbi5erhh98wl1ja005
|
||||
foreign key (ROLE_ID)
|
||||
|
|
@ -1386,16 +1165,6 @@ create sequence hibernate_sequence start 100000 increment 1;
|
|||
foreign key (BLOCKING_TASK_ID)
|
||||
references CCM_CORE.WORKFLOW_TASKS;
|
||||
|
||||
alter table CCM_CORE.WORKFLOW_TASK_DESCRIPTIONS
|
||||
add constraint FKeb7mqbdx3bk7t01vo7kp2hpf
|
||||
foreign key (TASK_ID)
|
||||
references CCM_CORE.WORKFLOW_TASKS;
|
||||
|
||||
alter table CCM_CORE.WORKFLOW_TASK_LABELS
|
||||
add constraint FKf715qud6g9xv2xeb8rrpnv4xs
|
||||
foreign key (TASK_ID)
|
||||
references CCM_CORE.WORKFLOW_TASKS;
|
||||
|
||||
alter table CCM_CORE.WORKFLOW_TASKS
|
||||
add constraint FK1693cbc36e4d8gucg8q7sc57e
|
||||
foreign key (WORKFLOW_ID)
|
||||
|
|
|
|||
Loading…
Reference in New Issue