KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > tctest > ServerCrashAndRestartTest


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

5 package com.tctest;
6
7 import EDU.oswego.cs.dl.util.concurrent.CyclicBarrier;
8 import EDU.oswego.cs.dl.util.concurrent.SynchronizedInt;
9
10 import com.tc.config.schema.builder.InstrumentedClassConfigBuilder;
11 import com.tc.config.schema.builder.LockConfigBuilder;
12 import com.tc.config.schema.builder.RootConfigBuilder;
13 import com.tc.config.schema.test.InstrumentedClassConfigBuilderImpl;
14 import com.tc.config.schema.test.L2ConfigBuilder;
15 import com.tc.config.schema.test.LockConfigBuilderImpl;
16 import com.tc.config.schema.test.RootConfigBuilderImpl;
17 import com.tc.config.schema.test.TerracottaConfigBuilder;
18
19 public class ServerCrashAndRestartTest extends ServerCrashingTestBase {
20
21   private static final int NODE_COUNT = 5;
22
23   public ServerCrashAndRestartTest() {
24     super(NODE_COUNT);
25   }
26
27   protected Class JavaDoc getApplicationClass() {
28     return ServerCrashAndRestartTestApp.class;
29   }
30
31   protected void createConfig(TerracottaConfigBuilder cb) {
32     // persistent mode
33
cb.getServers().getL2s()[0].setPersistenceMode(L2ConfigBuilder.PERSISTENCE_MODE_PERMANENT_STORE);
34
35     // locks
36
LockConfigBuilder[] locks = new LockConfigBuilder[] {
37         new LockConfigBuilderImpl(LockConfigBuilder.TAG_AUTO_LOCK, CyclicBarrier.class, LockConfigBuilder.LEVEL_WRITE),
38         new LockConfigBuilderImpl(LockConfigBuilder.TAG_AUTO_LOCK, SynchronizedInt.class, LockConfigBuilder.LEVEL_WRITE),
39         new LockConfigBuilderImpl(LockConfigBuilder.TAG_AUTO_LOCK, getApplicationClass(), LockConfigBuilder.LEVEL_WRITE) };
40
41     cb.getApplication().getDSO().setLocks(locks);
42
43     // include classes
44
InstrumentedClassConfigBuilder[] instrClasses = new InstrumentedClassConfigBuilder[] {
45         new InstrumentedClassConfigBuilderImpl(CyclicBarrier.class),
46         new InstrumentedClassConfigBuilderImpl(SynchronizedInt.class),
47         new InstrumentedClassConfigBuilderImpl(getApplicationClass()) };
48
49     cb.getApplication().getDSO().setInstrumentedClasses(instrClasses);
50     
51     // roots
52
RootConfigBuilder[] roots = new RootConfigBuilder[] { new RootConfigBuilderImpl(getApplicationClass(), "barrier") };
53     cb.getApplication().getDSO().setRoots(roots);
54   }
55
56 }
57
Free Books   Free Magazines  
Popular Tags