Class AbstractNotificationMessage
java.lang.Object
uk.ac.manchester.spinnaker.messages.notification.AbstractNotificationMessage
- All Implemented Interfaces:
NotificationMessage,SerializableMessage
- Direct Known Subclasses:
DatabaseConfirmation,PauseStop,StartResume
A base class for concrete notification messages.
- Author:
- Donal Fellows
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected -
Method Summary
Modifier and TypeMethodDescriptionvoidaddToBuffer(ByteBuffer buffer) Writes this message into the given buffer as a contiguous range of bytes.static NotificationMessagebuild(ByteBuffer buffer) Create a notification message instance from a buffer holding a received message.
-
Constructor Details
-
AbstractNotificationMessage
- Parameters:
buffer- Where to read the command code from. The command code will be in the first two bytes; this constructor advances the buffer position.
-
AbstractNotificationMessage
- Parameters:
command- The command code of the message.
-
-
Method Details
-
addToBuffer
Description copied from interface:SerializableMessageWrites this message into the given buffer as a contiguous range of bytes. This is so that a message can be sent. Implementors may assume that the buffer has been configured to be little-endian and that its position is at the point where they should begin writing. Once it has finished, the position should be immediately after the last byte written by this method.Calling this method should not update the internal state of the message. It should be possible to add the message to multiple buffers without special precautions by the caller.
- Specified by:
addToBufferin interfaceSerializableMessage- Parameters:
buffer- The buffer to write into.
-
build
Create a notification message instance from a buffer holding a received message.- Parameters:
buffer- The received message data buffer.- Returns:
- The parsed message.
- Throws:
UnsupportedOperationException- If the message is not understood.
-