From ceb343120eb62ecb4e35a777116c5dff8ca41479 Mon Sep 17 00:00:00 2001 From: npedot <nicola.pedot@gmail.com> Date: Wed, 9 Dec 2020 11:20:26 +0100 Subject: [PATCH] fixes changeSet size computation --- .../domain/ddl/Schema.kt | 19 +++++++++++++++---- .../domain/dml/ChangeSet.kt | 4 +--- 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/src/main/kotlin/unibz.cs.semint.kprime/domain/ddl/Schema.kt b/src/main/kotlin/unibz.cs.semint.kprime/domain/ddl/Schema.kt index 6d6d485..cb8b6fd 100644 --- a/src/main/kotlin/unibz.cs.semint.kprime/domain/ddl/Schema.kt +++ b/src/main/kotlin/unibz.cs.semint.kprime/domain/ddl/Schema.kt @@ -28,6 +28,12 @@ class Schema () { return ArrayList() } + fun constraintsByType(type :Constraint.TYPE): Set<Constraint> { + var resultCols = mutableSetOf<Column>() + return constraints().filter { c -> + c.type == type.name }.toSet() + } + fun tables():ArrayList<Table> { if (tables!=null) return tables as ArrayList<Table> return ArrayList() @@ -54,13 +60,18 @@ class Schema () { } fun addKey(tableName:String, k:Set<Column>): Constraint { + val primaryConstraint = buildKey(tableName, k) + constraints().add(primaryConstraint) + return primaryConstraint + } + + fun buildKey(tableName: String, k: Set<Column>): Constraint { val primaryConstraint = Constraint() - primaryConstraint.name="pkey_$tableName" - primaryConstraint.source.table="$tableName" + primaryConstraint.name = "pkey_$tableName" + primaryConstraint.source.table = "$tableName" primaryConstraint.source.columns.addAll(k) primaryConstraint.target.columns.addAll(k) - primaryConstraint.type= Constraint.TYPE.PRIMARY_KEY.name - constraints().add(primaryConstraint) + primaryConstraint.type = Constraint.TYPE.PRIMARY_KEY.name return primaryConstraint } diff --git a/src/main/kotlin/unibz.cs.semint.kprime/domain/dml/ChangeSet.kt b/src/main/kotlin/unibz.cs.semint.kprime/domain/dml/ChangeSet.kt index a71cfed..3a40b10 100644 --- a/src/main/kotlin/unibz.cs.semint.kprime/domain/dml/ChangeSet.kt +++ b/src/main/kotlin/unibz.cs.semint.kprime/domain/dml/ChangeSet.kt @@ -94,9 +94,7 @@ class ChangeSet() { } fun size(): Int { - return createView.size +createTable.size + createConstraint.size - + dropView.size + dropTable.size + dropConstraint.size - + dropMapping.size + return createView.size +createTable.size + createConstraint.size + createMapping.size + dropView.size + dropTable.size + dropConstraint.size + dropMapping.size } @JsonIgnore -- GitLab