From 3d0c6e4865d4a0ddd764da533a327faf76e0cb32 Mon Sep 17 00:00:00 2001
From: Roberto Sánchez <roberto.sanchez@curisit.net>
Date: Fri, 10 Jan 2014 18:50:52 +0000
Subject: [PATCH] #394 feature - Catalog module finished in beta - Security and Error management are not completed
---
securis/src/main/java/net/curisit/securis/db/Organization.java | 20 ++++++++++++++++++--
1 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/securis/src/main/java/net/curisit/securis/db/Organization.java b/securis/src/main/java/net/curisit/securis/db/Organization.java
index 04ac638..fd107b9 100644
--- a/securis/src/main/java/net/curisit/securis/db/Organization.java
+++ b/securis/src/main/java/net/curisit/securis/db/Organization.java
@@ -4,7 +4,9 @@
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
+import java.util.Set;
+import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
@@ -15,6 +17,7 @@
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
+import javax.persistence.OneToMany;
import javax.persistence.Table;
import org.codehaus.jackson.annotate.JsonAutoDetect;
@@ -33,7 +36,7 @@
@Entity
@Table(name = "organization")
@NamedQueries(
- { @NamedQuery(name = "list-organizations", query = "SELECT o FROM Organization o") })
+ { @NamedQuery(name = "list-organizations", query = "SELECT o FROM Organization o"), @NamedQuery(name = "find-children-org", query = "SELECT o FROM Organization o where o.parentOrganization = :parentOrganization") })
public class Organization implements Serializable {
@SuppressWarnings("unused")
@@ -54,7 +57,7 @@
@JsonIgnore
// We don't include the users to limit the size of each row a the listing
- @ManyToMany
+ @ManyToMany(cascade = CascadeType.REMOVE)
@JoinTable(name = "user_organization", //
joinColumns =
{ @JoinColumn(name = "organization_id", referencedColumnName = "id") }, //
@@ -67,6 +70,11 @@
@ManyToOne
@JoinColumn(name = "org_parent_id")
private Organization parentOrganization;
+
+ @JsonIgnore
+ // We don't include the users to limit the size of each row a the listing
+ @OneToMany(mappedBy = "parentOrganization")
+ private Set<Organization> childOrganizations;
public int getId() {
return id;
@@ -163,4 +171,12 @@
return ids;
}
+ public Set<Organization> getChildOrganizations() {
+ return childOrganizations;
+ }
+
+ public void setChildOrganizations(Set<Organization> childOrganizations) {
+ this.childOrganizations = childOrganizations;
+ }
+
}
--
Gitblit v1.3.2