1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package javax.faces.application;
20
21 import java.io.IOException;
22
23 import javax.faces.context.FacesContext;
24
25 import org.apache.myfaces.buildtools.maven2.plugin.builder.annotation.JSFWebConfigParam;
26
27
28
29
30 public abstract class ResourceHandler
31 {
32 public static final String LOCALE_PREFIX = "javax.faces.resource.localePrefix";
33 public static final String RESOURCE_EXCLUDES_DEFAULT_VALUE = ".class .jsp .jspx .properties .xhtml .groovy";
34
35
36
37
38 @JSFWebConfigParam(defaultValue=".class .jsp .jspx .properties .xhtml .groovy",since="2.0", group="resources")
39 public static final String RESOURCE_EXCLUDES_PARAM_NAME = "javax.faces.RESOURCE_EXCLUDES";
40 public static final String RESOURCE_IDENTIFIER = "/javax.faces.resource";
41
42
43
44
45 public static final String RESOURCE_CONTRACT_XML = "javax.faces.contract.xml";
46
47
48
49
50 public static final String WEBAPP_CONTRACTS_DIRECTORY_PARAM_NAME = "javax.faces.WEBAPP_CONTRACTS_DIRECTORY";
51
52
53
54
55 public static final String WEBAPP_RESOURCES_DIRECTORY_PARAM_NAME = "javax.faces.WEBAPP_RESOURCES_DIRECTORY";
56
57 public abstract Resource createResource(String resourceName);
58
59 public abstract Resource createResource(String resourceName, String libraryName);
60
61 public abstract Resource createResource(String resourceName, String libraryName, String contentType);
62
63 public abstract String getRendererTypeForResourceName(String resourceName);
64
65 public abstract void handleResourceRequest(FacesContext context) throws IOException;
66
67 public abstract boolean isResourceRequest(FacesContext context);
68
69 public abstract boolean libraryExists(String libraryName);
70
71
72
73
74
75
76 public Resource createResourceFromId(String resourceId)
77 {
78 return null;
79 }
80
81
82
83
84
85
86
87
88 public ViewResource createViewResource(FacesContext context,
89 String resourceName)
90 {
91 return context.getApplication().getResourceHandler().createResource(resourceName);
92 }
93
94 public boolean isResourceURL(java.lang.String url)
95 {
96 if (url == null)
97 {
98 throw new NullPointerException();
99 }
100 return url.contains(RESOURCE_IDENTIFIER);
101 }
102 }