X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=security%2Fimpl%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fsecurity%2Fauthorization%2FUrlAuthorizationRule.java;h=0ae744c464215ff0584e4da4a12683ef42751df1;hb=1d8237e4961e8653727f1210061b832ac82dda88;hp=71fcac78faca8b1b4f4acaeeb7c10e002e4241f9;hpb=bac5a4d56e975847a52e497bf2777c89b66aebfc;p=utils diff --git a/security/impl/src/main/java/org/wamblee/security/authorization/UrlAuthorizationRule.java b/security/impl/src/main/java/org/wamblee/security/authorization/UrlAuthorizationRule.java index 71fcac78..0ae744c4 100644 --- a/security/impl/src/main/java/org/wamblee/security/authorization/UrlAuthorizationRule.java +++ b/security/impl/src/main/java/org/wamblee/security/authorization/UrlAuthorizationRule.java @@ -15,6 +15,16 @@ */ package org.wamblee.security.authorization; +import javax.persistence.Access; +import javax.persistence.AccessType; +import javax.persistence.CascadeType; +import javax.persistence.Column; +import javax.persistence.DiscriminatorValue; +import javax.persistence.Entity; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.Transient; + import org.apache.log4j.Logger; import static org.wamblee.security.authorization.AuthorizationResult.DENIED; @@ -44,8 +54,9 @@ import org.wamblee.usermgt.User; * the specified type, the result is UNSUPPORTED_RESOURCE, otherwise, the result * is UNDECIDED. */ -public abstract class UrlAuthorizationRule extends AbstractPersistent implements - AuthorizationRule { +@Entity +@Access(AccessType.PROPERTY) +public abstract class UrlAuthorizationRule extends AuthorizationRule { private static final Logger LOGGER = Logger .getLogger(UrlAuthorizationRule.class); @@ -134,6 +145,7 @@ public abstract class UrlAuthorizationRule extends AbstractPersistent implements * @see * org.wamblee.security.authorization.AuthorizationRule#getSupportedTypes() */ + @Transient public Class[] getSupportedTypes() { return new Class[] { resourceClass }; } @@ -213,6 +225,7 @@ public abstract class UrlAuthorizationRule extends AbstractPersistent implements * * @return Result. */ + @Column(name = "AUTH_RESULT", nullable = false) protected String getAuthorizationResultString() { if (result == null) { return null; @@ -231,6 +244,7 @@ public abstract class UrlAuthorizationRule extends AbstractPersistent implements result = AuthorizationResult.valueOf(aResult); } + @Column(name = "RES_CLASSNAME", nullable = false) protected String getResourceClassName() { if (resourceClass == null) { return ""; @@ -253,6 +267,8 @@ public abstract class UrlAuthorizationRule extends AbstractPersistent implements * * @return Returns the operationCondition. */ + @ManyToOne(cascade = CascadeType.ALL) + @JoinColumn(name = "OPER_COND_PK") public OperationCondition getOperationCondition() { return operationCondition; } @@ -270,6 +286,8 @@ public abstract class UrlAuthorizationRule extends AbstractPersistent implements * * @return Returns the pathCondition. */ + @ManyToOne(cascade = CascadeType.ALL) + @JoinColumn(name = "PATH_COND_PK") public PathCondition getPathCondition() { return pathCondition; } @@ -287,6 +305,8 @@ public abstract class UrlAuthorizationRule extends AbstractPersistent implements * * @return Returns the userCondition. */ + @ManyToOne(cascade = CascadeType.ALL) + @JoinColumn(name = "USER_COND_PK") public UserCondition getUserCondition() { return userCondition; }