(no commit message)
[utils] / security / impl / src / main / java / org / wamblee / security / authorization / GroupUserCondition.java
index 78367db118b7d89a3913e39c16bc721ac6ac355e..f50c3d120bfb38468cbe115c44b23928f72b4052 100644 (file)
@@ -19,8 +19,9 @@ package org.wamblee.security.authorization;
 import javax.persistence.Column;
 import javax.persistence.DiscriminatorValue;
 import javax.persistence.Entity;
+import javax.persistence.Transient;
 
-import org.wamblee.usermgt.User;
+import org.wamblee.security.authentication.UserAdministration;
 
 
 /**
@@ -30,12 +31,15 @@ import org.wamblee.usermgt.User;
  */
 @Entity
 @DiscriminatorValue("GROUP")
-public class GroupUserCondition extends UserCondition {
+public class GroupUserCondition extends AbstractUserCondition {
     /**
      * Group the user must be in.
      */
     @Column(name = "GRP")
     private String group;
+    
+    @Transient
+    private UserAdministration admin; 
 
     /**
      * Constructs the condition.
@@ -54,16 +58,15 @@ public class GroupUserCondition extends UserCondition {
     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);
     }
 
     /**