//$Id: Group.java,v 1.1 2006/10/12 14:40:10 chaostone Exp $ /* * * Copyright c 2005-2009 * Licensed under the Apache License, Version 2.0 (the "License") * http://www.apache.org/licenses/LICENSE-2.0 * */ /******************************************************************************** * @author chaostone * * MODIFICATION DESCRIPTION * * Name Date Description * ============ ============ ============ * dell 2005-9-15 Created * chaostone 2005-9-26 refactor * ********************************************************************************/ package org.beanfuse.security.model; import java.util.HashSet; import java.util.Set; import org.apache.commons.lang.builder.ToStringBuilder; import org.beanfuse.model.pojo.LongIdTimeObject; import org.beanfuse.security.User; import org.beanfuse.security.UserCategory; /** * 系统中用户组的基本信息和账号信息. * * @author dell,chaostone 2005-9-26 */ public class Group extends LongIdTimeObject implements org.beanfuse.security.Group { private static final long serialVersionUID = -3404181949500894284L; /** 名称 */ private String name; /** 上级组 */ private org.beanfuse.security.Group parent; /** 关联的用户 */ private Set users = new HashSet(); /** 对应的用户类别 */ private UserCategory category; /** 访问限制 */ protected Set restrictions = new HashSet(); /** 权限 */ protected Set authorities = new HashSet(); /** 菜单权限 */ private Set menuAuthorities = new HashSet(); /** 下级组 */ private Set children = new HashSet(); /** 管理者 */ protected Set managers = new HashSet(); /** 创建人 */ private User creator; /** 备注 */ protected String remark; /** 是否启用 */ public boolean enabled; public Group() { super(); } public Group(Long id) { setId(id); } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getRemark() { return remark; } public void setRemark(String remark) { this.remark = remark; } public Set getRestrictions() { return restrictions; } public void setRestrictions(Set restrictions) { this.restrictions = restrictions; } public Set getAuthorities() { return authorities; } public void setAuthorities(Set authorities) { this.authorities = authorities; } public Set getMenuAuthorities() { return menuAuthorities; } public void setMenuAuthorities(Set menuAuthorities) { this.menuAuthorities = menuAuthorities; } public Set getManagers() { return managers; } public void setManagers(Set managers) { this.managers = managers; } public boolean isEnabled() { return enabled; } public void setEnabled(boolean enabled) { this.enabled = enabled; } public Set getUsers() { return users; } public void setUsers(Set users) { this.users = users; } public User getCreator() { return creator; } public void setCreator(User creator) { this.creator = creator; } public UserCategory getCategory() { return category; } public void setCategory(UserCategory userCategory) { this.category = userCategory; } public org.beanfuse.security.Group getParent() { return parent; } public void setParent(org.beanfuse.security.Group parent) { this.parent = parent; } public Set getChildren() { return children; } public void setChildren(Set children) { this.children = children; } public String toString() { return new ToStringBuilder(this).append("name", this.getName()).append("id", this.id) .toString(); } }