1 21 package com.db4o.test.legacy; 22 23 import com.db4o.*; 24 import com.db4o.ext.*; 25 import com.db4o.query.*; 26 import com.db4o.test.*; 27 28 29 public class MultiDelete { 30 31 public MultiDelete child; 32 public String name; 33 public Object forLong; 34 public Long myLong; 35 public Object [] untypedArr; 36 public Long [] typedArr; 37 38 39 public void configure(){ 40 Db4o.configure().objectClass(this).cascadeOnDelete(true); 41 Db4o.configure().objectClass(this).cascadeOnUpdate(true); 42 } 43 44 public void store(){ 45 MultiDelete md = new MultiDelete(); 46 md.name = "killmefirst"; 47 md.setMembers(); 48 md.child = new MultiDelete(); 49 md.child.setMembers(); 50 Test.store(md); 51 } 52 53 private void setMembers(){ 54 forLong = new Long (100); 55 myLong = new Long (100); 56 untypedArr = new Object []{ 57 new Long (10), 58 "hi", 59 new MultiDelete() 60 }; 61 typedArr = new Long []{ 62 new Long (3), 63 new Long (7), 64 new Long (9), 65 }; 66 } 67 68 public void test(){ 69 Query q = Test.query(); 70 q.constrain(MultiDelete.class); 71 q.descend("name").constrain("killmefirst"); 72 ObjectSet objectSet = q.execute(); 73 Test.ensureEquals(1,objectSet.size()); 74 MultiDelete md = (MultiDelete)objectSet.next(); 75 ExtObjectContainer oc = Test.objectContainer(); 76 long id = oc.getID(md); 77 oc.delete(md); 78 79 MultiDelete afterDelete = (MultiDelete)oc.getByID(id); 80 oc.delete(md); 81 } 82 83 84 } 85 | Popular Tags |