*/
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;
* 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);
* @see
* org.wamblee.security.authorization.AuthorizationRule#getSupportedTypes()
*/
+ @Transient
public Class[] getSupportedTypes() {
return new Class[] { resourceClass };
}
*
* @return Result.
*/
+ @Column(name = "AUTH_RESULT", nullable = false)
protected String getAuthorizationResultString() {
if (result == null) {
return null;
result = AuthorizationResult.valueOf(aResult);
}
+ @Column(name = "RES_CLASSNAME", nullable = false)
protected String getResourceClassName() {
if (resourceClass == null) {
return "";
*
* @return Returns the operationCondition.
*/
+ @ManyToOne(cascade = CascadeType.ALL)
+ @JoinColumn(name = "OPER_COND_PK")
public OperationCondition getOperationCondition() {
return operationCondition;
}
*
* @return Returns the pathCondition.
*/
+ @ManyToOne(cascade = CascadeType.ALL)
+ @JoinColumn(name = "PATH_COND_PK")
public PathCondition getPathCondition() {
return pathCondition;
}
*
* @return Returns the userCondition.
*/
+ @ManyToOne(cascade = CascadeType.ALL)
+ @JoinColumn(name = "USER_COND_PK")
public UserCondition getUserCondition() {
return userCondition;
}