?? denyfirststrategy.java
字號:
package com.xaccp.biz.service.power;
import java.util.*;
import com.xaccp.biz.po.*;
/**
* 禁止優先的策略
* 概述:用戶僅擁有分配給他的權限,如果禁止的權限和擁有的權限沖突,禁止優先
* 生成結果:包含擁有權限和禁止權限的集合
* @author Underwind
*
*/
public class DenyFirstStrategy extends PowerStrategyTemplate {
/**
* 集合中不存在權限代號,返回false
* 集合中存在權限代號,且為禁止,返回false
* 否則返回真
*/
public boolean isHavePower(String powerShortName, Map powerMap) {
if (powerMap==null) return false;
if (powerMap.containsKey(powerShortName)) {
return !powerMap.get(powerShortName).equals(STATE_DENY);
}
return false;
}
/**
* 禁止優先的策略
* 概述:用戶僅擁有分配給他的權限,如果禁止的權限和擁有的權限沖突,禁止優先
* 生成結果:包含擁有權限和禁止權限的集合
*/
@Override
protected void processPower(Map map, String shortName, Integer state) {
if (map.containsKey(shortName)) {
map.put(shortName, (state==STATE_DENY)?STATE_DENY:map.get(shortName));
} else {
map.put(shortName, state);
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -