KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > tctest > spring > Hibernate_Test


1 /*
2  * All content copyright (c) 2003-2006 Terracotta, Inc., except as may otherwise be noted in a separate copyright notice. All rights reserved.
3  */

4 package com.tctest.spring;
5
6 import org.springframework.context.ApplicationContext;
7 import org.springframework.context.support.ClassPathXmlApplicationContext;
8 import org.springframework.transaction.TransactionStatus;
9 import org.springframework.transaction.support.AbstractPlatformTransactionManager;
10 import org.springframework.transaction.support.DefaultTransactionDefinition;
11
12 import com.tc.object.config.ConfigLockLevel;
13 import com.tc.object.config.ConfigVisitor;
14 import com.tc.object.config.DSOClientConfigHelper;
15 import com.tc.simulator.app.ApplicationConfig;
16 import com.tc.simulator.listener.ListenerProvider;
17 import com.tctest.TransparentTestBase;
18 import com.tctest.runner.AbstractTransparentApp;
19 import com.tcspring.beans.orm.data.CustomerDao;
20 import com.tcspring.beans.orm.domain.Customer;
21 //import com.tcspring.beans.orm.domain.CustomerAddress;
22
//import com.tcspring.beans.orm.domain.Permission;
23

24 import java.util.ArrayList JavaDoc;
25 import java.util.HashSet JavaDoc;
26 import java.util.Iterator JavaDoc;
27 import java.util.List JavaDoc;
28
29 public class Hibernate_Test extends TransparentTestBase {
30   private static final int LOOP_ITERATIONS = 1;
31   private static final int EXECUTION_COUNT = 1;
32   private static final int NODE_COUNT = 1;
33
34   public Hibernate_Test() {
35     disableAllUntil("2008-01-01");
36   }
37
38   protected void setUp() throws Exception JavaDoc {
39     super.setUp();
40     getTransparentAppConfig().setClientCount(NODE_COUNT);
41     initializeTestRunner();
42   }
43
44   protected Class JavaDoc getApplicationClass() {
45     return Hibernate_TestApp.class;
46   }
47
48   public static class Hibernate_TestApp extends AbstractTransparentApp {
49
50     private ApplicationContext context;
51
52     private List JavaDoc shared = new ArrayList JavaDoc();
53
54     public Hibernate_TestApp(String JavaDoc appId, ApplicationConfig cfg, ListenerProvider listenerProvider) {
55       super(appId, cfg, listenerProvider);
56     }
57
58     public void run() {
59       context = new ClassPathXmlApplicationContext("com/tctest/spring/hibernate-test-application-context.xml");
60       CustomerDao customerDao = (CustomerDao) context.getBean("customerDao");
61       assertNotNull(customerDao);
62       AbstractPlatformTransactionManager txMgr = (AbstractPlatformTransactionManager)context.getBean("transactionManager");
63       TransactionStatus status = txMgr.getTransaction(new DefaultTransactionDefinition());
64       
65       // FIXME how to test the AW and UoW code?
66
// FIXME how to test the sharing code?
67

68       List JavaDoc customers = customerDao.getAll();
69       for (Iterator JavaDoc i = customers.iterator(); i.hasNext();) {
70         Customer customer = (Customer) i.next();
71         assertNotNull(customer);
72       }
73
74       customers = customerDao.getAllWithOnlyOnePermission();
75       for (Iterator JavaDoc i = customers.iterator(); i.hasNext();) {
76         Customer customer = (Customer) i.next();
77         assertNotNull(customer);
78       }
79
80       Customer customer = new Customer();
81       customer.setFirstName("Jack");
82       customer.setLastName("Schitt");
83       customer.setPermissions(new HashSet JavaDoc());
84       customer.setAddresses(new HashSet JavaDoc());
85       
86       customerDao.save(customer);
87
88       txMgr.commit(status);
89       
90 // status = txMgr.getTransaction(new DefaultTransactionDefinition());
91
//
92
// CustomerAddress ca = new CustomerAddress();
93
// ca.setLine1("1");
94
// ca.setLine2("2");
95
// ca.setCity("Manchester");
96
// ca.setPostCode("M1 xx");
97
//
98
// customer.getAddresses().add(ca);
99
//
100
// customerDao.save(customer);
101
//
102
// customers = customerDao.getAll();
103
// for (Iterator i = customers.iterator(); i.hasNext();) {
104
// customer = (Customer) i.next();
105
// assertNotNull(customer);
106
// }
107
//
108
//
109
// Permission p = new Permission();
110
// p.setPermissionId(1);
111
//
112
// customer.getPermissions().add(p);
113
//
114
// customerDao.save(customer);
115
//
116
// txMgr.commit(status);
117
}
118
119     protected Class JavaDoc getApplicationClass() {
120       return Hibernate_TestApp.class;
121     }
122
123     public static void visitL1DSOConfig(ConfigVisitor visitor, DSOClientConfigHelper config) {
124       String JavaDoc name = Hibernate_TestApp.class.getName();
125       config.addRoot(name, "shared", "shared", false);
126       config.addAutolock("* " + name + ".run()", ConfigLockLevel.WRITE);
127       config.addIncludePattern("com.tcspring.beans.orm.hibernate..*", false, false, false);
128       config.addIncludePattern(TransparentTestBase.class.getName());
129       config.addIncludePattern(Hibernate_TestApp.class.getName());
130       
131       // config.addIsolatedClass("org.springframework.");
132
// config.addIsolatedClass("com.tctest.spring.orm.");
133
// config.addIsolatedClass("com.tcspring.");
134
}
135   }
136 }
137
Popular Tags