summaryrefslogtreecommitdiff
path: root/sources/core/VSMessage.java
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2008-05-15 23:08:33 +0000
committerPaul Buetow <paul@buetow.org>2008-05-15 23:08:33 +0000
commitd4c1ddcc90c1e2e8660598fc36b3772d2bff6816 (patch)
tree28a0afc255e42f92adbca0d102e785301bc43a58 /sources/core/VSMessage.java
parent61599471a5978c1521b9c89c044ac2ce9a88c398 (diff)
1 Moved the stuff to trunk!
Diffstat (limited to 'sources/core/VSMessage.java')
-rw-r--r--sources/core/VSMessage.java56
1 files changed, 56 insertions, 0 deletions
diff --git a/sources/core/VSMessage.java b/sources/core/VSMessage.java
new file mode 100644
index 0000000..b3c1d31
--- /dev/null
+++ b/sources/core/VSMessage.java
@@ -0,0 +1,56 @@
+package core;
+
+import prefs.VSPrefs;
+import protocols.*;
+import events.VSEvent;
+
+public class VSMessage extends VSPrefs implements VSEvent {
+ private String protocolClassname;
+ private VSProcess sendingProcess;
+ private long messageID;
+ private static long messageCounter;
+ private long lamportTime;
+
+ public VSMessage(String protocolClassname) {
+ this.protocolClassname = protocolClassname;
+ this.messageID = ++messageCounter;
+ }
+
+ public String getProtocolName() {
+ return RegisteredProtocols.getProtocolName(getProtocolClassname());
+ }
+
+ public String getProtocolClassname() {
+ return protocolClassname;
+ }
+
+ public long getMessageID() {
+ return messageID;
+ }
+
+ public void setSendingProcess(VSProcess sendingProcess) {
+ this.sendingProcess = sendingProcess;
+ lamportTime = sendingProcess.getLamportTime();
+ }
+
+ public VSProcess getSendingProcess() {
+ return sendingProcess;
+ }
+
+ public long getLamportTime() {
+ return lamportTime;
+ }
+
+ public String toString() {
+ return "ID: " + messageID;
+ }
+
+ public String toStringFull() {
+ return toString() + "; " + super.toString();
+ }
+
+ public boolean equals(VSMessage message) {
+ return messageID == message.getMessageID();
+ }
+}
+