KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > commons > collections > iterators > AbstractIteratorDecorator


1 /*
2  * Copyright 2003-2004 The Apache Software Foundation
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */

16 package org.apache.commons.collections.iterators;
17
18 import java.util.Iterator JavaDoc;
19
20 /**
21  * Provides basic behaviour for decorating an iterator with extra functionality.
22  * <p>
23  * All methods are forwarded to the decorated iterator.
24  *
25  * @since Commons Collections 3.0
26  * @version $Revision: 1.4 $ $Date: 2004/02/18 00:59:50 $
27  *
28  * @author James Strachan
29  * @author Stephen Colebourne
30  */

31 public class AbstractIteratorDecorator implements Iterator JavaDoc {
32
33     /** The iterator being decorated */
34     protected final Iterator JavaDoc iterator;
35
36     //-----------------------------------------------------------------------
37
/**
38      * Constructor that decorates the specified iterator.
39      *
40      * @param iterator the iterator to decorate, must not be null
41      * @throws IllegalArgumentException if the collection is null
42      */

43     public AbstractIteratorDecorator(Iterator JavaDoc iterator) {
44         super();
45         if (iterator == null) {
46             throw new IllegalArgumentException JavaDoc("Iterator must not be null");
47         }
48         this.iterator = iterator;
49     }
50
51     /**
52      * Gets the iterator being decorated.
53      *
54      * @return the decorated iterator
55      */

56     protected Iterator JavaDoc getIterator() {
57         return iterator;
58     }
59
60     //-----------------------------------------------------------------------
61
public boolean hasNext() {
62         return iterator.hasNext();
63     }
64
65     public Object JavaDoc next() {
66         return iterator.next();
67     }
68
69     public void remove() {
70         iterator.remove();
71     }
72
73 }
74
Popular Tags