IMessage Interface
public interface IMessage
Representa a mensagem trocada entre Barramento de Serviço do Azure e seus clientes.
Resumo do método
Modificador e tipo | Método e descrição |
---|---|
abstract IMessage |
createCopy()
Cria uma cópia superficial dessa mensagem. |
abstract byte[] |
getBody()
Preterido
O corpo da mensagem não precisa apenas de uma matriz de bytes. Substituído por getMessageBody()
Obtém o corpo dessa mensagem como uma matriz de bytes. |
abstract String |
getContentType()
Obtém o tipo de conteúdo desta mensagem. |
abstract String |
getCorrelationId()
Obtém um identificador de correlação. |
abstract String |
getDeadLetterSource()
Obtém o nome da fila ou assinatura na qual essa mensagem foi enfileirada, antes de ser inoperada. |
abstract long |
getDeliveryCount()
Obtém o número de vezes que essa mensagem foi entregue aos clientes. |
abstract Instant |
getEnqueuedTimeUtc()
Obtém o instante em que essa mensagem foi enfileirada em Barramento de Serviço do Azure. |
abstract Instant |
getExpiresAtUtc()
Obtém o instante em que essa mensagem expirará. |
abstract String |
getLabel()
Obtém o rótulo de mensagem específico do aplicativo. |
abstract UUID |
getLockToken()
Obtém o token de bloqueio da mensagem atual. |
abstract Instant |
getLockedUntilUtc()
Obtém o instante em que o bloqueio dessa mensagem expira. |
abstract
Message |
getMessageBody()
Obtém o corpo desta mensagem. |
abstract String |
getMessageId()
Obtém a ID desta mensagem. |
abstract String |
getPartitionKey()
Obtém a chave de partição para enviar uma mensagem para uma entidade particionada. |
abstract Map<String,Object> |
getProperties()
Obtém o mapa das propriedades do aplicativo de usuário desta mensagem. |
abstract String |
getReplyTo()
Obtém o endereço de uma entidade para a qual enviar respostas. |
abstract String |
getReplyToSessionId()
Obtém ou define um identificador de sessão aumentando o getReplyTo() endereço. |
abstract Instant |
getScheduledEnqueueTimeUtc()
Obtém a hora de enfileiramento agendada desta mensagem. |
abstract Instant |
getScheduledEnqueuedTimeUtc()
Preterido
Substituído por getScheduledEnqueueTimeUtc()
Obtém a hora de enfileiramento agendada desta mensagem. |
abstract long |
getSequenceNumber()
Obtém o número exclusivo atribuído a uma mensagem pelo Barramento de Serviço. |
abstract String |
getSessionId()
Obtém o identificador de sessão para uma entidade com reconhecimento de sessão. |
abstract Duration |
getTimeToLive()
Obtém a duração antes que essa mensagem expire. |
abstract String |
getTo()
Obtém o endereço "para". |
abstract String |
getViaPartitionKey()
Obtém a chave de partição para enviar uma mensagem a uma entidade por meio de outra entidade de transferência particionada. |
abstract void |
setBody(byte[] body)
Preterido
O corpo da mensagem não precisa apenas de uma matriz de bytes. Substituído por setMessageBody(MessageBody body)
Define o corpo dessa mensagem como uma matriz de bytes. |
abstract void |
setContentType(String contentType)
Define o tipo de conteúdo desta mensagem. |
abstract void |
setCorrelationId(String correlationId)
Define um identificador de correlação. |
abstract void |
setLabel(String label)
Define um rótulo de mensagem específico do aplicativo. |
abstract void |
setMessageBody(MessageBody body)
Define o corpo desta mensagem. |
abstract void |
setMessageId(String messageId)
Define a ID desta mensagem. |
abstract void |
setPartitionKey(String partitionKey)
Define uma chave de partição para enviar uma mensagem para uma entidade particionada |
abstract void |
setProperties(Map<String,Object> properties)
Define o mapa das propriedades do aplicativo de usuário desta mensagem. |
abstract void |
setReplyTo(String replyTo)
Define o endereço de uma entidade para a qual enviar respostas. |
abstract void |
setReplyToSessionId(String replyToSessionId)
Obtém ou define um identificador de sessão que aumenta o getReplyTo() endereço. |
abstract void |
setScheduledEnqueueTimeUtc(Instant scheduledEnqueueTimeUtc)
Define a hora de enfileiramento agendada desta mensagem. |
abstract void |
setScheduledEnqueuedTimeUtc(Instant scheduledEnqueueTimeUtc)
Preterido
Substituído por setScheduledEnqueueTimeUtc(Instant scheduledEnqueueTimeUtc)
Define a hora de enfileiramento agendada desta mensagem. |
abstract void |
setSessionId(String sessionId)
Define o identificador de sessão para uma entidade com reconhecimento de sessão. |
abstract void |
setTimeToLive(Duration timeToLive)
Define a duração do tempo antes que essa mensagem expire. |
abstract void |
setTo(String to)
Define o endereço "para". |
abstract void |
setViaPartitionKey(String viaPartitionKey)
Define uma chave por meio de partição para enviar uma mensagem para uma entidade de destino por meio de outra entidade particionada |
Detalhes do método
createCopy
public abstract IMessage createCopy()
Cria uma cópia superficial dessa mensagem.
Retornos:
getBody
@Deprecated
public abstract byte[] getBody()
Preterido
Obtém o corpo dessa mensagem como uma matriz de bytes. Cabe aos aplicativos cliente decodificar os bytes.
Retornos:
getContentType
public abstract String getContentType()
Obtém o tipo de conteúdo desta mensagem. Opcionalmente, descreve o conteúdo da mensagem, com um descritor seguindo o formato de RFC2045, Seção 5, por exemplo , "application/json". Observe que o tipo de conteúdo não é igual ao tipo de corpo da mensagem.
Retornos:
getCorrelationId
public abstract String getCorrelationId()
Obtém um identificador de correlação. Permite que um aplicativo especifique um contexto para a mensagem para fins de correlação, por exemplo, refletindo o MessageId de uma mensagem que está sendo respondida.
Retornos:
getDeadLetterSource
public abstract String getDeadLetterSource()
Obtém o nome da fila ou assinatura na qual essa mensagem foi enfileirada, antes de ser inoperada. Esse valor só é definido em mensagens que foram enviadas com mensagens mortas e, posteriormente, encaminhadas automaticamente da fila de mensagens mortas para outra entidade. Indica a entidade na qual a mensagem foi morta. Esta propriedade é somente para leitura.
Retornos:
getDeliveryCount
public abstract long getDeliveryCount()
Obtém o número de vezes que essa mensagem foi entregue aos clientes. A contagem é incrementada quando um bloqueio de mensagem expira ou quando a mensagem é explicitamente abandonada pelo destinatário. Esta propriedade é somente para leitura.
Retornos:
getEnqueuedTimeUtc
public abstract Instant getEnqueuedTimeUtc()
Obtém o instante em que essa mensagem foi enfileirada em Barramento de Serviço do Azure. O instante do UTC no qual a mensagem foi aceita e armazenada na entidade. Para mensagens agendadas, isso reflete a hora em que a mensagem foi ativada. Esse valor pode ser usado como um indicador de tempo de chegada autoritativo e neutro quando o receptor não deseja confiar relógio do remetente. Esta propriedade é somente para leitura.
Retornos:
getExpiresAtUtc
public abstract Instant getExpiresAtUtc()
Obtém o instante em que essa mensagem expirará. O valor é o instante UTC para quando a mensagem está agendada para remoção e não estará mais disponível para recuperação da entidade devido à expiração. A expiração é controlada pela getTimeToLive() propriedade . Essa propriedade é computada de getEnqueuedTimeUtc()+getTimeToLive().
Retornos:
getLabel
public abstract String getLabel()
Obtém o rótulo de mensagem específico do aplicativo. Essa propriedade permite que o aplicativo indique a finalidade da mensagem para o destinatário de maneira padronizada, semelhante a uma linha do assunto de email. A propriedade AMQP mapeada é "subject".
Retornos:
getLockToken
public abstract UUID getLockToken()
Obtém o token de bloqueio da mensagem atual. O token de bloqueio é uma referência ao bloqueio que está sendo mantido pelo agente no modo PEEKLOCK. Os bloqueios são usados para resolver explicitamente as mensagens, conforme explicado na documentação do produto em mais detalhes. O token também pode ser usado para fixar o bloqueio permanentemente por meio da API de Adiamento e, com isso, tirar a mensagem do fluxo de estado de entrega regular. Esta propriedade é somente para leitura.
Retornos:
getLockedUntilUtc
public abstract Instant getLockedUntilUtc()
Obtém o instante em que o bloqueio dessa mensagem expira. Para mensagens recuperadas com um bloqueio (modo de recebimento de bloqueio de pico, não previamente liquidadas) esta propriedade reflete o instante do UTC até que a mensagem seja mantida bloqueada na fila/assinatura. Quando o bloqueio expira, o getDeliveryCount() é incrementado e a mensagem está novamente disponível para recuperação. Esta propriedade é somente para leitura.
Retornos:
getMessageBody
public abstract MessageBody getMessageBody()
Obtém o corpo desta mensagem. Os aplicativos cliente devem extrair o conteúdo da mensagem com base no tipo de corpo.
Retornos:
getMessageId
public abstract String getMessageId()
Obtém a ID desta mensagem. O identificador da mensagem é um valor definido pelo aplicativo que identifica exclusivamente a mensagem e seu payload. O identificador é uma cadeia de caracteres de forma livre e pode refletir um GUID ou um identificador derivado do contexto do aplicativo. Se habilitado, o recurso de detecção duplicada identifica e remove o segundo e mais envios de mensagens com a mesma MessageId.
Retornos:
getPartitionKey
public abstract String getPartitionKey()
Obtém a chave de partição para enviar uma mensagem para uma entidade particionada. Para entidades particionadas, definir esse valor permite a atribuição de mensagens relacionadas à mesma partição interna para que a ordem de sequência de envio esteja registrada corretamente. A partição é escolhida por uma função de hash sobre esse valor e não pode ser escolhida diretamente. Para entidades com reconhecimento de sessão, a getSessionId() propriedade substitui esse valor.
Retornos:
getProperties
public abstract Map
Obtém o mapa das propriedades do aplicativo de usuário desta mensagem. Os aplicativos cliente podem definir propriedades do usuário (cabeçalhos) na mensagem usando este mapa.
Retornos:
getReplyTo
public abstract String getReplyTo()
Obtém o endereço de uma entidade para a qual enviar respostas. Esse valor opcional e definido pelo aplicativo é uma maneira padrão de expressar um caminho de resposta para o receptor da mensagem. Quando um remetente espera uma resposta, ele define o valor como o caminho absoluto ou relativo da fila ou do tópico para o qual ele espera que a resposta seja enviada.
Retornos:
getReplyToSessionId
public abstract String getReplyToSessionId()
Obtém ou define um identificador de sessão aumentando o getReplyTo() endereço. Esse valor aumenta a informação ReplyTo e especifica qual SessionId deve ser definido para a resposta quando enviada para a entidade de resposta.
Retornos:
getScheduledEnqueueTimeUtc
public abstract Instant getScheduledEnqueueTimeUtc()
Obtém a hora de enfileiramento agendada desta mensagem. Esse valor é usado para disponibilidade de mensagens atrasadas. A mensagem é adicionada com segurança à fila, mas não é considerada ativa e, portanto, não pode ser recuperada até o horário de enfileiramento agendado. Lembre-se de que a mensagem pode não ser ativada (enfileirada) no instante exato determinado; o tempo real de ativação depende da carga de trabalho da fila e do estado dela.
Retornos:
getScheduledEnqueuedTimeUtc
@Deprecated
public abstract Instant getScheduledEnqueuedTimeUtc()
Preterido
Obtém a hora de enfileiramento agendada desta mensagem. Esse valor é usado para disponibilidade de mensagens atrasadas. A mensagem é adicionada com segurança à fila, mas não é considerada ativa e, portanto, não pode ser recuperada até o horário de enfileiramento agendado. Lembre-se de que a mensagem pode não ser ativada (enfileirada) no instante exato determinado; o tempo real de ativação depende da carga de trabalho da fila e do estado dela.
Retornos:
getSequenceNumber
public abstract long getSequenceNumber()
Obtém o número exclusivo atribuído a uma mensagem pelo Barramento de Serviço. O número de sequência é um inteiro de 64 bits atribuído a uma mensagem conforme ela é aceita e armazenada pelo agente e por funções como seu identificador verdadeiro. Para entidades particionadas, os 16 bits de nível mais alto refletem o identificador da partição. Os números de sequência aumentam de forma monotônica e não têm intervalo. Eles passam para 0 quando o intervalo de 48 a 64 bits é esgotado. Esta propriedade é somente para leitura.
Retornos:
getSessionId
public abstract String getSessionId()
Obtém o identificador de sessão para uma entidade com reconhecimento de sessão. Para entidades com reconhecimento de sessão, esse valor definido pelo aplicativo especifica a afiliação de sessão da mensagem. As mensagens com o mesmo identificador de sessão estão sujeitas ao bloqueio de resumo e permitem a demultiplexação e o processamento na ordem exata. Para entidades sem reconhecimento de sessão, esse valor é ignorado.
Retornos:
getTimeToLive
public abstract Duration getTimeToLive()
Obtém a duração antes que essa mensagem expire. Esse valor é a duração relativa após a qual a mensagem expira, começando do instante em que a mensagem foi aceita e armazenada pelo agente, conforme capturado em getEnqueuedTimeUtc(). Quando não definido explicitamente, o valor presumido é o defaultTimeToLive definido para a respectiva fila ou tópico. Um valor TimeToLive no nível da mensagem não pode ser maior do que a configuração DefaultTimeToLive da entidade e será ajustado silenciosamente se for maior.
Retornos:
getTo
public abstract String getTo()
Obtém o endereço "para".
Retornos:
getViaPartitionKey
public abstract String getViaPartitionKey()
Obtém a chave de partição para enviar uma mensagem a uma entidade por meio de outra entidade de transferência particionada. Se uma mensagem for enviada por meio de uma fila de transferência no escopo de uma transação, esse valor selecionará a partição da fila de transferência: isso é funcionalmente equivalente a getPartitionKey() e garante que as mensagens sejam mantidas juntas e em ordem à medida que são transferidas.
Retornos:
setBody
@Deprecated
public abstract void setBody(byte[] body)
Preterido
Define o corpo dessa mensagem como uma matriz de bytes.
Parâmetros:
setContentType
public abstract void setContentType(String contentType)
Define o tipo de conteúdo desta mensagem.
Parâmetros:
setCorrelationId
public abstract void setCorrelationId(String correlationId)
Define um identificador de correlação.
Parâmetros:
setLabel
public abstract void setLabel(String label)
Define um rótulo de mensagem específico do aplicativo.
Parâmetros:
setMessageBody
public abstract void setMessageBody(MessageBody body)
Define o corpo desta mensagem.
Parâmetros:
setMessageId
public abstract void setMessageId(String messageId)
Define a ID desta mensagem.
Parâmetros:
setPartitionKey
public abstract void setPartitionKey(String partitionKey)
Define uma chave de partição para enviar uma mensagem para uma entidade particionada
Parâmetros:
setProperties
public abstract void setProperties(Map
Define o mapa das propriedades do aplicativo de usuário desta mensagem. Os aplicativos cliente podem definir as propriedades do usuário na mensagem usando este mapa.
Parâmetros:
setReplyTo
public abstract void setReplyTo(String replyTo)
Define o endereço de uma entidade para a qual enviar respostas.
Parâmetros:
setReplyToSessionId
public abstract void setReplyToSessionId(String replyToSessionId)
Obtém ou define um identificador de sessão que aumenta o getReplyTo() endereço.
Parâmetros:
setScheduledEnqueueTimeUtc
public abstract void setScheduledEnqueueTimeUtc(Instant scheduledEnqueueTimeUtc)
Define a hora de enfileiramento agendada desta mensagem.
Parâmetros:
setScheduledEnqueuedTimeUtc
@Deprecated
public abstract void setScheduledEnqueuedTimeUtc(Instant scheduledEnqueueTimeUtc)
Preterido
Define a hora de enfileiramento agendada desta mensagem.
Parâmetros:
setSessionId
public abstract void setSessionId(String sessionId)
Define o identificador de sessão para uma entidade com reconhecimento de sessão.
Parâmetros:
setTimeToLive
public abstract void setTimeToLive(Duration timeToLive)
Define a duração do tempo antes que essa mensagem expire.
Parâmetros:
setTo
public abstract void setTo(String to)
Define o endereço "para". Essa propriedade é reservada para uso futuro em cenários de roteamento e é atualmente ignorada pelo próprio agente. Os aplicativos podem usar esse valor em cenários de encadeamento de encaminhamento automático controlado por regras para indicar o destino lógico pretendido da mensagem.
Parâmetros:
setViaPartitionKey
public abstract void setViaPartitionKey(String viaPartitionKey)
Define uma chave por meio de partição para enviar uma mensagem para uma entidade de destino por meio de outra entidade particionada
Parâmetros:
Aplica-se a
Azure SDK for Java