1   package com.atlassian.user.search.page;
2   
3   import javax.naming.NamingEnumeration;
4   import javax.naming.NamingException;
5   import java.util.Collection;
6   import java.util.Iterator;
7   import java.util.ArrayList;
8   
9   public class MockNamingEnumeration<T> implements NamingEnumeration<T>
10  {
11      private final Iterator<T> iterator;
12  
13      public MockNamingEnumeration(Collection<? extends T> collection)
14      {
15          iterator = new ArrayList<T>(collection).iterator();
16      }
17  
18      public MockNamingEnumeration(Iterator<T> iterator)
19      {
20          this.iterator = iterator;
21      }
22  
23      public void close() throws NamingException
24      {
25          // do nothing
26      }
27  
28      public boolean hasMore() throws NamingException
29      {
30          return iterator.hasNext();
31      }
32  
33      public T next() throws NamingException
34      {
35          return iterator.next();
36      }
37  
38      public boolean hasMoreElements()
39      {
40          return iterator.hasNext();
41      }
42  
43      public T nextElement()
44      {
45          return iterator.next();
46      }
47  }