package com.lyms.hospital.session; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.Map; /** * session 能力提供 *

*

* Created by Administrator on 2016/6/2 0002. */ public class SessionProvider implements ISessionProvider { /** * 配置 */ private Map iSessionProviderMap; /** * 默认的session提供 */ private ISessionProvider defaultSessionProvider; /** * 当前策略 */ private String currentStrateger; @Override public boolean checkSession(HttpServletRequest request, HttpServletResponse response, String token) { ISessionProvider iSessionProvider = iSessionProviderMap.get(currentStrateger); if (null != iSessionProvider) { return iSessionProvider.checkSession(request, response, token); } if (null != defaultSessionProvider) { return defaultSessionProvider.checkSession(request, response, token); } return Boolean.FALSE; } @Override public void removeSession(String token) { ISessionProvider iSessionProvider = iSessionProviderMap.get(currentStrateger); if (null != iSessionProvider) { iSessionProvider.removeSession(token); } if (null != defaultSessionProvider) { defaultSessionProvider.removeSession(token); } } public String getCurrentStrateger() { return currentStrateger; } public void setCurrentStrateger(String currentStrateger) { this.currentStrateger = currentStrateger; } public ISessionProvider getDefaultSessionProvider() { return defaultSessionProvider; } public void setDefaultSessionProvider(ISessionProvider defaultSessionProvider) { this.defaultSessionProvider = defaultSessionProvider; } public Map getiSessionProviderMap() { return iSessionProviderMap; } public void setiSessionProviderMap(Map iSessionProviderMap) { this.iSessionProviderMap = iSessionProviderMap; } }