/** * Copyright (c) 2015-2017, Chill Zhuang 庄骞 (smallchill@163.com). *
* Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at *
* http://www.apache.org/licenses/LICENSE-2.0 *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.dsh.guns.config;
import com.dsh.guns.core.support.HttpKit;
import com.dsh.guns.modular.system.model.User;
import com.dsh.guns.modular.system.util.CacheUtil;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import java.util.List;
public class UserExt {
private static final String NAMES_DELIMETER = ",";
/**
* 获取当前 Subject
*
* @return Subject
*/
public static User getUser() {
HttpServletRequest request = HttpKit.getRequest();
HttpSession session = request.getSession();
Object obj = session.getAttribute("user");
if(null == obj){
return null;
}
User user = (User) obj;
return user;
}
public static Integer getLanguage(){
HttpServletRequest request = HttpKit.getRequest();
HttpSession session = request.getSession();
Object obj = session.getAttribute("language");
if(null == obj){
return null;
}
return (Integer)obj;
}
/**
* 验证当前用户是否拥有指定权限,使用时与lacksPermission 搭配使用
*
* @param permission 权限名
* @return 拥有权限:true,否则false
*/
public boolean hasPermission(String permission) {
if(getUser() != null && permission != null && permission.length() > 0){
User user = getUser();
List