JAL-1807 Bob's JalviewJS prototype first commit
[jalviewjs.git] / src / javajs / util / AjaxURLStreamHandlerFactory.java
1 package javajs.util;\r
2 \r
3 import java.net.URLStreamHandler;\r
4 import java.net.URLStreamHandlerFactory;\r
5 import java.util.Hashtable;\r
6 import java.util.Map;\r
7 \r
8 \r
9 /**\r
10  * \r
11  * For handling URL file IO via AJAX in JavaScript version\r
12  * \r
13  */\r
14 \r
15 public class AjaxURLStreamHandlerFactory implements URLStreamHandlerFactory {\r
16 \r
17         Map<String, AjaxURLStreamHandler> htFactories = new Hashtable<String, AjaxURLStreamHandler>();\r
18         \r
19         @Override\r
20   public URLStreamHandler createURLStreamHandler(String protocol) {\r
21                 AjaxURLStreamHandler fac = htFactories.get(protocol);\r
22                 if (fac == null)\r
23                         htFactories.put(protocol, fac = new AjaxURLStreamHandler(protocol));\r
24                 return (fac.protocol == null ? null : fac);\r
25         }\r
26 \r
27 }\r