01: package org.apache.ojb.odmg;
02:
03: /* Copyright 2002-2005 The Apache Software Foundation
04: *
05: * Licensed under the Apache License, Version 2.0 (the "License");
06: * you may not use this file except in compliance with the License.
07: * You may obtain a copy of the License at
08: *
09: * 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: * The TxManagerFactory is responsible for creating instances of
22: * TransactionManagers. Set the "OJBTxManagerClass" property in
23: * OJB.properties in order to install a new TxManagerFactory
24: *
25: * @author <a href="mailto:mattbaird@yahoo.com">Matthew Baird</a>
26: * @version $Id: TxManagerFactory.java,v 1.6.2.1 2005/12/21 22:29:21 tomdz Exp $
27: */
28: public class TxManagerFactory extends ConfigurableFactory {
29: private static TxManagerFactory singleton;
30: private OJBTxManager manager;
31:
32: static {
33: singleton = new TxManagerFactory();
34: }
35:
36: private TxManagerFactory() {
37: manager = (OJBTxManager) this .createNewInstance();
38: }
39:
40: private OJBTxManager getManager() {
41: return manager;
42: }
43:
44: public synchronized static OJBTxManager instance() {
45: return singleton.getManager();
46: }
47:
48: protected String getConfigurationKey() {
49: return "OJBTxManagerClass";
50: }
51: }
|