|                                                                                                              1
 17  package org.columba.mail.folder;
 18
 19  import java.util.ArrayList
  ; 20  import java.util.Enumeration
  ; 21  import java.util.Iterator
  ; 22  import java.util.List
  ; 23
 24  import javax.swing.tree.TreeNode
  ; 25
 26
 27
 32  public class FolderChildrenIterator {
 33      private List
  folderList; 34      Iterator
  folderIterator; 35
 36      public FolderChildrenIterator(IMailFolder parent) {
 37          folderList = new ArrayList
  (); 38          Enumeration
  childEnum = parent.children(); 39          while( childEnum.hasMoreElements() ) {
 40              appendAllChildren(folderList, (TreeNode
  )childEnum.nextElement()); 41          }
 42
 43          folderIterator = folderList.iterator();
 44      }
 45
 46      private void appendAllChildren(List
  folderList, TreeNode  folder) { 47          folderList.add(folder);
 48          if( folder.getChildCount() > 0) {
 49              Enumeration
  childEnum = folder.children(); 50              while( childEnum.hasMoreElements() ) {
 51                  appendAllChildren(folderList, (TreeNode
  ) childEnum.nextElement()); 52              }
 53          }
 54      }
 55
 56      public boolean hasMoreChildren() {
 57          return folderIterator.hasNext();
 58      }
 59
 60      public AbstractFolder nextChild() {
 61          return (AbstractFolder) folderIterator.next();
 62      }
 63
 64  }
 65
                                                                                                                                                                                                             |                                                                       
 
 
 
 
 
                                                                                   Popular Tags                                                                                                                                                                                              |