KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > sapia > resource > UrlResourceHandler


1 package org.sapia.resource;
2
3 import java.io.IOException JavaDoc;
4 import java.io.InputStream JavaDoc;
5 import java.net.URI JavaDoc;
6 import java.net.URL JavaDoc;
7
8 /**
9  * Implements a <code>ResourceHandler</code> that produces
10  * <code>UrlResource</code> instances.
11  *
12  * @see org.sapia.resource.UrlResource
13  *
14  * @author Yanick Duchesne
15
16  */

17 public class UrlResourceHandler implements ResourceHandler {
18   public UrlResourceHandler() {
19     super();
20   }
21
22   public Resource getResourceObject(String JavaDoc uri) throws IOException JavaDoc {
23     if(uri.startsWith(Schemes.SCHEME_RESOURCE)){
24       return new ClasspathResourceHandler().getResourceObject(uri);
25     }
26     else{
27       return new UrlResource(new URL JavaDoc(uri));
28     }
29   }
30
31   public InputStream JavaDoc getResource(String JavaDoc uri) throws IOException JavaDoc {
32     return getResourceObject(uri).getInputStream();
33   }
34
35   public boolean accepts(String JavaDoc uri) {
36     return doAccepts(Utils.getScheme(uri));
37   }
38   
39   public boolean accepts(URI JavaDoc uri) {
40     return doAccepts(uri.getScheme());
41   }
42   
43   private boolean doAccepts(String JavaDoc scheme){
44     if(scheme == null || scheme.length() == 0) {
45       return false;
46     }
47     return true;
48   }
49
50 }
51
Popular Tags