Class MetadataRequestMessage

  • All Implemented Interfaces:
    Serializable, Message

    public class MetadataRequestMessage
    extends Object
    implements Message
    As DiscoveryCustomMessage messages are delivered to client nodes asynchronously it is possible that server nodes are allowed to send to clients some BinaryObjects clients don't have metadata for. When client detects obsolete metadata (by checking if current version of metadata has schemaId) it requests up-to-date metadata using communication SPI. API to make a request is provided by BinaryMetadataTransport.requestUpToDateMetadata(int) method.
    See Also:
    Serialized Form
    • Constructor Detail

      • MetadataRequestMessage

        public MetadataRequestMessage()
        Default constructor.
    • Method Detail

      • writeTo

        public boolean writeTo​(ByteBuffer buf,
                               MessageWriter writer)
        Writes this message to provided byte buffer.
        Specified by:
        writeTo in interface Message
        Parameters:
        buf - Byte buffer.
        writer - Writer.
        Returns:
        Whether message was fully written.
      • readFrom

        public boolean readFrom​(ByteBuffer buf,
                                MessageReader reader)
        Reads this message from provided byte buffer.
        Specified by:
        readFrom in interface Message
        Parameters:
        buf - Byte buffer.
        reader - Reader.
        Returns:
        Whether message was fully read.
      • directType

        public short directType()
        Gets message type.
        Specified by:
        directType in interface Message
        Returns:
        Message type.
      • fieldsCount

        public byte fieldsCount()
        Gets fields count.
        Specified by:
        fieldsCount in interface Message
        Returns:
        Fields count.
      • onAckReceived

        public void onAckReceived()
        Method called when ack message received.
        Specified by:
        onAckReceived in interface Message
      • typeId

        public int typeId()