01: package com.completex.objective.components.persistency.core.adapter;
02:
03: import com.completex.objective.components.persistency.core.impl.JtaDatabaseTransactionManagerImpl;
04: import com.completex.objective.components.persistency.transact.TransactionManager;
05: import com.completex.objective.components.persistency.transact.impl.AbstractTransactionManager;
06: import com.completex.objective.util.TypeUtil;
07:
08: /**
09: * Jta Transaction Manager Factory
10: *
11: * @author Gennady Krizhevsky
12: */
13: public class JtaTransactionManagerFactory extends
14: BaseTransactionManagerFactory {
15:
16: private String userTransactionName;
17:
18: protected TransactionManager newConcreteTransactionManager(
19: AbstractTransactionManager coreTransactionManager) {
20: return new JtaDatabaseTransactionManagerImpl(
21: userTransactionName, coreTransactionManager,
22: databasePolicy, logger);
23: }
24:
25: protected void validateInit() {
26: super .validateInit();
27: TypeUtil.assertNotNull(getUserTransactionName(),
28: "UserTransactionName");
29: }
30:
31: /**
32: * Returns JNDI user transaction name
33: *
34: * @return JNDI user transaction name
35: */
36: public String getUserTransactionName() {
37: return userTransactionName;
38: }
39:
40: /**
41: * Sets JNDI user transaction name
42: *
43: * @param userTransactionName
44: */
45: public void setUserTransactionName(String userTransactionName) {
46: this.userTransactionName = userTransactionName;
47: }
48:
49: }
|