You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by an...@apache.org on 2007/07/13 17:18:06 UTC
svn commit: r556032 - in
/lenya/trunk/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases:
GroupMembers.java IPRangeGroups.java
Author: andreas
Date: Fri Jul 13 08:18:05 2007
New Revision: 556032
URL: http://svn.apache.org/viewvc?view=rev&rev=556032
Log:
Initialize parameters in initParameters() instead of in setParameter(), see bug 42827.
Modified:
lenya/trunk/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/GroupMembers.java
lenya/trunk/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/IPRangeGroups.java
Modified: lenya/trunk/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/GroupMembers.java
URL: http://svn.apache.org/viewvc/lenya/trunk/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/GroupMembers.java?view=diff&rev=556032&r1=556031&r2=556032
==============================================================================
--- lenya/trunk/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/GroupMembers.java (original)
+++ lenya/trunk/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/GroupMembers.java Fri Jul 13 08:18:05 2007
@@ -33,8 +33,6 @@
*/
public class GroupMembers extends AccessControlUsecase {
- private Group group;
-
protected static final String GROUP_USERS = "groupUsers";
protected static final String OTHER_USERS = "otherUsers";
protected static final String ADD = "add";
@@ -47,6 +45,26 @@
*/
protected void initParameters() {
super.initParameters();
+
+ Groupable[] members = getGroup().getMembers();
+ List groupUsers = new ArrayList();
+ for (int i = 0; i < members.length; i++) {
+ if (members[i] instanceof User) {
+ groupUsers.add(members[i]);
+ }
+ }
+ setParameter(GROUP_USERS, groupUsers);
+
+ User[] allUsers = getUserManager().getUsers();
+
+ List otherUsers = new ArrayList();
+ for (int i = 0; i < allUsers.length; i++) {
+ if (!groupUsers.contains(allUsers[i])) {
+ otherUsers.add(allUsers[i]);
+ }
+ }
+ setParameter(OTHER_USERS, otherUsers);
+
setExitParameter(GroupProfile.ID, getParameterAsString(GroupProfile.ID));
}
@@ -56,12 +74,13 @@
protected void doExecute() throws Exception {
super.doExecute();
- this.group.removeAllMembers();
+ final Group group = getGroup();
+ group.removeAllMembers();
List groupUsers = (List) getParameter(GROUP_USERS);
for (Iterator i = groupUsers.iterator(); i.hasNext();) {
User user = (User) i.next();
- this.group.add(user);
+ group.add(user);
user.save();
}
}
@@ -110,41 +129,14 @@
}
}
-
- /**
- * @see org.apache.lenya.cms.usecase.Usecase#setParameter(java.lang.String, java.lang.Object)
- */
- public void setParameter(String name, Object value) {
- super.setParameter(name, value);
- if (name.equals(GroupProfile.ID)) {
- String groupId = (String) value;
- this.group = getGroupManager().getGroup(groupId);
- if (this.group == null) {
- throw new RuntimeException("Group [" + groupId + "] not found.");
- }
-
- Groupable[] members = this.group.getMembers();
- List groupUsers = new ArrayList();
- for (int i = 0; i < members.length; i++) {
- if (members[i] instanceof User) {
- groupUsers.add(members[i]);
- }
- }
- setParameter(GROUP_USERS, groupUsers);
-
- User[] allUsers = getUserManager().getUsers();
-
- List otherUsers = new ArrayList();
-
- for (int i = 0; i < allUsers.length; i++) {
- if (!groupUsers.contains(allUsers[i])) {
- otherUsers.add(allUsers[i]);
- }
- }
-
- setParameter(OTHER_USERS, otherUsers);
+
+ protected Group getGroup() {
+ String groupId = getParameterAsString(GroupProfile.ID);
+ Group group = getGroupManager().getGroup(groupId);
+ if (group == null) {
+ throw new RuntimeException("Group [" + groupId + "] not found.");
}
-
+ return group;
}
}
Modified: lenya/trunk/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/IPRangeGroups.java
URL: http://svn.apache.org/viewvc/lenya/trunk/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/IPRangeGroups.java?view=diff&rev=556032&r1=556031&r2=556032
==============================================================================
--- lenya/trunk/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/IPRangeGroups.java (original)
+++ lenya/trunk/src/modules-core/administration/java/src/org/apache/lenya/cms/ac/usecases/IPRangeGroups.java Fri Jul 13 08:18:05 2007
@@ -31,8 +31,6 @@
*/
public class IPRangeGroups extends AccessControlUsecase {
- private IPRange ipRange;
-
protected static final String IP_RANGE_GROUPS = "ipRangeGroups";
protected static final String OTHER_GROUPS = "otherGroups";
protected static final String ADD = "add";
@@ -46,15 +44,25 @@
protected void doExecute() throws Exception {
super.doExecute();
- this.ipRange.removeFromAllGroups();
+ IPRange ipRange = getIpRange();
+ ipRange.removeFromAllGroups();
List ipRangeGroups = (List) getParameter(IP_RANGE_GROUPS);
for (Iterator i = ipRangeGroups.iterator(); i.hasNext(); ) {
Group group = (Group) i.next();
- group.add(this.ipRange);
+ group.add(ipRange);
}
ipRange.save();
}
+
+ protected IPRange getIpRange() {
+ String ipRangeId = getParameterAsString(IPRangeProfile.ID);
+ IPRange ipRange = getIpRangeManager().getIPRange(ipRangeId);
+ if (ipRange == null) {
+ throw new RuntimeException("IP range [" + ipRangeId + "] not found.");
+ }
+ return ipRange;
+ }
/**
* @see org.apache.lenya.cms.usecase.Usecase#advance()
@@ -101,37 +109,21 @@
}
- /**
- * @see org.apache.lenya.cms.usecase.Usecase#setParameter(java.lang.String,
- * java.lang.Object)
- */
- public void setParameter(String name, Object value) {
- super.setParameter(name, value);
- if (name.equals(IPRangeProfile.ID)) {
- String ipRangeId = (String) value;
- this.ipRange = getIpRangeManager().getIPRange(ipRangeId);
- if (this.ipRange == null) {
- throw new RuntimeException("IP range [" + ipRangeId + "] not found.");
- }
-
- Group[] ipRangeGroupArray = this.ipRange.getGroups();
- List ipRangeGroups = new ArrayList(Arrays.asList(ipRangeGroupArray));
-
- setParameter(IP_RANGE_GROUPS, ipRangeGroups);
-
- Group[] allGroups = getGroupManager().getGroups();
-
- List otherGroups = new ArrayList();
+ protected void initParameters() {
+ super.initParameters();
+ Group[] ipRangeGroupArray = getIpRange().getGroups();
+
+ List ipRangeGroups = new ArrayList(Arrays.asList(ipRangeGroupArray));
+ setParameter(IP_RANGE_GROUPS, ipRangeGroups);
- for (int i = 0; i < allGroups.length; i++) {
- if (!ipRangeGroups.contains(allGroups[i])) {
- otherGroups.add(allGroups[i]);
- }
+ Group[] allGroups = getGroupManager().getGroups();
+ List otherGroups = new ArrayList();
+ for (int i = 0; i < allGroups.length; i++) {
+ if (!ipRangeGroups.contains(allGroups[i])) {
+ otherGroups.add(allGroups[i]);
}
-
- setParameter(OTHER_GROUPS, otherGroups);
}
-
+ setParameter(OTHER_GROUPS, otherGroups);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org