/** * Copyright (c)2010-2011 Enterprise Website Content Management System(EWCMS), All rights reserved. * EWCMS PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * http://www.ewcms.com */ package com.ewcms.security.manage.service; import java.util.Set; import com.ewcms.security.manage.model.Authority; import com.ewcms.security.manage.model.Group; import com.ewcms.security.manage.model.User; public interface GroupServiceable { public static final String GROUP_NAME_PERFIX = "GROUP_"; /** * 添加用户组 * * @param name 用户组名称 * @param remark 备注 * @return 用户组名称 */ String addGroup(String name,String remark); /** * 修改用户组 * * @param name 用户组名称 * @param remark 备注 */ void updateGroup(String name,String remark); /** * 删除用户组 * * 与用户组相关联用户会被强迫退出(移除cache,session中的信息)。 * * @param name 用户组名称 */ void removeGroup(String name); /** * 得到用户组 * * @param name 用户名 * @return 用户组对象 */ Group getGroup(String name); /** * 添加用户到用户组 * * 添加用户强迫退出(移除cache,session中的信息)。 * * @param name 用户组名称 * @param username 用户名称集合 * @return 新增用户集合 */ Set<User> addUsersToGroup(String name,Set<String> usernames); /** * 移除用户组中用户 * * 被移除用户强迫退出(移除cache,session中的信息)。 * * @param name 用户组名称 * @param usernames 用户名称集合 */ void removeUsersInGroup(String name,Set<String> usernames); /** * 添加权限到用户组 * * 用户组中用户强迫退出(移除cache,session中的信息)。 * * @param name 用户组名称 * @param authNames 权限名称集合 * @return 新增权限集合 */ Set<Authority> addAuthoritiesToGroup(String name,Set<String> authNames); /** * 移除用户组中权限 * * 用户组中用户被强迫退出(移除cache,session中的信息)。 * * @param name 用户组名称 * @param authNames 权限名称集合 */ void removeAuthoritiesInGroup(String name,Set<String> authNames); /** * 判断用户组名是否存在 * * @param name 用户组名 * @return if 'true' exist ,else 'false' not exist */ boolean hasGroupname(String name); }