KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > myvietnam > mvncore > web > URLResolverFactory


1 /*
2  * $Header: /cvsroot/mvnforum/myvietnam/src/net/myvietnam/mvncore/web/URLResolverFactory.java,v 1.6 2006/04/14 16:03:56 minhnn Exp $
3  * $Author: minhnn $
4  * $Revision: 1.6 $
5  * $Date: 2006/04/14 16:03:56 $
6  *
7  * ====================================================================
8  *
9  * Copyright (C) 2002-2006 by MyVietnam.net
10  *
11  * All copyright notices regarding MyVietnam and MyVietnam CoreLib
12  * MUST remain intact in the scripts and source code.
13  *
14  * This library is free software; you can redistribute it and/or
15  * modify it under the terms of the GNU Lesser General Public
16  * License as published by the Free Software Foundation; either
17  * version 2.1 of the License, or (at your option) any later version.
18  *
19  * This library is distributed in the hope that it will be useful,
20  * but WITHOUT ANY WARRANTY; without even the implied warranty of
21  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22  * Lesser General Public License for more details.
23  *
24  * You should have received a copy of the GNU Lesser General Public
25  * License along with this library; if not, write to the Free Software
26  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
27  *
28  * Correspondence and Marketing Questions can be sent to:
29  * info at MyVietnam net
30  *
31  * @author: Minh Nguyen
32  */

33 package net.myvietnam.mvncore.web;
34
35 import net.myvietnam.mvncore.MVNCoreConfig;
36 import net.myvietnam.mvncore.web.impl.URLResolverServletImpl;
37 import org.apache.commons.logging.Log;
38 import org.apache.commons.logging.LogFactory;
39
40 public class URLResolverFactory {
41
42     private static Log log = LogFactory.getLog(URLResolverFactory.class);
43
44     private static URLResolver urlResolver = null;
45
46     /**
47      * Private constructor to prevent instantiation
48      */

49     private URLResolverFactory() {
50     }
51
52     public static URLResolver getURLResolver() {
53
54         if (urlResolver == null) {
55             String JavaDoc urlResolverClassName = MVNCoreConfig.getURLResolverClassName();
56             try {
57                 if (urlResolverClassName.length() > 0) {
58                     Class JavaDoc urlResolverClass = Class.forName(urlResolverClassName);
59                     urlResolver = (URLResolver) urlResolverClass.newInstance();
60                 }
61             } catch (Throwable JavaDoc ex) {
62                 log.error("Cannot load URLResolver implementation (" + urlResolverClassName + ")", ex);
63             }
64
65             // fallback, now use the defualt implementation
66
if (urlResolver == null) {
67                 urlResolver = new URLResolverServletImpl();
68             }
69
70             log.info("Using URLResolver = " + urlResolver);
71         }
72
73         return urlResolver;
74     }
75 }
76
Popular Tags