1 12 package org.openbravo.base; 13 14 import java.util.*; 15 16 import org.openbravo.data.FieldProvider; 17 import org.apache.log4j.Logger; 18 import org.apache.log4j.LogManager; 19 20 public class CategoryData implements FieldProvider { 21 22 static Logger log4j = Logger.getLogger(CategoryData.class); 23 public String category; 24 public String priority; 25 26 public String getField(String fieldName) { 27 if (fieldName.equals("category")) 28 return category; 29 else if (fieldName.equals("priority")) 30 return priority; 31 else { 32 if (log4j.isDebugEnabled()) log4j.debug("Field does not exist: " + fieldName); 33 return null; 34 } 35 } 36 37 public static CategoryData[] getCategories() { 38 Vector<CategoryData> vector = new Vector<CategoryData>(0); 39 40 for (Enumeration e = LogManager.getCurrentLoggers(); e.hasMoreElements() ;) { 41 Logger categoryItem = (Logger)e.nextElement(); 42 CategoryData categoryData = new CategoryData(); 43 categoryData.category = categoryItem.getName(); 44 if (categoryItem.getLevel() != null) { 45 categoryData.priority = categoryItem.getLevel().toString(); 46 } 47 if (vector.isEmpty()) vector.addElement(categoryData); 48 else{ 49 int index = 0; 50 while (index<vector.size()) { 51 CategoryData cd = vector.get(index); 52 if (categoryData.category.compareTo(cd.category)<0) { 53 vector.add(index, categoryData); 54 break; 55 } 56 index++; 57 } 58 if (index==vector.size()) vector.addElement(categoryData); 59 } 60 61 } 62 63 CategoryData categoryData[] = new CategoryData[vector.size()]; 64 vector.copyInto(categoryData); 65 return(categoryData); 66 } 67 } 68 | Popular Tags |