com.metamatrix.core.util
Class MetaMatrixExceptionUtil.NestedExceptionIterator

java.lang.Object
  extended by com.metamatrix.core.util.MetaMatrixExceptionUtil.NestedExceptionIterator
All Implemented Interfaces:
java.util.Iterator
Enclosing class:
MetaMatrixExceptionUtil

public static class MetaMatrixExceptionUtil.NestedExceptionIterator
extends java.lang.Object
implements java.util.Iterator

An Iterator over any nested children Throwables of either a MetaMatrixException or a MetaMatrixRuntimeException. The first Object returned (if any) by next() will be the same Throwable as returned by the #getChild method of the root

In general, each Object A returned by the next() method is guaranteed to be an instance of Throwable; the previous Object B will have been a MetaMatrixException or MetaMatrixRuntimeException whose #getChild method will return the same Object A.


Constructor Summary
MetaMatrixExceptionUtil.NestedExceptionIterator(java.lang.Throwable e)
           
 
Method Summary
 boolean hasNext()
          Returns true if the iteration has more elements.
 java.lang.Object next()
          Returns the next element in the iteration.
 void remove()
          Removes from the underlying collection the last element returned by the iterator (optional operation).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MetaMatrixExceptionUtil.NestedExceptionIterator

public MetaMatrixExceptionUtil.NestedExceptionIterator(java.lang.Throwable e)
Method Detail

hasNext

public boolean hasNext()
Returns true if the iteration has more elements. (In other words, returns true if next would return an element rather than throwing an exception.)

Specified by:
hasNext in interface java.util.Iterator
Returns:
true if the iterator has more elements.

next

public java.lang.Object next()
Returns the next element in the iteration.

Specified by:
next in interface java.util.Iterator
Returns:
the next element in the iteration.
Throws:
java.util.NoSuchElementException - iteration has no more elements.

remove

public void remove()
Removes from the underlying collection the last element returned by the iterator (optional operation). This method can be called only once per call to next. The behavior of an iterator is unspecified if the underlying collection is modified while the iteration is in progress in any way other than by calling this method.

Specified by:
remove in interface java.util.Iterator
Throws:
java.lang.UnsupportedOperationException - if the remove operation is not supported by this Iterator.
java.lang.IllegalStateException - if the next method has not yet been called, or the remove method has already been called after the last call to the next method.


Copyright © 2009. All Rights Reserved.