From 11af1c9fa7fe66e10de0a92878311b4e22befb0f Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Tue, 3 Jun 2008 16:41:37 +0000 Subject: made future serialized class versions backwards compatible. --- sources/simulator/VSSimulatorCanvas.java | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'sources/simulator/VSSimulatorCanvas.java') diff --git a/sources/simulator/VSSimulatorCanvas.java b/sources/simulator/VSSimulatorCanvas.java index 1b30a51..b521fc7 100644 --- a/sources/simulator/VSSimulatorCanvas.java +++ b/sources/simulator/VSSimulatorCanvas.java @@ -1571,6 +1571,9 @@ public class VSSimulatorCanvas extends Canvas public synchronized void serialize(VSSerialize serialize, ObjectOutputStream objectOutputStream) throws IOException { + /** For later backwards compatibility, to add more stuff */ + objectOutputStream.writeObject(new Boolean(false)); + synchronized (processes) { objectOutputStream.writeObject(new Integer(numProcesses)); for (VSProcess process : processes) @@ -1578,6 +1581,9 @@ public class VSSimulatorCanvas extends Canvas } taskManager.serialize(serialize, objectOutputStream); + + /** For later backwards compatibility, to add more stuff */ + objectOutputStream.writeObject(new Boolean(false)); } /* (non-Javadoc) @@ -1591,6 +1597,9 @@ public class VSSimulatorCanvas extends Canvas if (VSSerialize.DEBUG) System.out.println("Deserializing: VSSimulatorCanvas"); + /** For later backwards compatibility, to add more stuff */ + objectInputStream.readObject(); + int num = ((Integer) objectInputStream.readObject()).intValue(); logging.clear(); @@ -1604,8 +1613,11 @@ public class VSSimulatorCanvas extends Canvas } for (int i = 0; i < num; ++i) - processes.get(0).deserialize(serialize, objectInputStream); + processes.get(i).deserialize(serialize, objectInputStream); taskManager.deserialize(serialize, objectInputStream); + + /** For later backwards compatibility, to add more stuff */ + objectInputStream.readObject(); } } -- cgit v1.2.3