Coverage Report - org.trails.component.blob.DefaultIconResolver
 
Classes in this File Line Coverage Branch Coverage Complexity
DefaultIconResolver
0% 
0% 
0
 
 1  
 package org.trails.component.blob;
 2  
 
 3  
 import org.apache.tapestry.IAsset;
 4  
 import org.apache.tapestry.asset.AssetFactory;
 5  
 
 6  
 import java.util.HashMap;
 7  
 import java.util.Map;
 8  
 
 9  
 /**
 10  
  * The Trails {@link org.trails.component.blob.IconResolver} default implementation.
 11  
  */
 12  0
 public class DefaultIconResolver implements IconResolver
 13  
 {
 14  
 
 15  
         /**
 16  
          * To be injected "service:tapestry.asset.ClasspathAssetFactory"
 17  
          */
 18  
         private AssetFactory classpathAssetFactory;
 19  
 
 20  
 
 21  0
         private static Map<String, String> map = new HashMap<String, String>();
 22  0
         private Map<String, IAsset> assetsMap = new HashMap<String, IAsset>();
 23  
 
 24  
         public static final String DEFAULT_CONTENT_TYPE = "application/octet-stream";
 25  
 
 26  
         static
 27  
         {
 28  0
                 map.put("application/x-zip-compressed", "/org/trails/component/blob/image/asset/winzip.gif");
 29  0
                 map.put("application/pdf", "/org/trails/component/blob/image/asset/icadobe.gif");
 30  0
                 map.put("application/msword", "/org/trails/component/blob/image/asset/icdoc.gif");
 31  0
                 map.put("application/vnd.visio", "/org/trails/component/blob/image/asset/icdoc.gif");
 32  0
                 map.put("application/vnd.ms-powerpoint", "/org/trails/component/blob/image/asset/icppt.gif");
 33  0
                 map.put("application/vnd.ms-excel", "/org/trails/component/blob/image/asset/icxls.gif");
 34  0
                 map.put(DEFAULT_CONTENT_TYPE, "/org/trails/component/blob/image/asset/icgen.gif");
 35  0
                 map.put("text/html", "/org/trails/component/blob/image/asset/ichtm.gif");
 36  0
                 map.put("text/plain", "/org/trails/component/blob/image/asset/ictxt.gif");
 37  0
                 map.put("text/css", "/org/trails/component/blob/image/asset/ictxt.gif");
 38  0
                 map.put("text/xml", "/org/trails/component/blob/image/asset/icxml.gif");
 39  0
                 map.put("image/tiff", "/org/trails/component/blob/image/asset/icgen.gif");
 40  0
                 map.put("video/avi", "/org/trails/component/blob/image/asset/icwmp.gif");
 41  0
                 map.put("video/mpeg", "/org/trails/component/blob/image/asset/icwmp.gif");
 42  0
                 map.put("video/mp4", "/org/trails/component/blob/image/asset/icwmp.gif");
 43  0
                 map.put("video/quicktime", "/org/trails/component/blob/image/asset/icwmp.gif");
 44  0
                 map.put("video/x-ms-wmv", "/org/trails/component/blob/image/asset/icwmp.gif");
 45  
         }
 46  
 
 47  
         public IAsset getAsset(String contentType)
 48  
         {
 49  0
                 if (!assetsMap.containsKey(contentType))
 50  
                 {
 51  0
                         if (map.containsKey(contentType))
 52  
                         {
 53  0
                                 assetsMap.put(contentType, classpathAssetFactory.createAbsoluteAsset(map.get(contentType), null, null));
 54  
                         } else
 55  
                         {
 56  0
                                 return getAsset(DEFAULT_CONTENT_TYPE);
 57  
                         }
 58  
                 }
 59  
 
 60  0
                 return assetsMap.get(contentType);
 61  
         }
 62  
 
 63  
         public void setClasspathAssetFactory(AssetFactory classpathAssetFactory)
 64  
         {
 65  0
                 this.classpathAssetFactory = classpathAssetFactory;
 66  0
         }
 67  
 }