⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 serverusercontext.java

📁 《j2ee开发全程实录》随书源码
💻 JAVA
字号:
package com.cownew.PIS.framework.server.sessionMgr;

import java.io.Serializable;
import java.util.Enumeration;
import java.util.HashSet;
import java.util.Hashtable;
import java.util.Iterator;
import java.util.Set;

import com.cownew.PIS.base.permission.common.IUserDAO;
import com.cownew.PIS.base.permission.common.UserInfo;
import com.cownew.PIS.base.permission.common.UserPermissionItemInfo;
import com.cownew.PIS.framework.common.db.Selectors;

import com.cownew.PIS.framework.server.helper.LocalServiceLocator;
import com.cownew.PIS.framework.server.helper.ThreadVariableManager;

public class ServerUserContext implements Serializable
{
	private String sessionId;

	private String acName;

	private String curUserId;

	private UserInfo curUserInfo;

	private Set permissonNameSet;

	private Hashtable userDefAttributes = new Hashtable();

	public String getACName()
	{
		return acName;
	}

	public void setACName(String acName)
	{
		this.acName = acName;
	}

	public String getSessionId()
	{
		return sessionId;
	}

	public void setSessionId(String sessionId)
	{
		this.sessionId = sessionId;
	}

	/**
	 * 当前操作用户id
	 * 
	 * @return
	 */
	public String getCurUserId()
	{
		return curUserId;
	}

	public void setCurUserId(String curUserId)
	{
		this.curUserId = curUserId;
	}

	/**
	 * 当前用户UserInfo
	 * 
	 * @return
	 * @
	 */
	public UserInfo getCurUserInfo() 
	{
		if (curUserInfo == null)
		{
			String curUserId = ThreadVariableManager.getInstance()
					.getCurrentServerUserContext().getCurUserId();
			IUserDAO userDAO = (IUserDAO) LocalServiceLocator.getInstance()
					.getService(IUserDAO.class);
			Selectors selectors = new Selectors();
			selectors.add("permissions");
			curUserInfo = (UserInfo) userDAO.loadByPK(curUserId, selectors);
		}
		return curUserInfo;
	}

	/**
	 * 当前用户拥有的权限名称集合
	 * 
	 * @return
	 * @
	 */
	public Set getPermissonNameSet() 
	{
		if (permissonNameSet == null)
		{
			permissonNameSet = new HashSet();
			UserInfo user = getCurUserInfo();
			Set pItemInfoSet = user.getPermissions();
			Iterator it = pItemInfoSet.iterator();
			while (it.hasNext())
			{
				UserPermissionItemInfo pItemInfo = (UserPermissionItemInfo) it
						.next();
				permissonNameSet.add(pItemInfo.getPermName());
			}
		}

		return permissonNameSet;
	}

	public Object getUserDefAttribute(String name)
	{
		return userDefAttributes.get(name);
	}

	public Enumeration getUserDefAttributeNames()
	{
		return userDefAttributes.keys();
	}

	public void removeUserDefAttribute(String name)
	{
		userDefAttributes.remove(name);
	}

	public void setUserDefAttribute(String name, Object value)
	{
		userDefAttributes.put(name, value);
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -