Class MessageAttributeValue

java.lang.Object
com.amazonaws.services.sns.model.MessageAttributeValue
All Implemented Interfaces:
Serializable, Cloneable

public class MessageAttributeValue extends Object implements Serializable, Cloneable

The user-specified message attribute value. For string data types, the value attribute has the same restrictions on the content as the message body. For more information, see Publish.

Name, type, and value must not be empty or null. In addition, the message body should not be empty or null. All parts of the message attribute, including name, type, and value, are included in the message size restriction, which is currently 256 KB (262,144 bytes). For more information, see Using Amazon SNS Message Attributes.

See Also:
  • Constructor Details

    • MessageAttributeValue

      public MessageAttributeValue()
  • Method Details

    • setDataType

      public void setDataType(String dataType)

      Amazon SNS supports the following logical data types: String, Number, and Binary. For more information, see Message Attribute Data Types.

      Parameters:
      dataType - Amazon SNS supports the following logical data types: String, Number, and Binary. For more information, see Message Attribute Data Types.
    • getDataType

      public String getDataType()

      Amazon SNS supports the following logical data types: String, Number, and Binary. For more information, see Message Attribute Data Types.

      Returns:
      Amazon SNS supports the following logical data types: String, Number, and Binary. For more information, see Message Attribute Data Types.
    • withDataType

      public MessageAttributeValue withDataType(String dataType)

      Amazon SNS supports the following logical data types: String, Number, and Binary. For more information, see Message Attribute Data Types.

      Parameters:
      dataType - Amazon SNS supports the following logical data types: String, Number, and Binary. For more information, see Message Attribute Data Types.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setStringValue

      public void setStringValue(String stringValue)

      Strings are Unicode with UTF8 binary encoding. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.

      Parameters:
      stringValue - Strings are Unicode with UTF8 binary encoding. For a list of code values, see http ://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.
    • getStringValue

      public String getStringValue()

      Strings are Unicode with UTF8 binary encoding. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.

      Returns:
      Strings are Unicode with UTF8 binary encoding. For a list of code values, see http ://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.
    • withStringValue

      public MessageAttributeValue withStringValue(String stringValue)

      Strings are Unicode with UTF8 binary encoding. For a list of code values, see http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.

      Parameters:
      stringValue - Strings are Unicode with UTF8 binary encoding. For a list of code values, see http ://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setBinaryValue

      public void setBinaryValue(ByteBuffer binaryValue)

      Binary type attributes can store any binary data, for example, compressed data, encrypted data, or images.

      AWS SDK for Java performs a Base64 encoding on this field before sending this request to AWS service by default. Users of the SDK should not perform Base64 encoding on this field.

      Warning: ByteBuffers returned by the SDK are mutable. Changes to the content or position of the byte buffer will be seen by all objects that have a reference to this object. It is recommended to call ByteBuffer.duplicate() or ByteBuffer.asReadOnlyBuffer() before using or reading from the buffer. This behavior will be changed in a future major version of the SDK.

      Parameters:
      binaryValue - Binary type attributes can store any binary data, for example, compressed data, encrypted data, or images.
    • getBinaryValue

      public ByteBuffer getBinaryValue()

      Binary type attributes can store any binary data, for example, compressed data, encrypted data, or images.

      ByteBuffers are stateful. Calling their get methods changes their position. We recommend using ByteBuffer.asReadOnlyBuffer() to create a read-only view of the buffer with an independent position, and calling get methods on this rather than directly on the returned ByteBuffer. Doing so will ensure that anyone else using the ByteBuffer will not be affected by changes to the position .

      Returns:
      Binary type attributes can store any binary data, for example, compressed data, encrypted data, or images.
    • withBinaryValue

      public MessageAttributeValue withBinaryValue(ByteBuffer binaryValue)

      Binary type attributes can store any binary data, for example, compressed data, encrypted data, or images.

      Parameters:
      binaryValue - Binary type attributes can store any binary data, for example, compressed data, encrypted data, or images.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • toString

      public String toString()
      Returns a string representation of this object; useful for testing and debugging.
      Overrides:
      toString in class Object
      Returns:
      A string representation of this object.
      See Also:
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • clone

      public MessageAttributeValue clone()
      Overrides:
      clone in class Object