[rules-users] inconsistency with 'collect' and the '||' operator

Adrian Cowham adrian.cowham at gmail.com
Wed Nov 7 13:35:17 EST 2007


I'm running into an issue where the || operator embedded in a collect CE
isn't working as expected. The rule I have is

rule Grant Access"
    when
        $request : AccessRequest($name : username, $ID : sessionID, $loc :
accessLocation, $day : dayOfAccess)
        $user : NetworkUser(username == $name)
        $group : UserGroup(users contains $user)
        $locationRules : ArrayList(size > 0) from
            collect (AccessRule((allowedLocation == "ANY" || allowedLocation
== $loc), allowAccess == "false")
            from $group.getRules())
    then
        # access granted

end


The issue I'm having is with AccessRule((allowedLocation == "ANY" ||
allowedLocation == $loc), allowAccess == "false"), this translate to "all
access rules that have the allowed location set to ANY or set to the
location the user is logging in from". I created a UserGroup named "
super.users" that contains a user named "root" and a single rule that allows
access from ANY location. However, when I simulate a login with "root"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20071107/451e832f/attachment.html 


More information about the rules-users mailing list