package de.memtext.baseobjects; import java.io.Serializable; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import de.memtext.rights.Rights; /** * stellt einen User dar, könnte sicherer gemacht werden mit * defensive Copying * @author MB * */ public class User extends NamedIdObject implements Serializable { private List groupMembershipIds = new ArrayList(5); private String passwd; private Rights rights; private boolean isAdmin = false; private static final long serialVersionUID = 1; public User() { setName(""); setPasswd(""); } public User(String username, String passwd) { setName(username); setPasswd(passwd); } public User(String username, Integer userid) { super(userid, username); if (userid == null) throw new IllegalArgumentException("No user without userid allowed"); } public User(String username) { setName(username); } /** * @param groupmemberships */ public void addAllGroupmembershipsById(List groupmemberships) { groupMembershipIds.addAll(groupmemberships); } public void addGroupMembershipById(Integer groupid) { groupMembershipIds.add(groupid); } public String getPasswd() { return passwd; } public Iterator groupmembershipIdIterator() { return groupMembershipIds.iterator(); } public void removeGroupMembershipById(Integer groupid) { groupMembershipIds.remove(groupid); } public void setPasswd(String pwd) { passwd = pwd; } @Override public String toString() { return getName(); } public Rights getRights() { return rights; } public void setRights(Rights rights) { this.rights = rights; } public boolean isAdmin() { return isAdmin; } public void setAdmin(boolean isAdmin) { this.isAdmin = isAdmin; } }