/* * Copyright 2004 The Apache Software Foundation. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package javax.faces.component; import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.NoSuchElementException; /** * @author Manfred Geiler (latest modification by $Author$) * @version $Revision$ $Date$ */ class _FacetsAndChildrenIterator implements Iterator { private Iterator _facetsIterator; private Iterator _childrenIterator; _FacetsAndChildrenIterator(Map facetMap, List childrenList) { _facetsIterator = facetMap != null ? facetMap.values().iterator() : null; _childrenIterator = childrenList != null ? childrenList.iterator() : null; } public boolean hasNext() { return (_facetsIterator != null && _facetsIterator.hasNext()) || (_childrenIterator != null && _childrenIterator.hasNext()); } public Object next() { if (_facetsIterator != null && _facetsIterator.hasNext()) { return _facetsIterator.next(); } else if (_childrenIterator != null && _childrenIterator.hasNext()) { return _childrenIterator.next(); } else { throw new NoSuchElementException(); } } public void remove() { throw new UnsupportedOperationException(this.getClass().getName() + " UnsupportedOperationException"); } }