Class DefaultMessage

java.lang.Object
org.citrusframework.message.DefaultMessage
All Implemented Interfaces:
Serializable, org.citrusframework.message.Message
Direct Known Subclasses:
RawMessage, ZipMessage

public class DefaultMessage extends Object implements org.citrusframework.message.Message
Default message implementation holds message payload and message headers. Also provides access methods for special header elements such as unique message id and creation timestamp.
Since:
2.0
See Also:
  • Constructor Details

    • DefaultMessage

      public DefaultMessage()
      Empty constructor initializing with empty message payload.
    • DefaultMessage

      public DefaultMessage(org.citrusframework.message.Message message)
      Constructs copy of given message.
      Parameters:
      message -
    • DefaultMessage

      public DefaultMessage(org.citrusframework.message.Message message, boolean forceCitrusHeaderUpdate)
      Constructs a new DefaultMessage based on the provided Message object, with an option to force Citrus header update. If forceCitrusHeaderUpdate is true, it overwrites existing values for ID and TIMESTAMP headers with new values. If forceCitrusHeaderUpdate is false, it updates the ID and TIMESTAMP headers only if they are absent in the provided headers.
      Parameters:
      message - the Message object to copy
      forceCitrusHeaderUpdate - flag indicating whether to force Citrus header update
    • DefaultMessage

      public DefaultMessage(Object payload)
      Default constructor using just message payload.
      Parameters:
      payload -
    • DefaultMessage

      public DefaultMessage(Object payload, Map<String,Object> headers)
      Default constructor using payload and headers.
      Parameters:
      payload -
      headers -
  • Method Details

    • getId

      public String getId()
      Specified by:
      getId in interface org.citrusframework.message.Message
    • getTimestamp

      public Long getTimestamp()
      Gets the message creation timestamp;
      Returns:
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • setHeader

      public DefaultMessage setHeader(String headerName, Object headerValue)
      Specified by:
      setHeader in interface org.citrusframework.message.Message
    • getHeader

      public Object getHeader(String headerName)
      Specified by:
      getHeader in interface org.citrusframework.message.Message
    • removeHeader

      public void removeHeader(String headerName)
      Specified by:
      removeHeader in interface org.citrusframework.message.Message
    • addHeaderData

      public DefaultMessage addHeaderData(String headerData)
      Specified by:
      addHeaderData in interface org.citrusframework.message.Message
    • getHeaderData

      public List<String> getHeaderData()
      Specified by:
      getHeaderData in interface org.citrusframework.message.Message
    • getPayload

      public <T> T getPayload(Class<T> type)
      Specified by:
      getPayload in interface org.citrusframework.message.Message
    • getPayload

      public Object getPayload()
      Specified by:
      getPayload in interface org.citrusframework.message.Message
    • setPayload

      public DefaultMessage setPayload(Object payload)
      Specified by:
      setPayload in interface org.citrusframework.message.Message
    • getHeaders

      public Map<String,Object> getHeaders()
      Specified by:
      getHeaders in interface org.citrusframework.message.Message
    • setName

      public DefaultMessage setName(String name)
      Specified by:
      setName in interface org.citrusframework.message.Message
    • getName

      public String getName()
      Specified by:
      getName in interface org.citrusframework.message.Message
    • setType

      public DefaultMessage setType(org.citrusframework.message.MessageType type)
      Specifies the message type.
      Parameters:
      type - one of the default message types.
    • setType

      public DefaultMessage setType(String type)
      Specified by:
      setType in interface org.citrusframework.message.Message
    • getType

      public String getType()
      Specified by:
      getType in interface org.citrusframework.message.Message