1 21 package com.db4o.foundation; 22 23 26 public class Collection4Iterator extends Iterator4Impl { 27 28 private final Collection4 _collection; 29 private final int _initialVersion; 30 31 public Collection4Iterator(Collection4 collection, List4 first) { 32 super(first); 33 _collection = collection; 34 _initialVersion = currentVersion(); 35 } 36 37 public boolean moveNext() { 38 validate(); 39 return super.moveNext(); 40 } 41 42 public Object current() { 43 validate(); 44 return super.current(); 45 } 46 47 private void validate() { 48 if (_initialVersion != currentVersion()) { 49 throw new InvalidIteratorException(); 50 } 51 } 52 53 private int currentVersion() { 54 return _collection.version(); 55 } 56 } 57 | Popular Tags |