KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > celtix > resource > ResourceManager


1 package org.objectweb.celtix.resource;
2
3
4 import java.io.InputStream JavaDoc;
5 import java.util.List JavaDoc;
6
7
8 /**
9  * Locates resources that are used at runtime. The
10  * <code>ResourceManager</code> queries registered
11  * <code>ResourceResolver</code> to find resources.
12  */

13 public interface ResourceManager {
14     
15     /**
16      * Resolve a resource. The ResourceManager will query all of the
17      * registered <code>ResourceResovler</code> objects until one
18      * manages to resolve the resource
19      *
20      * @param name name of resource to resolve.
21      * @param type type of resource to resolve.
22      * @return the resolved resource or null if nothing found.
23      */

24     <T> T resolveResource(String JavaDoc name, Class JavaDoc<T> type);
25
26
27     /**
28      * Open stream to resource.
29      *
30      * @param name name of resource to resolve.
31      * @return the InputStream to the resource or null if the resource
32      * cannot be found.
33      */

34     InputStream JavaDoc getResourceAsStream(String JavaDoc name);
35
36     /**
37      * Add a <code>ResourceResolver</code>. The newly added resolver
38      * is added at the head of the list so the most recently added
39      * will be queried first.
40      * @param resolver the <code>ResourceResolver</code> to
41      * add. Duplicates will be ignored.
42      */

43     void addResourceResolver(ResourceResolver resolver);
44
45     /**
46      * Remove a <code>ResourceResolver</code>.
47      * @param resolver the <code>ResourceResolver</code> to remove.
48      * If not previously registered, it is ignored.
49      */

50     void removeResourceResolver(ResourceResolver resolver);
51
52
53     /**
54      * Get all the currently registered resolvers
55      */

56     List JavaDoc getResourceResolvers();
57 }
58
Popular Tags