Now working with both hibernate and eclipselink
[utils] / security / impl / src / main / java / org / wamblee / security / authorization / UrlAuthorizationRule.java
index 17bdc348ae8263b97c7ca000d6da2b0414ebe476..e782a18e5c3c09485c6cc606be9aa1b6d3d885ec 100644 (file)
@@ -26,6 +26,7 @@ import javax.persistence.DiscriminatorValue;
 import javax.persistence.Entity;
 import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
+import javax.persistence.OneToOne;
 import javax.persistence.Transient;
 
 import org.apache.log4j.Logger;
@@ -264,7 +265,7 @@ public abstract class UrlAuthorizationRule extends AbstractAuthorizationRule {
      * 
      * @return Returns the operationCondition.
      */
-    @ManyToOne(cascade = CascadeType.ALL, targetEntity = AbstractOperationCondition.class)
+    @OneToOne(cascade = CascadeType.ALL, targetEntity = AbstractOperationCondition.class, orphanRemoval = true)
     @JoinColumn(name = "OPER_COND_PK")
     public OperationCondition getOperationCondition() {
         return operationCondition;
@@ -283,7 +284,7 @@ public abstract class UrlAuthorizationRule extends AbstractAuthorizationRule {
      * 
      * @return Returns the pathCondition.
      */
-    @ManyToOne(cascade = CascadeType.ALL, targetEntity = AbstractPathCondition.class)
+    @OneToOne(cascade = CascadeType.ALL, targetEntity = AbstractPathCondition.class, orphanRemoval = true)
     @JoinColumn(name = "PATH_COND_PK")
     public PathCondition getPathCondition() {
         return pathCondition;
@@ -302,7 +303,7 @@ public abstract class UrlAuthorizationRule extends AbstractAuthorizationRule {
      * 
      * @return Returns the userCondition.
      */
-    @ManyToOne(cascade = CascadeType.ALL, targetEntity = AbstractUserCondition.class)
+    @OneToOne(cascade = CascadeType.ALL, targetEntity = AbstractUserCondition.class, orphanRemoval = true)
     @JoinColumn(name = "USER_COND_PK")
     public UserCondition getUserCondition() {
         return userCondition;