1 7 package org.ejtools.management.browser.frame; 8 9 import java.awt.Image ; 10 import java.io.IOException ; 11 import java.io.InputStream ; 12 import java.util.Hashtable ; 13 import java.util.Iterator ; 14 import java.util.Properties ; 15 16 import javax.swing.Icon ; 17 import javax.swing.ImageIcon ; 18 19 import org.apache.log4j.Logger; 20 import org.ejtools.adwt.util.DefaultObjectRenderer; 21 import org.ejtools.management.browser.model.ManagedObject; 22 23 27 public class ResourceRenderer extends DefaultObjectRenderer 28 { 29 30 private static Hashtable icons = new Hashtable (); 31 32 private static Logger logger = Logger.getLogger(ResourceRenderer.class); 33 34 35 41 public Icon getIcon(Object o) 42 { 43 if (o instanceof ManagedObject) 44 { 45 ManagedObject resource = (ManagedObject) o; 46 String type = resource.getJ2EEType(); 47 Icon icon = (Icon ) icons.get(type); 48 if (icon == null) 49 { 50 if (type.endsWith("Module")) 51 { 52 icon = (Icon ) icons.get("J2EEModule"); 53 } 54 else 55 { 56 icon = (Icon ) icons.get("J2EEDeployedObject"); 57 } 58 } 59 return icon; 60 } 61 62 return super.getIcon(o); 63 } 64 65 66 static 67 { 68 try 69 { 70 InputStream in = ResourceRenderer.class.getResourceAsStream("/org/ejtools/management/browser/Icons.properties"); 71 Properties props = new Properties (); 72 props.load(in); 73 in.close(); 74 75 for (Iterator iterator = props.keySet().iterator(); iterator.hasNext(); ) 76 { 77 String type = (String ) iterator.next(); 78 String resource = props.getProperty(type); 79 Image image = loadImage(resource); 80 if (image != null) 81 { 82 icons.put(type, new ImageIcon (image)); 83 } 84 } 85 } 86 catch (IOException ioe) 87 { 88 logger.error("Error while loading Icons.properties", ioe); 89 } 90 catch (Exception e) 91 { 92 logger.error("Error while loading Icons.properties", e); 93 } 94 } 95 } 96 | Popular Tags |