X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=security%2Fimpl%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fsecurity%2Fauthorization%2FGroupUserCondition.java;h=8386d35b1f1859ac8030ecdc0aa399ee1ddcd566;hb=1b9acefff0078d6d2a3f061948b36f6721743306;hp=83e1d8ec8c0ab8c99071934266de2d8d85aa2cbf;hpb=5ea8f0e2af53562c1507e8fb5a3ede2af5c5de6c;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 83e1d8ec..8386d35b 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 @@ -15,21 +15,32 @@ */ package org.wamblee.security.authorization; -import org.wamblee.persistence.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.User; +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 +59,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); } /**