X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=security%2Fimpl%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fsecurity%2Fauthorization%2FGroupUserCondition.java;h=f50c3d120bfb38468cbe115c44b23928f72b4052;hb=e8b988e92306a4aea2f047af1b48588147288831;hp=c981e00f0648123246cad214335d0c8722377b8f;hpb=a11c373e6ef35e7fe540c95a94903ed848800612;p=utils diff --git a/security/impl/src/main/java/org/wamblee/security/authorization/GroupUserCondition.java b/security/impl/src/main/java/org/wamblee/security/authorization/GroupUserCondition.java index c981e00f..f50c3d12 100644 --- a/security/impl/src/main/java/org/wamblee/security/authorization/GroupUserCondition.java +++ b/security/impl/src/main/java/org/wamblee/security/authorization/GroupUserCondition.java @@ -16,20 +16,30 @@ package org.wamblee.security.authorization; -import org.wamblee.security.AbstractPersistent; -import org.wamblee.usermgt.User; +import javax.persistence.Column; +import javax.persistence.DiscriminatorValue; +import javax.persistence.Entity; +import javax.persistence.Transient; + +import org.wamblee.security.authentication.UserAdministration; + /** * Checks if a user against a specific group. * * @author Erik Brakkee */ -public class GroupUserCondition extends AbstractPersistent implements - UserCondition { +@Entity +@DiscriminatorValue("GROUP") +public class GroupUserCondition extends AbstractUserCondition { /** * Group the user must be in. */ + @Column(name = "GRP") private String group; + + @Transient + private UserAdministration admin; /** * Constructs the condition. @@ -48,16 +58,15 @@ public class GroupUserCondition extends AbstractPersistent implements protected GroupUserCondition() { group = null; } + + @Override + public void setUserAdmin(UserAdministration aAdmin) { + admin = aAdmin; + } - /* - * (non-Javadoc) - * - * @see - * org.wamblee.security.authorization.UserCondition#matches(org.wamblee. - * usermgt.UserAccessor) - */ - public boolean matches(User aUser) { - return aUser.isInGroup(group); + @Override + public boolean matches(String aUser) { + return admin.isInGroup(aUser, group); } /**