| 1 21 package com.db4o.cluster; 22 23 import com.db4o.*; 24 import com.db4o.inside.cluster.*; 25 import com.db4o.query.*; 26 27 31 public class Cluster { 32 33 public final ObjectContainer[] _objectContainers; 34 35 39 public Cluster(ObjectContainer[] objectContainers){ 40 if(objectContainers == null){ 41 throw new NullPointerException (); 42 } 43 if(objectContainers.length < 1){ 44 throw new IllegalArgumentException (); 45 } 46 for (int i = 0; i < objectContainers.length; i++) { 47 if(objectContainers[i] == null){ 48 throw new IllegalArgumentException (); 49 } 50 } 51 _objectContainers = objectContainers; 52 } 53 54 59 public Query query(){ 60 synchronized(this){ 61 Query[] queries = new Query[_objectContainers.length]; 62 for (int i = 0; i < _objectContainers.length; i++) { 63 queries[i] = _objectContainers[i].query(); 64 } 65 return new ClusterQuery(this, queries); 66 } 67 } 68 69 76 public ObjectContainer objectContainerFor(Object obj){ 77 synchronized(this){ 78 for (int i = 0; i < _objectContainers.length; i++) { 79 if(_objectContainers[i].ext().isStored(obj)){ 80 return _objectContainers[i]; 81 } 82 } 83 } 84 return null; 85 } 86 87 } 88 | Popular Tags |