1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.seasar.cubby.admin.servlet;
18
19 import java.util.Collection;
20 import java.util.Iterator;
21
22 class LoopingIterator<E> implements Iterator<E> {
23
24 private Collection<E> collection;
25
26 private Iterator<E> iterator;
27
28 public LoopingIterator(Collection<E> collection) {
29 assert collection != null;
30 this.collection = collection;
31 this.iterator = collection.iterator();
32 }
33
34 public boolean hasNext() {
35 return !collection.isEmpty();
36 }
37
38 public E next() {
39 if (!iterator.hasNext()) {
40 iterator = collection.iterator();
41 }
42 return iterator.next();
43 }
44
45 public void remove() {
46 iterator.remove();
47 }
48
49 }