1 package com.atlassian.plugin.webresource;
2
3 import org.apache.commons.lang.StringUtils;
4 import org.apache.commons.lang.BooleanUtils;
5
6 import java.util.Map;
7 import java.util.List;
8 import java.util.Arrays;
9
10 class CssWebResourceFormatter extends AbstractWebResourceFormatter
11 {
12 private static final String CSS_EXTENSION = ".css";
13 private static final List
14
15 public boolean matches(String name)
16 {
17 return name != null && name.endsWith(CSS_EXTENSION);
18 }
19
20 public String formatResource(String name, String url, Map params)
21 {
22 StringBuffer buffer = new StringBuffer();
23 buffer.append("<link type=\"text/css\" rel=\"stylesheet\" href=\"").append(url).append("\"");
24 List attributes = getParametersAsAttributes(params);
25 if(attributes!=null && attributes.size()>0)
26 {
27 buffer.append(" ").append(StringUtils.join(attributes.iterator(), " "));
28 }
29
30
31 if(!params.containsKey("media"))
32 {
33 buffer.append(" media=\"all\"");
34 }
35 buffer.append("/>\n");
36
37
38 if(BooleanUtils.toBoolean((String) params.get("ieonly")))
39 {
40 buffer.insert(0, "<!--[if IE]>\n");
41 buffer.append("<![endif]-->\n");
42 }
43
44 return buffer.toString();
45 }
46
47 protected List
48 {
49 return HANDLED_PARAMETERS;
50 }
51 }