package util; import java.io.Serializable; /** * An Object to mark positions in ObjectStreams. * * <p>You can use a StreamMarker to mark the end of a flow of objects of * unknown class and unknown size. On reading you will then know exactly up to * where you must read.<BR> * E.g. to store some objects out of an enumeration and reread them into a * vector you could use code similar to the following: * <HR><PRE> * ... * Enumeration e = q.elements(); * ObjectOutputStream o = new ObjectOutputStream (fileOutputStream); * while (e.hasMoreElements()) * o.writeObject (e.nextElement()); * * // Set the Marker: * o.writeObject (new StreamMarker()); * * ... * * Vector v = new Vector(); * ObjectInputStream oi = new ObjectInputStream (fileInputStream); * Object ob = oi.readObject(); * while (!(ob instanceof StreamMarker)) { * v.addElement (ob); * ob = oi.readObject(); * } * ... * </PRE></p> * * @author Steffen Zschaler * @version 1.0 * @since v1.0 */ public final class StreamMarker extends Object implements Serializable { /** * Create a new StreamMarker. */ public StreamMarker() { super(); } /** * Give a string representation of this object. * * @override Never */ public final String toString() { return "[StreamMarker used to mark positions in Streams.]"; } }