1 21 package com.db4o.test.concurrency; 22 23 import java.util.*; 24 25 import com.db4o.*; 26 import com.db4o.ext.*; 27 import com.db4o.query.*; 28 import com.db4o.test.*; 29 30 31 public class CascadedDeleteStaleReference { 32 33 List list; 34 CDSReference ref; 35 36 37 public void configure(){ 38 Db4o.configure().objectClass(this).cascadeOnDelete(true); 39 Db4o.configure().objectClass(this).cascadeOnUpdate(true); 40 } 41 42 public void storeOne(){ 43 list = Test.objectContainer().collections().newLinkedList(); 44 ref = new CDSReference(); 45 list.add(ref); 46 } 47 48 public void testOne(){ 49 50 51 if(Test.isClientServer()){ 52 53 54 ExtObjectContainer serverOC = Test.server().ext().objectContainer().ext(); 55 56 Query q = serverOC.query(); 57 q.constrain(CDSReference.class); 58 ObjectSet objectSet = q.execute(); 59 CDSReference willbeStale = (CDSReference) objectSet.next(); 60 61 62 Test.delete(this); 63 serverOC.delete(this); 64 Test.commit(); 65 serverOC.commit(); 66 67 68 serverOC.purge(willbeStale); 69 70 72 } 73 } 74 75 76 public static class CDSReference{ 77 } 78 } 79 | Popular Tags |