KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > pentaho > repository > filebased > solution > FileIterator


1 /*
2  * Copyright 2006 Pentaho Corporation. All rights reserved.
3  * This software was developed by Pentaho Corporation and is provided under the terms
4  * of the Mozilla Public License, Version 1.1, or any later version. You may not use
5  * this file except in compliance with the license. If you need a copy of the license,
6  * please go to http://www.mozilla.org/MPL/MPL-1.1.txt. The Original Code is the Pentaho
7  * BI Platform. The Initial Developer is Pentaho Corporation.
8  *
9  * Software distributed under the Mozilla Public License is distributed on an "AS IS"
10  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. Please refer to
11  * the license for the specific language governing your rights and limitations.
12 */

13 /*
14  * Created on Apr 24, 2005
15  *
16  * TODO To change the template for this generated file go to
17  * Window - Preferences - Java - Code Style - Code Templates
18  */

19 package org.pentaho.repository.filebased.solution;
20
21 import java.util.*;
22 import org.dom4j.*;
23 import org.pentaho.util.logging.ILogger;
24
25 /**
26  * @author James Dixon
27  *
28  * TODO To change the template for this generated type comment go to Window -
29  * Preferences - Java - Code Style - Code Templates
30  */

31 public class FileIterator implements Iterator {
32
33     private List nodeList;
34
35     private Iterator nodeIterator;
36
37     private ILogger logger;
38
39     public FileIterator(List nodeList, ILogger logger) {
40         this.nodeList = nodeList;
41         this.logger = logger;
42         if (nodeList == null) {
43             nodeIterator = null;
44         } else {
45             nodeIterator = nodeList.iterator();
46         }
47     }
48
49     public boolean hasNext() {
50         if (nodeIterator != null) {
51             return nodeIterator.hasNext();
52         }
53         return false;
54     }
55
56     public Object JavaDoc next() {
57         if (nodeIterator != null) {
58             Element node = (Element) nodeIterator.next();
59             FileInfo fileInfo = new FileInfo(node, logger);
60             return fileInfo;
61         }
62         return null;
63     }
64
65     public FileInfo nextFile() {
66         if (nodeIterator != null) {
67             Element node = (Element) nodeIterator.next();
68             FileInfo fileInfo = new FileInfo(node, logger);
69             return fileInfo;
70         }
71         return null;
72
73     }
74
75     public void remove() {
76         if (nodeIterator != null) {
77             nodeIterator.remove();
78         }
79     }
80
81     public int size() {
82         if (nodeList != null) {
83             return nodeList.size();
84         }
85         return 0;
86     }
87 }
88
Popular Tags