KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > ojb > broker > accesslayer > ConnectionFactoryFactory


1 package org.apache.ojb.broker.accesslayer;
2
3 /* Copyright 2002-2005 The Apache Software Foundation
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */

17
18 import org.apache.ojb.broker.util.factory.ConfigurableFactory;
19
20 /**
21  * Factory for {@link org.apache.ojb.broker.accesslayer.ConnectionFactory} implementations.
22  * <br/>
23  * See also {@link org.apache.ojb.broker.accesslayer.ConnectionManagerFactory}
24  *
25  * @version $Id: ConnectionFactoryFactory.java,v 1.10.2.1 2005/12/21 22:22:58 tomdz Exp $
26  */

27 public class ConnectionFactoryFactory extends ConfigurableFactory
28 {
29     private static ConnectionFactoryFactory singleton = new ConnectionFactoryFactory();
30     private ConnectionFactory conFactory;
31
32     public synchronized static ConnectionFactoryFactory getInstance()
33     {
34         return singleton;
35     }
36
37     /**
38      * Returns the used {@link ConnectionFactory} implementation. Currently each call
39      * returns the same implementation instance.
40      */

41     public synchronized ConnectionFactory createConnectionFactory()
42     {
43         if (conFactory == null)
44         {
45             conFactory = (ConnectionFactory) createNewInstance();
46         }
47         return conFactory;
48     }
49
50     protected String JavaDoc getConfigurationKey()
51     {
52         return "ConnectionFactoryClass";
53     }
54 }
55
Popular Tags