From 23055ca47090021dbf84d05d5e14c8990479bfe1 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Tue, 27 May 2008 20:13:54 +0000 Subject: onServerStart vs onClientStart works. --- sources/protocols/VSAbstractProtocol.java | 37 ++++++++++++++++++++++++++----- 1 file changed, 32 insertions(+), 5 deletions(-) (limited to 'sources/protocols/VSAbstractProtocol.java') diff --git a/sources/protocols/VSAbstractProtocol.java b/sources/protocols/VSAbstractProtocol.java index 299d23d..461fe01 100644 --- a/sources/protocols/VSAbstractProtocol.java +++ b/sources/protocols/VSAbstractProtocol.java @@ -15,6 +15,11 @@ import core.*; */ abstract public class VSAbstractProtocol extends VSAbstractEvent { private static final long serialVersionUID = 1L; + protected static final boolean HAS_ON_SERVER_START = true; + protected static final boolean HAS_ON_CLIENT_START = false; + + /** True, if onServerStart is used, false if onClientStart is used */ + private boolean hasOnServerStart; /** The protocol object is a server. */ private boolean isServer; @@ -31,7 +36,8 @@ abstract public class VSAbstractProtocol extends VSAbstractEvent { /** The protocol's client schedules */ private ArrayList clientSchedules = new ArrayList(); - public VSAbstractProtocol() { + public VSAbstractProtocol(boolean hasOnServerStart) { + this.hasOnServerStart = hasOnServerStart; } /** @@ -64,9 +70,16 @@ abstract public class VSAbstractProtocol extends VSAbstractEvent { * @see events.VSAbstractEvent#onStart() */ public final void onStart() { - if (isClient) { - currentContextIsServer(false); - onClientStart(); + if (hasOnServerStart) { + if (isServer) { + currentContextIsServer(true); + onServerStart(); + } + } else { + if (isClient) { + currentContextIsServer(false); + onClientStart(); + } } } @@ -135,6 +148,15 @@ abstract public class VSAbstractProtocol extends VSAbstractEvent { this.currentContextIsServer = currentContextIsServer; } + /** + * Checks how the protocol will start + * + * @return true, if this protocol uses onServerStart instead of onClientStart + */ + public final boolean hasOnServerStart() { + return hasOnServerStart; + } + /** * Sets if is server. * @@ -226,7 +248,7 @@ abstract public class VSAbstractProtocol extends VSAbstractEvent { /** * On client start. */ - abstract public void onClientStart(); + public void onClientStart() { }; /** * On client reset. @@ -250,6 +272,11 @@ abstract public class VSAbstractProtocol extends VSAbstractEvent { */ abstract public void onServerInit(); + /** + * On server start. + */ + public void onServerStart() { }; + /** * On server reset. */ -- cgit v1.2.3