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

📄 userinfowrapper.java

📁 单点登陆
💻 JAVA
字号:
package net.s3o.common;


import java.util.Map;

import net.s3o.core.S3OCoreModel;


public class UserInfoWrapper implements IAuthentication {
	
	
	private static final long serialVersionUID = 1L;
	private boolean authenticated = false;
	
	public final static String KEY_OF_USER_ID="uid";
	public final static String KEY_OF_USER_PASSWORD="upwd";
	public final static String KEY_OF_USER_IP="uip";
	public final static String KEY_OF_USER_SESSIONID="usid";
	public final static String KEY_OF_USER_LOGIN_TIME="utime";
	public final static String KEY_OF_USER_TICKET="ticket";
	

	
	private Map details;
	
	
	
	/* =============================== */
	
	public UserInfoWrapper(){
		this(S3OUtils.createNewMap());
	}
	
	public UserInfoWrapper(Map userInfoMap){
		setDetails(userInfoMap);
	}
	

	
	/* =============================== */
	


	public String getUserIp(){
		return (String)details.get(KEY_OF_USER_IP);
	}
	public void setUserIp(String userIp){
		details.put(KEY_OF_USER_IP,userIp);
	}

	public String getUserSessionId(){
		return (String)details.get(KEY_OF_USER_SESSIONID);
	}
	
	public void setUserSessionId(String sessionId){
		details.put(KEY_OF_USER_SESSIONID,sessionId);
	}
	
	public String getUserLoginTime(){
		return (String)details.get(KEY_OF_USER_LOGIN_TIME);
	}
	
	public void setUserLoginTime(String loginTime){
		details.put(KEY_OF_USER_LOGIN_TIME,loginTime);
	}
	
	public String getTicket(){
		return (String)details.get(KEY_OF_USER_TICKET);
	}
	
	public void setTicket(String ticket){
		details.put(KEY_OF_USER_TICKET,ticket);
	}
	
	
	////////////////////////////////////////////

	public void setPrincipal(Object principal) {
		details.put(UserInfoWrapper.KEY_OF_USER_ID,principal);
	}
	public Object getPrincipal() {
		return (String)details.get(UserInfoWrapper.KEY_OF_USER_ID);
	}
	
	public void setCredentials(Object credentials) {
		String password=S3OCoreModel.getPasswordHandler().encodePassword((String)credentials);
		
		details.put(UserInfoWrapper.KEY_OF_USER_PASSWORD,password);
	}
	public Object getCredentials() {
		String password=(String)details.get(UserInfoWrapper.KEY_OF_USER_PASSWORD);
		return S3OCoreModel.getPasswordHandler().decodePassword(password);
	}
	
	public String getName() {
		return (String)getPrincipal();
	}

	public void setDetails(Object details) {
		this.details=(Map)details;
	}
	
	public Object getDetails() {
		return details;
	}

	public boolean isAuthenticated() {
		return authenticated;
	}
	
	public IGrantedAuthority[] getAuthorities() {
		return null;
	}
	
	public boolean equals(final Object obj) {
        if (super.equals(obj) && obj instanceof IAuthentication) {
        	IAuthentication test = (IAuthentication) obj;

            if (!S3OUtils.isEquals(this.getCredentials(),test.getCredentials())) {
                return false;
            }
            if (!S3OUtils.isEquals(this.getPrincipal(),test.getPrincipal())) {
                return false;
            }
            return true;
        }

        return false;
	}
	
	public String toString() {
        StringBuffer sb = new StringBuffer();
        sb.append(super.toString()).append(": ");
        sb.append("Username: ").append(this.getPrincipal()).append("; ");
        sb.append("Password: [PROTECTED]; ");
        sb.append("Authenticated: ").append(this.isAuthenticated()).append("; ");
        sb.append("Details: ").append(this.getDetails()).append("; ");

        if (this.getAuthorities() != null) {
            sb.append("Granted Authorities: ");

            for (int i = 0; i < this.getAuthorities().length; i++) {
                if (i > 0) {
                    sb.append(", ");
                }

                sb.append(this.getAuthorities()[i].toString());
            }
        } else {
            sb.append("Not granted any authorities");
        }

        return sb.toString();
	}

	public void setAuthenticated(boolean authenticated) throws IllegalArgumentException {
		this.authenticated=authenticated;
		
	}



	

}

⌨️ 快捷键说明

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