All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.jd.blockchain.ledger.LedgerPrivilegeBitset Maven / Gradle / Ivy

package com.jd.blockchain.ledger;

import com.jd.blockchain.utils.StringUtils;

import java.util.ArrayList;
import java.util.List;

/**
 * LedgerPrivilege 账本特权是授权给特定角色的权限代码序列;
 * 
 * @author huanghaiquan
 *
 */
public class LedgerPrivilegeBitset extends PrivilegeBitset implements LedgerPrivilege {

	public LedgerPrivilegeBitset() {
	}

	public LedgerPrivilegeBitset(byte[] codeBytes) {
		super(codeBytes);
	}

	@Override
	public LedgerPrivilegeBitset clone() {
		return (LedgerPrivilegeBitset) super.clone();
	}

	@Override
	public List getPrivilege(){
		List permissionList = new ArrayList<>();
		String permissionStr = super.cloneBitSet().get(8,Integer.MAX_VALUE).toString();
		if(!StringUtils.isEmpty(permissionStr)){
			for (LedgerPermission ledgerPermission : LedgerPermission.values()){
				if(super.cloneBitSet().get(8,Integer.MAX_VALUE).get(ledgerPermission.CODE)){
					permissionList.add(ledgerPermission);
				}
			}
		}
		return permissionList;
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy