diff options
Diffstat (limited to 'src/main/java/core/VSMessage.java')
| -rw-r--r-- | src/main/java/core/VSMessage.java | 50 |
1 files changed, 29 insertions, 21 deletions
diff --git a/src/main/java/core/VSMessage.java b/src/main/java/core/VSMessage.java index a7b48e6..130bd53 100644 --- a/src/main/java/core/VSMessage.java +++ b/src/main/java/core/VSMessage.java @@ -79,64 +79,71 @@ public class VSMessage extends VSPrefs { } /** - * Gets the protocol name of the message. + * Gets the human-readable protocol name associated with this message. + * The name is retrieved from the registered events based on the protocol classname. * - * @return The protocol name of the message. + * @return the localized protocol name, or null if not found */ public String getName() { return VSRegisteredEvents.getNameByClassname(getProtocolClassname()); } /** - * Gets the protocol classname. + * Gets the fully qualified classname of the protocol that created this message. + * This is used to identify which protocol handler should process the message. * - * @return The protocol classname of the message. + * @return the protocol's full classname (e.g., "protocols.implementations.VSPingPongProtocol") */ public String getProtocolClassname() { return protocolClassname; } /** - * Gets the message id. + * Gets the unique identifier for this message. + * Each message is assigned a sequential ID when created. * - * @return The id of the message. + * @return the unique message ID */ public long getMessageID() { return messageID; } /** - * Gets a reference of the sending process. + * Gets the process that sent this message. + * This can be used to identify the sender and access sender information. * - * @return The process which sent this message. + * @return the process that created and sent this message */ public VSAbstractProcess getSendingProcess() { return sendingProcess; } /** - * Gets the lamport time. + * Gets the Lamport timestamp of the sending process at the time this message was sent. + * This is used for logical ordering of events in the distributed system. * - * @return The lamport time of the sending process. + * @return the sender's Lamport time when the message was created */ public long getLamportTime() { return lamportTime; } /** - * Gets the vector time. + * Gets the vector clock of the sending process at the time this message was sent. + * This is used for determining causality between events in the distributed system. * - * @return The vector time of the sending process. + * @return a copy of the sender's vector clock when the message was created */ public VSVectorTime getVectorTime() { return vectorTime; } /** - * Checks if the message has been sent by a server or a client. + * Checks whether this message was sent by a server or client protocol instance. + * This distinction is important for protocols that have different behavior + * for server and client roles. * - * @return true, if the message has been sent by a server. false, if the - * message has been sent by a client. + * @return true if sent by a server protocol instance, false if sent by a client */ public boolean isServerMessage() { return isServerMessage; @@ -160,20 +167,21 @@ public class VSMessage extends VSPrefs { } /** - * Extended string representation of the message object. + * Returns an extended string representation of this message. + * This includes the basic message information plus all stored preferences/data. * - * @return Extended string representation of the message object. + * @return detailed string representation including ID, protocol, and all message data */ public String toStringFull() { return toString() + "; " + super.toString(); } /** - * Compares two messages. + * Compares this message with another message for equality. + * Two messages are considered equal if they have the same message ID. * - * @param message The message to compare with. - * - * @return true, if the messages have the same id. Otherwise false. + * @param message the message to compare with this message + * @return true if both messages have the same ID, false otherwise */ public boolean equals(VSMessage message) { return messageID == message.getMessageID(); |
