From 14f2056dd15dbbe2ef712b6af87acc73bdf1c1e3 Mon Sep 17 00:00:00 2001
From: Martin Weise <martin.weise@tuwien.ac.at>
Date: Fri, 18 Nov 2022 09:25:51 +0100
Subject: [PATCH] Reverted the rest

---
 .../entities/container/image/ContainerImageDate.java       | 2 +-
 .../container/image/ContainerImageEnvironmentItem.java     | 7 -------
 .../src/main/java/at/tuwien/entities/database/View.java    | 2 +-
 .../main/java/at/tuwien/entities/database/table/Table.java | 4 ++--
 .../entities/database/table/columns/TableColumn.java       | 6 +++---
 .../entities/database/table/columns/concepts/Concept.java  | 2 +-
 .../java/at/tuwien/entities/identifier/Identifier.java     | 4 ++--
 7 files changed, 10 insertions(+), 17 deletions(-)

diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImageDate.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImageDate.java
index 35f755a714..48a8d47a4b 100644
--- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImageDate.java
+++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImageDate.java
@@ -36,7 +36,7 @@ public class ContainerImageDate {
 
     @org.springframework.data.annotation.Transient
     @ToString.Exclude
-    @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.DETACH)
+    @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.MERGE)
     @JoinColumn(name = "iid", insertable = false, updatable = false)
     private ContainerImage image;
 
diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImageEnvironmentItem.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImageEnvironmentItem.java
index 208c2143cd..809766022d 100644
--- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImageEnvironmentItem.java
+++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/image/ContainerImageEnvironmentItem.java
@@ -46,13 +46,6 @@ public class ContainerImageEnvironmentItem {
     @Enumerated(EnumType.STRING)
     private ContainerImageEnvironmentItemType type;
 
-    @org.springframework.data.annotation.Transient
-    @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
-    @JoinColumns({
-            @JoinColumn(name = "iid", referencedColumnName = "id", insertable = false, updatable = false)
-    })
-    private ContainerImage image;
-
     @Column(nullable = false, updatable = false)
     @CreatedDate
     private Instant created;
diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/View.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/View.java
index 056311dedf..14466a12bd 100644
--- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/View.java
+++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/View.java
@@ -46,7 +46,7 @@ public class View {
     private User creator;
 
     @org.springframework.data.annotation.Transient
-    @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.DETACH)
+    @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.MERGE)
     @JoinColumn(name = "vdbid", insertable = false, updatable = false)
     private Database database;
 
diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/Table.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/Table.java
index 3dd66a573c..c19555325c 100644
--- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/Table.java
+++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/Table.java
@@ -63,11 +63,11 @@ public class Table {
 
     @org.springframework.data.annotation.Transient
     @ToString.Exclude
-    @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.DETACH)
+    @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.MERGE)
     @JoinColumn(name = "tdbid", insertable = false, updatable = false)
     private Database database;
 
-    @OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.DETACH, mappedBy = "table")
+    @OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.MERGE, mappedBy = "table")
     @OrderBy("ordinalPosition")
     private List<TableColumn> columns;
 
diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumn.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumn.java
index 8ea2472b4b..18412a2792 100644
--- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumn.java
+++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumn.java
@@ -52,13 +52,13 @@ public class TableColumn implements Comparable<TableColumn> {
     private Long dfid;
 
     @ToString.Exclude
-    @OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.DETACH)
+    @OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.MERGE)
     @JoinColumn(name = "dfid", referencedColumnName = "id", insertable = false, updatable = false)
     private ContainerImageDate dateFormat;
 
     @org.springframework.data.annotation.Transient
     @ToString.Exclude
-    @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.DETACH)
+    @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.MERGE)
     @JoinColumns({
             @JoinColumn(name = "tid", referencedColumnName = "id", insertable = false, updatable = false),
             @JoinColumn(name = "cdbid", referencedColumnName = "tdbid", insertable = false, updatable = false)
@@ -117,7 +117,7 @@ public class TableColumn implements Comparable<TableColumn> {
     @CreatedDate
     private Instant created;
 
-    @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.DETACH)
+    @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.MERGE)
     @JoinTable(name = "mdb_columns_concepts",
             joinColumns = {
                     @JoinColumn(name = "cid", referencedColumnName = "id", insertable = false, updatable = false),
diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/concepts/Concept.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/concepts/Concept.java
index 01f0334edc..733b2c6b14 100644
--- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/concepts/Concept.java
+++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/concepts/Concept.java
@@ -29,7 +29,7 @@ public class Concept {
 
     @org.springframework.data.annotation.Transient
     @ToString.Exclude
-    @OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.DETACH)
+    @OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.MERGE)
     @JoinTable(name = "mdb_columns_concepts",
             joinColumns = @JoinColumn(name = "uri"),
             inverseJoinColumns = {
diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/identifier/Identifier.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/identifier/Identifier.java
index 14e2762a4d..2fd3030060 100644
--- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/identifier/Identifier.java
+++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/identifier/Identifier.java
@@ -71,7 +71,7 @@ public class Identifier {
     @Enumerated(EnumType.STRING)
     private LanguageType language;
 
-    @OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.DETACH)
+    @OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.MERGE)
     @JoinColumns({
             @JoinColumn(name = "License", referencedColumnName = "identifier")
     })
@@ -118,7 +118,7 @@ public class Identifier {
     @Enumerated(EnumType.STRING)
     private VisibilityType visibility = VisibilityType.SELF;
 
-    @OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.DETACH)
+    @OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.MERGE)
     @JoinColumns({
             @JoinColumn(name = "iid", referencedColumnName = "id", insertable = false, updatable = false)
     })
-- 
GitLab