X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=security%2Fimpl%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fsecurity%2Fauthorization%2FDefaultAuthorizationService.java;h=8ee411780d9fb0726776e14b2246999600f58701;hb=a0ce32a7a71799300bbf300cf71e76e1782392d3;hp=a086ab477844e3b0cec84900a4138b9446d9f4bf;hpb=5bbd2c6e9dcf47e312122a3205c78b676a724e07;p=utils diff --git a/security/impl/src/main/java/org/wamblee/security/authorization/DefaultAuthorizationService.java b/security/impl/src/main/java/org/wamblee/security/authorization/DefaultAuthorizationService.java index a086ab47..8ee41178 100644 --- a/security/impl/src/main/java/org/wamblee/security/authorization/DefaultAuthorizationService.java +++ b/security/impl/src/main/java/org/wamblee/security/authorization/DefaultAuthorizationService.java @@ -18,8 +18,13 @@ package org.wamblee.security.authorization; import java.util.ArrayList; import java.util.List; +import javax.persistence.CascadeType; import javax.persistence.DiscriminatorValue; import javax.persistence.Entity; +import javax.persistence.ManyToMany; +import javax.persistence.OneToMany; +import javax.persistence.OrderColumn; +import javax.persistence.Transient; import org.wamblee.usermgt.User; import org.wamblee.usermgt.UserAccessor; @@ -36,17 +41,20 @@ import org.wamblee.usermgt.UserAccessor; */ @Entity @DiscriminatorValue("DEFAULT") -public class DefaultAuthorizationService extends AuthorizationService { +public class DefaultAuthorizationService extends AbstractAuthorizationService { /** * List of ordered authorization rules. */ + @OneToMany(cascade = CascadeType.ALL, orphanRemoval = true, targetEntity = AbstractAuthorizationRule.class) + @OrderColumn(name = "RULE_INDEX") private List rules; /** * User accessor used to obtain the current user. */ + @Transient private UserAccessor userAccessor; /** @@ -139,7 +147,7 @@ public class DefaultAuthorizationService extends AuthorizationService { * @see org.wamblee.security.authorization.AuthorizationService#getRules() */ public AuthorizationRule[] getRules() { - return rules.toArray(new AuthorizationRule[0]); + return rules.toArray(new AbstractAuthorizationRule[0]); } /*