1 21 package com.db4o.test.nativequery; 22 23 import com.db4o.*; 24 import com.db4o.query.*; 25 import com.db4o.test.*; 26 27 28 public class Cat { 29 30 public String name; 31 32 public Cat(){ 33 34 } 35 36 public Cat(String name){ 37 this.name = name; 38 } 39 40 public void store(){ 41 Test.deleteAllInstances(Cat.class); 42 Test.store(new Cat("Fritz")); 43 Test.store(new Cat("Garfield")); 44 Test.store(new Cat("Tom")); 45 Test.store(new Cat("Occam")); 46 Test.store(new Cat("Zora")); 47 } 48 49 public void test(){ 50 ObjectContainer objectContainer = Test.objectContainer(); 51 ObjectSet objectSet = objectContainer.query(new CatPredicate()); 52 Test.ensure(objectSet.size() == 2); 53 String [] lookingFor = new String [] {"Occam" , "Zora"}; 54 boolean[] found = new boolean[2]; 55 while(objectSet.hasNext()){ 56 Cat cat = (Cat)objectSet.next(); 57 for (int i = 0; i < lookingFor.length; i++) { 58 if(cat.name.equals(lookingFor[i])){ 59 found[i] = true; 60 } 61 } 62 } 63 for (int i = 0; i < found.length; i++) { 64 Test.ensure(found[i]); 65 } 66 } 67 68 public static class CatPredicate extends Predicate{ 69 public boolean match(Cat cat){ 70 return cat.name.equals("Occam") || cat.name.equals("Zora"); 71 } 72 } 73 74 } 75 | Popular Tags |