Class Data

  • All Implemented Interfaces:
    Section<byte[]>

    public final class Data
    extends java.lang.Object
    implements Section<byte[]>
    • Field Detail

      • DESCRIPTOR_CODE

        public static final UnsignedLong DESCRIPTOR_CODE
      • DESCRIPTOR_SYMBOL

        public static final Symbol DESCRIPTOR_SYMBOL
    • Constructor Detail

      • Data

        public Data​(Binary binary)
      • Data

        public Data​(byte[] value)
      • Data

        public Data​(byte[] value,
                    int offset,
                    int length)
    • Method Detail

      • copy

        public Data copy()
      • getBinary

        public Binary getBinary()
      • getBuffer

        public ProtonBuffer getBuffer()
        Returns the ProtonBuffer that contains the bytes carried in the Data section. If the section carries no bytes then this method returns null. This method allows the Data section to be considered a carrier of ProtonBuffer types instead of the Binary value it will encode as part of its body and avoids creation of a Binary object when one is not needed. If a Binary instance is required then calling the getBinary() method will create an instance that wraps the internal ProtonBuffer.
        Returns:
        the ProtonBuffer that back this Data section.
      • getValue

        public byte[] getValue()
        Returns the backing array for this Data Section copying the contents into a new array instance if the backing array in the contained Binary is a subsequence of a larger referenced array instance.
        Specified by:
        getValue in interface Section<byte[]>
        Returns:
        the byte array view of this Data Section Binary payload.
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object