www.pudn.com > jnp-src.rar > MultiIOException.java
/*
* Java Network Programming, Second Edition
* Merlin Hughes, Michael Shoffner, Derek Hamner
* Manning Publications Company; ISBN 188477749X
*
* http://nitric.com/jnp/
*
* Copyright (c) 1997-1999 Merlin Hughes, Michael Shoffner, Derek Hamner;
* all rights reserved; see license.txt for details.
*/
import java.io.*;
import java.util.*;
public class MultiIOException extends IOException {
public MultiIOException () {
}
public MultiIOException (String detail) {
super (detail);
}
protected Vector exceptions = new Vector ();
public void addException (IOException ex) {
exceptions.addElement (ex);
}
protected int index = 0;
public boolean hasMoreExceptions () {
return index < exceptions.size ();
}
public synchronized IOException getNextException ()
throws NoSuchElementException {
if (index >= exceptions.size ())
throw new NoSuchElementException ("No more exceptions");
return (IOException) exceptions.elementAt (index ++);
}
public String toString () {
StringBuffer result = new StringBuffer (super.toString ());
result.append (" {");
for (int i = 0; i < exceptions.size (); ++ i) {
if (i > 0)
result.append (", ");
result.append (exceptions.elementAt (i));
}
result.append ("}");
return result.toString ();
}
}