⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fieldpermissionlist.java

📁 OBPM是一个开源
💻 JAVA
字号:
/*
 * Created on 2005-4-4
 *
 * TODO To change the template for this generated file go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
package cn.myapps.core.workflow.utility;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

import cn.myapps.core.dynaform.form.ejb.FormField;

/**
 * @author Administrator
 *
 * TODO To change the template for this generated type comment go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
public class FieldPermissionList {
    private Collection data = new ArrayList();

    public FieldPermissionList(){
        
    }
    
		public void add(FieldPermission fp){
				if (fp != null) {
					data.add(fp);
				}
		}
		
		public static FieldPermissionList parser(String permissionListStr) {
		    FieldPermissionList permissionList = new FieldPermissionList();
				if (permissionListStr==null || permissionListStr.trim().length()<=0) {
					return permissionList;
				}
				FieldPermission tmp = null;
				String[] permissionArray = CommonUtil.split(permissionListStr, ";");
				for(int i=0; i<permissionArray.length; i++){
//				    System.out.println("permissionArray[i]->" + permissionArray[i]);
				        tmp = new FieldPermission(permissionArray[i]);
//				        System.out.println("tmp->"+ tmp.getPermisstionType() + "-" + tmp.getFieldName()); 
				        permissionList.add(tmp);
				}
				
				return permissionList;
		}
		
		public void remove(FieldPermission fieldPerm){
		   data.remove(fieldPerm);    
		}
		
		public void clear(){
		    data.clear();
		}
		
		public int checkPermission(FormField formField){
		    return this.checkPermission(formField.getName());
		}
		
		public int checkPermission(String fieldName){
		    if(data == null || data.size() <= 0){
		      return PermissionType.MODIFY;
		    }
		    Iterator iters = data.iterator();
		    while(iters.hasNext()){
		        FieldPermission fieldPerm = (FieldPermission)iters.next();
		        if(fieldName != null && fieldName.equals(fieldPerm.getFieldName())){
		            return fieldPerm.getPermisstionType();
		        }
		    }
		    return PermissionType.MODIFY;
		}
		
		public String toString(){
		    StringBuffer sb = new StringBuffer();
		    Iterator iter = data.iterator();
				while(iter.hasNext()) {
					FieldPermission fieldPerm = (FieldPermission)iter.next();
					sb.append(fieldPerm.toString());
					sb.append(";");
				}
				return sb.toString();
		}
		
    public static void main(String[] args) {
        String str = "@a;#b;$c;@d;$e;#f";
        FieldPermissionList fieldPermList = FieldPermissionList.parser(str);
        System.out.println("fieldPermList->" + fieldPermList.toString());
        System.out.println("checkPermission-->"+fieldPermList.checkPermission("d"));
        FieldPermission fieldPerm = new FieldPermission("#b");
        System.out.println("fieldPerm->"+fieldPerm.toString());
        fieldPermList.remove(fieldPerm);
        System.out.println("fieldPermList3->" + fieldPermList.toString());
//        fieldPermList.clear();
//        System.out.println("fieldPermList4->" + fieldPermList.toString());
        
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -