1 16 package com.jdon.security.web; 17 18 import java.security.Principal ; 19 20 import javax.servlet.http.HttpServletRequest ; 21 22 import org.apache.log4j.Logger; 23 24 import com.jdon.container.visitor.data.SessionContext; 25 import com.jdon.container.visitor.data.SessionContextSetup; 26 27 40 41 public class HttpRequestUserSetup implements SessionContextSetup { 42 43 private final static Logger logger = Logger.getLogger(HttpRequestUserSetup.class); 44 45 public void setup(SessionContext sessionContext, HttpServletRequest request) { 46 String remoteAddress = request.getRemoteAddr(); 47 saveSessionContext(REMOTE_ADDRESS, remoteAddress, sessionContext); 48 49 Principal principal = request.getUserPrincipal(); 50 if (principal == null) 51 return; 52 String username = principal.getName(); 53 saveSessionContext(PRINCIPAL_NAME, username, sessionContext); 54 55 logger.debug("[JdonFramework] set principal name:" + username); 56 } 57 58 public String getPrincipalName(SessionContext sessionContext) { 59 return (String ) getArrtibute(PRINCIPAL_NAME, sessionContext); 60 } 61 62 public void saveSessionContext(String arrtibuteName, String arrtibuteValue, SessionContext sessionContext) { 63 sessionContext.setArrtibute(arrtibuteName, arrtibuteValue); 64 logger.debug("[JdonFramework] setArrtibute:" + arrtibuteName + "=" + arrtibuteValue); 65 } 66 67 public Object getArrtibute(String arrtibuteName, SessionContext sessionContext) { 68 if (sessionContext == null) { 69 logger.debug("[JdonFramework] sessionContext not be setup, and is null"); 70 return null; 71 } 72 return sessionContext.getArrtibute(arrtibuteName); 73 } 74 75 } 76 | Popular Tags |