📄 permissionmanager.java
字号:
/*
* Created on 2004-8-26
*
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
*/
package com.hnjchina.securityManager;
/**
* @author limeiyong
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
import java.util.BitSet;
/**
* @author limeiyong
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
public class PermissionManager {
static int Visible=0;
static int Enable=1;
private int objectStatus;
BitSet bits = new BitSet();
byte bytes;
public PermissionManager(int objectStatus){
this.objectStatus=objectStatus;
bytes=Byte.parseByte(Integer.toBinaryString(objectStatus));
bits=fromByte();
}
public void setvisible(boolean lb_visible){
setObjectStatus(Visible,lb_visible);
}
public void setenable(boolean ab_enable){
setObjectStatus(Enable,ab_enable);
}
private void setObjectStatus(int bitStatus,boolean ab_boolean){
int li_status=0;
if (ab_boolean){
li_status=1;
BitSet bitset=new BitSet();
bitset.set(bitStatus);
bits.or(bitset);
}else{
BitSet bitset=new BitSet();
BitSet bitset2=new BitSet();
for (int i=0;i<8;i++){
bitset.set(i);
}
bitset2.set(bitStatus);
bitset.xor(bitset2);
bits.and(bitset);
}
}
public boolean isVisible(){
return bits.get(Visible);
}
public boolean isEnable(){
return bits.get(Enable);
}
private BitSet fromByte() {
for (int i=0; i<8; i++) {
if ((bytes&(1<<(i%8))) > 0) {
bits.set(i);
}
}
return bits;
}
public int formByte() {
int li_rc=0;
for (int i=0;i<8;i++){
if (((bytes&(1<<(i%8))))>0) {
li_rc=li_rc+2^i;
}
}
return li_rc;
}
private byte toByte(BitSet bits) {
byte bytes = 0;
for (int i=0; i<bits.length(); i++) {
if (bits.get(i)) {
bytes |= 1<<(i%8);
}
}
return bytes;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -