KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > jaspersoft > jasperserver > api > engine > jasperreports > util > repo > RepositoryURLHandlerFactory


1 /*
2  * Copyright (C) 2006 JasperSoft http://www.jaspersoft.com
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed WITHOUT ANY WARRANTY; and without the
10  * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
11  * See the GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program; if not, see http://www.gnu.org/licenses/gpl.txt
15  * or write to:
16  *
17  * Free Software Foundation, Inc.,
18  * 59 Temple Place - Suite 330,
19  * Boston, MA USA 02111-1307
20  */

21 package com.jaspersoft.jasperserver.api.engine.jasperreports.util.repo;
22
23 import java.net.MalformedURLException JavaDoc;
24 import java.net.URL JavaDoc;
25 import java.net.URLStreamHandler JavaDoc;
26 import java.net.URLStreamHandlerFactory JavaDoc;
27
28 import org.apache.commons.logging.Log;
29 import org.apache.commons.logging.LogFactory;
30
31 import com.jaspersoft.jasperserver.api.JSExceptionWrapper;
32
33
34 /**
35  * @author Lucian Chirita (lucianc@users.sourceforge.net)
36  * @version $Id: RepositoryURLHandlerFactory.java 2995 2006-04-07 14:05:32Z tdanciu $
37  */

38 public class RepositoryURLHandlerFactory implements URLStreamHandlerFactory JavaDoc
39 {
40     protected static final Log log = LogFactory.getLog(RepositoryURLHandlerFactory.class);
41     
42     private final static RepositoryURLHandlerFactory instance = new RepositoryURLHandlerFactory();
43     
44     public static RepositoryURLHandlerFactory getInstance()
45     {
46         return instance;
47     }
48     
49     private final Handler repositoryHandler;
50     
51     protected RepositoryURLHandlerFactory()
52     {
53         repositoryHandler = new Handler();
54     }
55     
56     public URLStreamHandler JavaDoc createURLStreamHandler(String JavaDoc protocol)
57     {
58         if (protocol.equals(Handler.REPOSITORY_PROTOCOL))
59         {
60             return repositoryHandler;
61         }
62
63         return null;
64     }
65     
66     public Handler getRepoHandler() {
67         return repositoryHandler;
68     }
69
70     public static URL JavaDoc createRepoURL(String JavaDoc uri) {
71         try {
72             return new URL JavaDoc(null, Handler.URL_PROTOCOL_PREFIX + uri, getInstance().getRepoHandler());
73         } catch (MalformedURLException JavaDoc e) {
74             log.error(e, e);
75             throw new JSExceptionWrapper(e);
76         }
77     }
78 }
79
Popular Tags