diff options
Diffstat (limited to 'libjava/classpath/javax/naming/CompositeName.java')
-rw-r--r-- | libjava/classpath/javax/naming/CompositeName.java | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/libjava/classpath/javax/naming/CompositeName.java b/libjava/classpath/javax/naming/CompositeName.java index 61adcf177a6..6f3466ca23c 100644 --- a/libjava/classpath/javax/naming/CompositeName.java +++ b/libjava/classpath/javax/naming/CompositeName.java @@ -1,5 +1,5 @@ /* CompositeName.java -- - Copyright (C) 2001, 2005 Free Software Foundation, Inc. + Copyright (C) 2001, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -38,6 +38,9 @@ exception statement from your version. */ package javax.naming; +import java.io.IOException; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; import java.io.Serializable; import java.util.Enumeration; import java.util.NoSuchElementException; @@ -45,10 +48,6 @@ import java.util.Vector; /** * @author Tom Tromey (tromey@redhat.com) - * @date May 16, 2001 - * - * FIXME: must write readObject and writeObject to conform to - * serialization spec. */ public class CompositeName implements Name, Cloneable, Serializable { @@ -316,6 +315,22 @@ public class CompositeName implements Name, Cloneable, Serializable } return result.toString (); } + + private void readObject(ObjectInputStream s) + throws IOException, ClassNotFoundException + { + int size = s.readInt(); + elts = new Vector(size); + for (int i = 0; i < size; i++) + elts.add(s.readObject()); + } + + private void writeObject(ObjectOutputStream s) throws IOException + { + s.writeInt(elts.size()); + for (int i = 0; i < elts.size(); i++) + s.writeObject(elts.get(i)); + } private transient Vector elts; } |