diff options
| author | Paul Buetow <paul@buetow.org> | 2008-06-01 19:28:00 +0000 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2008-06-01 19:28:00 +0000 |
| commit | 00120474f64906e34fa79ce6ac8eede521c320d5 (patch) | |
| tree | 88146a9507716ba40f10b01d55e14670a364f605 /sources/events/VSAbstractEvent.java | |
| parent | 9a0fc6463ac1bca1ec05056fb4f84163d1e9fc26 (diff) | |
initial complete serialization support
Diffstat (limited to 'sources/events/VSAbstractEvent.java')
| -rw-r--r-- | sources/events/VSAbstractEvent.java | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/sources/events/VSAbstractEvent.java b/sources/events/VSAbstractEvent.java index 15b742f..9a4062e 100644 --- a/sources/events/VSAbstractEvent.java +++ b/sources/events/VSAbstractEvent.java @@ -23,8 +23,11 @@ package events; +import java.io.*; + import core.VSProcess; import prefs.VSPrefs; +import utils.*; /** * The class VSAbstractEvent. This abstract class defines the basic framework @@ -160,4 +163,36 @@ abstract public class VSAbstractEvent extends VSPrefs { * takes place. */ abstract public void onStart(); + + /* (non-Javadoc) + * @see prefs.VSPrefs#writeObject() + */ + public synchronized void writeObject(ObjectOutputStream objectOutputStream) + throws IOException { + super.writeObject(objectOutputStream); + objectOutputStream.writeObject(new Integer(super.getID())); + //objectOutputStream.writeObject(new Integer(process.getProcessNum())); + objectOutputStream.writeObject(eventShortname); + objectOutputStream.writeObject(eventClassname); + } + + /* (non-Javadoc) + * @see prefs.VSPrefs#readObject() + */ + @SuppressWarnings("unchecked") + public synchronized void readObject(ObjectInputStream objectInputStream) + throws IOException, ClassNotFoundException { + super.readObject(objectInputStream); + + if (VSDeserializationHelper.DEBUG) + System.out.println("Deserializing: VSAbstractEvent"); + + Integer id = (Integer) objectInputStream.readObject(); + //Integer processNum = (Integer) objectInputStream.readObject(); + this.eventShortname = (String) objectInputStream.readObject(); + this.eventClassname = (String) objectInputStream.readObject(); + + VSDeserializationHelper.setObject(id.intValue(), + "event", this); + } } |
