689 s.writeObject(values); |
689 s.writeObject(values); |
690 } |
690 } |
691 |
691 |
692 private void readObject(ObjectInputStream s) |
692 private void readObject(ObjectInputStream s) |
693 throws IOException, ClassNotFoundException { |
693 throws IOException, ClassNotFoundException { |
694 s.defaultReadObject(); |
694 ObjectInputStream.GetField f = s.readFields(); |
|
695 EventListenerList newListenerList = (EventListenerList) f.get("listenerList", null); |
|
696 if (newListenerList == null) { |
|
697 throw new InvalidObjectException("Null listenerList"); |
|
698 } |
|
699 listenerList = newListenerList; |
|
700 asksAllowsChildren = f.get("asksAllowsChildren", false); |
695 |
701 |
696 Vector<?> values = (Vector)s.readObject(); |
702 Vector<?> values = (Vector)s.readObject(); |
697 int indexCounter = 0; |
703 int indexCounter = 0; |
698 int maxCounter = values.size(); |
704 int maxCounter = values.size(); |
699 |
705 |
700 if(indexCounter < maxCounter && values.elementAt(indexCounter). |
706 if(indexCounter < maxCounter && values.elementAt(indexCounter). |
701 equals("root")) { |
707 equals("root")) { |
702 root = (TreeNode)values.elementAt(++indexCounter); |
708 TreeNode newRoot = (TreeNode)values.elementAt(++indexCounter); |
|
709 if (newRoot == null) { |
|
710 throw new InvalidObjectException("Null root"); |
|
711 } |
|
712 root = newRoot; |
703 indexCounter++; |
713 indexCounter++; |
704 } |
714 } |
705 } |
715 } |
706 |
716 |
707 |
717 |