summaryrefslogtreecommitdiff
path: root/sources/events/internal/ProtocolEvent.java
diff options
context:
space:
mode:
Diffstat (limited to 'sources/events/internal/ProtocolEvent.java')
-rw-r--r--sources/events/internal/ProtocolEvent.java55
1 files changed, 55 insertions, 0 deletions
diff --git a/sources/events/internal/ProtocolEvent.java b/sources/events/internal/ProtocolEvent.java
new file mode 100644
index 0000000..61b5890
--- /dev/null
+++ b/sources/events/internal/ProtocolEvent.java
@@ -0,0 +1,55 @@
+package events.internal;
+
+import core.VSProcess;
+import events.*;
+import protocols.VSProtocol;
+
+public class ProtocolEvent extends VSEvent {
+ private String protocolClassname;
+ private boolean isClientProtocol; /* true = client, false = server */
+ private boolean isProtocolActivation; /* true = activate, false = deactivate */
+
+ protected void onInit() {
+ setClassname(getClass().toString());
+ }
+
+ public void isClientProtocol(boolean isClientProtocol) {
+ this.isClientProtocol = isClientProtocol;
+ }
+
+ public boolean isClientProtocol() {
+ return isClientProtocol;
+ }
+
+ public void isProtocolActivation(boolean isProtocolActivation) {
+ this.isProtocolActivation = isProtocolActivation;
+ }
+
+ public boolean isProtocolActivation() {
+ return isProtocolActivation;
+ }
+
+ public void setProtocolClassname(String protocolClassname) {
+ this.protocolClassname = protocolClassname;
+ }
+
+ public void onStart() {
+ VSProtocol protocol = process.getProtocolObject(protocolClassname);
+
+ if (isClientProtocol)
+ protocol.isClient(isProtocolActivation);
+
+ else
+ protocol.isServer(isProtocolActivation);
+
+ StringBuffer buffer = new StringBuffer();
+ buffer.append(VSRegisteredEvents.getShortname(protocolClassname));
+ buffer.append(" ");
+ buffer.append(isClientProtocol
+ ? prefs.getString("lang.client") : prefs.getString("lang.server"));
+ buffer.append(" ");
+ buffer.append(isProtocolActivation
+ ? prefs.getString("lang.activated") : prefs.getString("lang.deactivated"));
+ logg(buffer.toString());
+ }
+}