Class MessageProperties

java.lang.Object
org.springframework.amqp.core.MessageProperties
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
StreamMessageProperties

public class MessageProperties extends Object implements Serializable
Message Properties for an AMQP message.
Author:
Mark Fisher, Mark Pollack, Gary Russell, Dmitry Chernyshov, Artem Bilan, Csaba Soti, Raylax Grey
See Also:
  • Field Details

  • Constructor Details

    • MessageProperties

      public MessageProperties()
  • Method Details

    • setHeader

      public void setHeader(String key, Object value)
    • setHeaders

      public void setHeaders(Map<String,Object> headers)
      Set headers.
      Parameters:
      headers - the headers.
      Since:
      2.4.7
    • getHeader

      public <T> T getHeader(String headerName)
      Typed getter for a header.
      Type Parameters:
      T - the type.
      Parameters:
      headerName - the header name.
      Returns:
      the header value
      Since:
      2.2
    • getHeaders

      public Map<String,Object> getHeaders()
    • setTimestamp

      public void setTimestamp(Date timestamp)
    • getTimestamp

      public Date getTimestamp()
    • setMessageId

      public void setMessageId(String messageId)
    • getMessageId

      public String getMessageId()
    • setUserId

      public void setUserId(String userId)
    • getUserId

      public String getUserId()
    • getReceivedUserId

      public String getReceivedUserId()
      Return the user id from an incoming message.
      Returns:
      the user id.
      Since:
      1.6
    • setReceivedUserId

      public void setReceivedUserId(String receivedUserId)
    • setAppId

      public void setAppId(String appId)
    • getAppId

      public String getAppId()
    • setClusterId

      public void setClusterId(String clusterId)
    • getClusterId

      public String getClusterId()
    • setType

      public void setType(String type)
    • getType

      public String getType()
    • setCorrelationId

      public void setCorrelationId(String correlationId)
      Set the correlation id.
      Parameters:
      correlationId - the id.
    • getCorrelationId

      public String getCorrelationId()
      Get the correlation id.
      Returns:
      the id.
    • setReplyTo

      public void setReplyTo(String replyTo)
    • getReplyTo

      public String getReplyTo()
    • setReplyToAddress

      public void setReplyToAddress(Address replyTo)
    • getReplyToAddress

      public Address getReplyToAddress()
    • setContentType

      public void setContentType(String contentType)
    • getContentType

      public String getContentType()
    • setContentEncoding

      public void setContentEncoding(String contentEncoding)
    • getContentEncoding

      public String getContentEncoding()
    • setContentLength

      public void setContentLength(long contentLength)
    • getContentLength

      public long getContentLength()
    • isContentLengthSet

      protected final boolean isContentLengthSet()
    • setDeliveryMode

      public void setDeliveryMode(MessageDeliveryMode deliveryMode)
    • getDeliveryMode

      public MessageDeliveryMode getDeliveryMode()
    • getReceivedDeliveryMode

      public MessageDeliveryMode getReceivedDeliveryMode()
    • setReceivedDeliveryMode

      public void setReceivedDeliveryMode(MessageDeliveryMode receivedDeliveryMode)
    • setExpiration

      public void setExpiration(String expiration)
      Set the message expiration. This is a String property per the AMQP 0.9.1 spec. For RabbitMQ, this is a String representation of the message time to live in milliseconds.
      Parameters:
      expiration - the expiration.
    • getExpiration

      public String getExpiration()
      Get the message expiration. This is a String property per the AMQP 0.9.1 spec. For RabbitMQ, this is a String representation of the message time to live in milliseconds.
      Returns:
      the expiration.
    • setPriority

      public void setPriority(Integer priority)
    • getPriority

      public Integer getPriority()
    • setReceivedExchange

      public void setReceivedExchange(String receivedExchange)
    • getReceivedExchange

      public String getReceivedExchange()
    • setReceivedRoutingKey

      public void setReceivedRoutingKey(String receivedRoutingKey)
    • getReceivedRoutingKey

      public String getReceivedRoutingKey()
    • getReceivedDelay

      @Deprecated(since="3.1.2", forRemoval=true) public Integer getReceivedDelay()
      Deprecated, for removal: This API element is subject to removal in a future version.
      When a delayed message exchange is used the x-delay header on a received message contains the delay.
      Returns:
      the received delay.
      Since:
      1.6
      See Also:
    • setReceivedDelay

      @Deprecated(since="3.1.2", forRemoval=true) public void setReceivedDelay(Integer receivedDelay)
      Deprecated, for removal: This API element is subject to removal in a future version.
      When a delayed message exchange is used the x-delay header on a received message contains the delay.
      Parameters:
      receivedDelay - the received delay.
      Since:
      1.6
    • getReceivedDelayLong

      public Long getReceivedDelayLong()
      When a delayed message exchange is used the x-delay header on a received message contains the delay.
      Returns:
      the received delay.
      Since:
      3.1.2
      See Also:
    • setReceivedDelayLong

      public void setReceivedDelayLong(Long receivedDelay)
      When a delayed message exchange is used the x-delay header on a received message contains the delay.
      Parameters:
      receivedDelay - the received delay.
      Since:
      3.1.2
      See Also:
    • setRedelivered

      public void setRedelivered(Boolean redelivered)
    • isRedelivered

      public Boolean isRedelivered()
    • getRedelivered

      public Boolean getRedelivered()
    • setDeliveryTag

      public void setDeliveryTag(long deliveryTag)
    • getDeliveryTag

      public long getDeliveryTag()
    • isDeliveryTagSet

      protected final boolean isDeliveryTagSet()
    • setMessageCount

      public void setMessageCount(Integer messageCount)
      Set the message count.
      Parameters:
      messageCount - the count
      See Also:
    • getMessageCount

      public Integer getMessageCount()
      Return the server's most recent estimate of the number of messages remaining on the queue. Only applies to messages retrieved via basicGet.
      Returns:
      the count.
    • getConsumerTag

      public String getConsumerTag()
    • setConsumerTag

      public void setConsumerTag(String consumerTag)
    • getConsumerQueue

      public String getConsumerQueue()
    • setConsumerQueue

      public void setConsumerQueue(String consumerQueue)
    • getDelay

      @Deprecated(since="3.1.2", forRemoval=true) public Integer getDelay()
      Deprecated, for removal: This API element is subject to removal in a future version.
      in favor of getDelayLong()
      The x-delay header (outbound).
      Returns:
      the delay.
      Since:
      1.6
      See Also:
    • setDelay

      @Deprecated(since="3.1.2", forRemoval=true) public void setDelay(Integer delay)
      Deprecated, for removal: This API element is subject to removal in a future version.
      in favor of setDelayLong(Long)
      Set the x-delay header.
      Parameters:
      delay - the delay.
      Since:
      1.6
    • getDelayLong

      public Long getDelayLong()
      Get the x-delay header long value.
      Returns:
      the delay.
      Since:
      3.1.2
    • setDelayLong

      public void setDelayLong(Long delay)
      Set the x-delay header to a long value.
      Parameters:
      delay - the delay.
      Since:
      3.1.2
    • isFinalRetryForMessageWithNoId

      public boolean isFinalRetryForMessageWithNoId()
    • setFinalRetryForMessageWithNoId

      public void setFinalRetryForMessageWithNoId(boolean finalRetryForMessageWithNoId)
    • getPublishSequenceNumber

      public long getPublishSequenceNumber()
      Return the publish sequence number if publisher confirms are enabled; set by the template.
      Returns:
      the sequence number.
      Since:
      2.1
    • setPublishSequenceNumber

      public void setPublishSequenceNumber(long publishSequenceNumber)
      Set the publish sequence number, if publisher confirms are enabled; set by the template.
      Parameters:
      publishSequenceNumber - the sequence number.
      Since:
      2.1
    • getInferredArgumentType

      public Type getInferredArgumentType()
      The inferred target argument type when using a method-level @RabbitListener.
      Returns:
      the type.
      Since:
      1.6
    • setInferredArgumentType

      public void setInferredArgumentType(Type inferredArgumentType)
      Set the inferred target argument type when using a method-level @RabbitListener.
      Parameters:
      inferredArgumentType - the type.
      Since:
      1.6
    • getTargetMethod

      public Method getTargetMethod()
      The target method when using a @RabbitListener.
      Returns:
      the method.
      Since:
      1.6
    • setTargetMethod

      public void setTargetMethod(Method targetMethod)
      Set the target method when using a @RabbitListener.
      Parameters:
      targetMethod - the target method.
      Since:
      1.6
    • getTargetBean

      public Object getTargetBean()
      The target bean when using @RabbitListener.
      Returns:
      the bean.
      Since:
      1.6
    • setTargetBean

      public void setTargetBean(Object targetBean)
      Set the target bean when using @RabbitListener.
      Parameters:
      targetBean - the bean.
      Since:
      1.6
    • isLastInBatch

      public boolean isLastInBatch()
      When true; the message having these properties is the last message from a batch.
      Returns:
      true for the last message.
      Since:
      2.2
    • setLastInBatch

      public void setLastInBatch(boolean lastInBatch)
      Set to true to indicate these properties are for the last message in a batch.
      Parameters:
      lastInBatch - true for the last.
      Since:
      2.2
    • isProjectionUsed

      public boolean isProjectionUsed()
      Get an internal flag used to communicate that conversion used projection; always false at the application level.
      Returns:
      true if projection was used.
      Since:
      2.2.20
    • setProjectionUsed

      public void setProjectionUsed(boolean projectionUsed)
      Set an internal flag used to communicate that conversion used projection; always false at the application level.
      Parameters:
      projectionUsed - true for projection.
      Since:
      2.2.20
    • getXDeathHeader

      public List<Map<String,?>> getXDeathHeader()
      Return the x-death header.
      Returns:
      the header.
    • hashCode

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

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

      public String toString()
      Overrides:
      toString in class Object