diff options
| author | Paul Buetow <paul@buetow.org> | 2008-05-26 20:25:30 +0000 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2008-05-26 20:25:30 +0000 |
| commit | 230ddbf8753db60f1baa517e4d9a4d08885fac04 (patch) | |
| tree | dd2f9f4016ce8162768552cfb52d15a31372a4f6 /sources/protocols/VSAbstractProtocol.java | |
| parent | 065bbc74eda368148851f0a8e8d9e4a016e48e28 (diff) | |
1 phase comit protocol works
Diffstat (limited to 'sources/protocols/VSAbstractProtocol.java')
| -rw-r--r-- | sources/protocols/VSAbstractProtocol.java | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/sources/protocols/VSAbstractProtocol.java b/sources/protocols/VSAbstractProtocol.java index 2c84d96..05864fb 100644 --- a/sources/protocols/VSAbstractProtocol.java +++ b/sources/protocols/VSAbstractProtocol.java @@ -4,6 +4,7 @@ */ package protocols; +import events.internal.*; import events.*; import core.*; @@ -83,7 +84,7 @@ abstract public class VSAbstractProtocol extends VSAbstractEvent { * * @param message the message */ - public final void onMessageRecv(VSMessage message) { + public final void onMessageRecvStart(VSMessage message) { if (isIncorrectProtocol(message)) return; @@ -152,6 +153,17 @@ abstract public class VSAbstractProtocol extends VSAbstractEvent { } /** + * Reschedules the protocol for a new time and runs onClientSchedule or onServerSchedule + * + * @param isClient the is client + */ + protected final void scheduleAt(long time) { + VSAbstractEvent scheduleEvent = new ProtocolScheduleEvent(this, currentContextIsServer); + VSTask scheduleTask = new VSTask(time, process, scheduleEvent, VSTask.LOCAL); + process.getSimulationCanvas().getTaskManager().addTask(scheduleTask); + } + + /** * On client start. */ abstract protected void onClientStart(); |
