IMessage インターフェイス
public interface IMessage
Azure Service Busとそのクライアントの間で交換されるメッセージを表します。
メソッドの概要
修飾子と型 | メソッドと説明 |
---|---|
abstract IMessage |
createCopy()
このメッセージの簡易コピーを作成します。 |
abstract byte[] |
getBody()
非推奨
メッセージ本文には、バイト配列だけが必要ではありません。 に置き換えられました getMessageBody()
このメッセージの本文をバイト配列として取得します。 |
abstract String |
getContentType()
このメッセージのコンテンツ タイプを取得します。 |
abstract String |
getCorrelationId()
関連付け識別子を取得します。 |
abstract String |
getDeadLetterSource()
メッセージが配信不能になる前に、このメッセージがエンキューされたキューまたはサブスクリプションの名前を取得します。 |
abstract long |
getDeliveryCount()
このメッセージがクライアントに配信された回数を取得します。 |
abstract Instant |
getEnqueuedTimeUtc()
このメッセージがAzure Service Busにエンキューされた瞬間を取得します。 |
abstract Instant |
getExpiresAtUtc()
このメッセージの有効期限が切れる瞬間を取得します。 |
abstract String |
getLabel()
アプリケーション固有のメッセージ ラベルを取得します。 |
abstract UUID |
getLockToken()
現在のメッセージのロック トークンを取得します。 |
abstract Instant |
getLockedUntilUtc()
このメッセージのロックの有効期限が切れる瞬間を取得します。 |
abstract
Message |
getMessageBody()
このメッセージの本文を取得します。 |
abstract String |
getMessageId()
このメッセージの ID を取得します。 |
abstract String |
getPartitionKey()
パーティション分割されたエンティティにメッセージを送信するためのパーティション キーを取得します。 |
abstract Map<String,Object> |
getProperties()
このメッセージのユーザー アプリケーション プロパティのマップを取得します。 |
abstract String |
getReplyTo()
返信を送信するエンティティのアドレスを取得します。 |
abstract String |
getReplyToSessionId()
アドレスを拡張するセッション識別子を getReplyTo() 取得または設定します。 |
abstract Instant |
getScheduledEnqueueTimeUtc()
このメッセージのスケジュールされたエンキュー時間を取得します。 |
abstract Instant |
getScheduledEnqueuedTimeUtc()
非推奨
に置き換えられました getScheduledEnqueueTimeUtc()
このメッセージのスケジュールされたエンキュー時間を取得します。 |
abstract long |
getSequenceNumber()
Service Bus によってメッセージに割り当てられた一意の番号を取得します。 |
abstract String |
getSessionId()
セッション対応エンティティのセッション識別子を取得します。 |
abstract Duration |
getTimeToLive()
このメッセージの有効期限が切れるまでの期間を取得します。 |
abstract String |
getTo()
"宛先" アドレスを取得します。 |
abstract String |
getViaPartitionKey()
別のパーティション分割された転送エンティティを介してエンティティにメッセージを送信するためのパーティション キーを取得します。 |
abstract void |
setBody(byte[] body)
非推奨
メッセージ本文には、バイト配列だけが必要ではありません。 に置き換えられました setMessageBody(MessageBody body)
このメッセージの本文をバイト配列として設定します。 |
abstract void |
setContentType(String contentType)
このメッセージのコンテンツ タイプを設定します。 |
abstract void |
setCorrelationId(String correlationId)
関連付け識別子を設定します。 |
abstract void |
setLabel(String label)
アプリケーション固有のメッセージ ラベルを設定します。 |
abstract void |
setMessageBody(MessageBody body)
このメッセージの本文を設定します。 |
abstract void |
setMessageId(String messageId)
このメッセージの ID を設定します。 |
abstract void |
setPartitionKey(String partitionKey)
パーティション分割されたエンティティにメッセージを送信するためのパーティション キーを設定します |
abstract void |
setProperties(Map<String,Object> properties)
このメッセージのユーザー アプリケーション プロパティのマップを設定します。 |
abstract void |
setReplyTo(String replyTo)
返信を送信するエンティティのアドレスを設定します。 |
abstract void |
setReplyToSessionId(String replyToSessionId)
アドレスを拡張するセッション識別子を getReplyTo() 取得または設定します。 |
abstract void |
setScheduledEnqueueTimeUtc(Instant scheduledEnqueueTimeUtc)
このメッセージのスケジュールされたエンキュー時間を設定します。 |
abstract void |
setScheduledEnqueuedTimeUtc(Instant scheduledEnqueueTimeUtc)
非推奨 このメッセージのスケジュールされたエンキュー時間を設定します。 |
abstract void |
setSessionId(String sessionId)
セッション対応エンティティのセッション識別子を設定します。 |
abstract void |
setTimeToLive(Duration timeToLive)
このメッセージの有効期限が切れるまでの期間を設定します。 |
abstract void |
setTo(String to)
"to" アドレスを設定します。 |
abstract void |
setViaPartitionKey(String viaPartitionKey)
別のパーティション分割されたエンティティを介して宛先エンティティにメッセージを送信するための via-partition キーを設定します |
メソッドの詳細
createCopy
public abstract IMessage createCopy()
このメッセージの簡易コピーを作成します。
戻り値:
getBody
@Deprecated
public abstract byte[] getBody()
非推奨
このメッセージの本文をバイト配列として取得します。 バイトをデコードするのはクライアント アプリケーション次第です。
戻り値:
getContentType
public abstract String getContentType()
このメッセージのコンテンツ タイプを取得します。 必要に応じて、メッセージのペイロードを記述します。記述子は、"application/json" など、RFC2045セクション 5 の形式に従います。 コンテンツ タイプはメッセージ本文の種類と同じではないことに注意してください。
戻り値:
getCorrelationId
public abstract String getCorrelationId()
関連付け識別子を取得します。 相関関係のために、アプリケーションがメッセージのコンテキストを指定できるようにします (たとえば、応答されるメッセージの MessageId を示すなど)。
戻り値:
getDeadLetterSource
public abstract String getDeadLetterSource()
メッセージが配信不能になる前に、このメッセージがエンキューされたキューまたはサブスクリプションの名前を取得します。 この値は、配信不能になり、その後配信不能キューから別のエンティティに自動転送されたメッセージでのみ設定されます。 メッセージが配信不能になったエンティティを示します。 このプロパティは読み取り専用です。
戻り値:
getDeliveryCount
public abstract long getDeliveryCount()
このメッセージがクライアントに配信された回数を取得します。 このカウントは、メッセージのロックが有効期限切れになった場合、またはメッセージが受信者によって明示的に破棄された場合に増分されます。 このプロパティは読み取り専用です。
戻り値:
getEnqueuedTimeUtc
public abstract Instant getEnqueuedTimeUtc()
このメッセージがAzure Service Busにエンキューされた瞬間を取得します。 メッセージがエンティティで受け入れおよび格納された UTC 時刻。 スケジュールされたメッセージの場合、メッセージがアクティブ化された時刻が反映されます。 この値は、受信者が送信者の時計を信頼したくない場合に、信頼できる中立的な到着時間インジケーターとして使用できます。 このプロパティは読み取り専用です。
戻り値:
getExpiresAtUtc
public abstract Instant getExpiresAtUtc()
このメッセージの有効期限が切れる瞬間を取得します。 値は、メッセージの削除がスケジュールされ、有効期限が切れたためにエンティティから取得できなくなる場合の UTC の瞬間です。 有効期限は、 プロパティによって制御されます getTimeToLive() 。 このプロパティは、 から getEnqueuedTimeUtc()+getTimeToLive()計算されます。
戻り値:
getLabel
public abstract String getLabel()
アプリケーション固有のメッセージ ラベルを取得します。 このプロパティを使用すると、アプリケーションは、電子メールの件名行と同様に標準化された方法でメッセージの目的を受信者に示すことができます。 マップされた AMQP プロパティは "subject" です。
戻り値:
getLockToken
public abstract UUID getLockToken()
現在のメッセージのロック トークンを取得します。 ロック トークンは、PEEKLOCK モードでブローカーによって保持されているロックへの参照です。 ロックは、 製品ドキュメントで詳しく説明されているように、メッセージを明示的に解決するために使用されます。 また、このトークンを使用して 、Deferral API を介してロックを永続的にピン留めし、それを使用してメッセージを通常の配信状態フローから取り出すこともできます。 このプロパティは読み取り専用です。
戻り値:
getLockedUntilUtc
public abstract Instant getLockedUntilUtc()
このメッセージのロックの有効期限が切れる瞬間を取得します。 このプロパティは、ロックされた状態 (事前設定ではなくピーク ロック受信モード) で取得されたメッセージの場合に、メッセージがキュー/サブスクリプション内でロック状態に保持される期限の UTC 時刻を示します。 ロックの有効期限が切れると、 がインクリメントされ、 getDeliveryCount() メッセージが再び取得できるようになります。 このプロパティは読み取り専用です。
戻り値:
getMessageBody
public abstract MessageBody getMessageBody()
このメッセージの本文を取得します。 クライアント アプリケーションでは、本文の種類に基づいてメッセージ コンテンツを抽出する必要があります。
戻り値:
getMessageId
public abstract String getMessageId()
このメッセージの ID を取得します。 メッセージ識別子は、アプリケーションによって定義される、メッセージとそのペイロードを一意に識別する値です。 この識別子は自由形式の文字列で、GUID またはアプリケーションのコンテキストから派生した識別子を反映することができます。 有効にすると、 重複検出 機能によって、同じ MessageId を持つメッセージの 2 番目以降の送信が識別され、削除されます。
戻り値:
getPartitionKey
public abstract String getPartitionKey()
パーティション分割されたエンティティにメッセージを送信するためのパーティション キーを取得します。 パーティション分割されたエンティティの場合、この値を設定すると、関連するメッセージを同じ内部パーティションに割り当てて、送信順序が正しく記録されるようにできます。 パーティションはハッシュ関数でこの値を介して選択され、直接選択することはできません。 セッション対応エンティティの場合、 プロパティはこの getSessionId() 値をオーバーライドします。
戻り値:
getProperties
public abstract Map
このメッセージのユーザー アプリケーション プロパティのマップを取得します。 クライアント アプリケーションでは、このマップを使用して、メッセージのユーザー プロパティ (ヘッダー) を設定できます。
戻り値:
getReplyTo
public abstract String getReplyTo()
返信を送信するエンティティのアドレスを取得します。 これはアプリケーションによって定義される省略可能な値であり、メッセージの受信者への応答パスを表す標準的な方法です。 応答が必要な場合、送信者は、この値を応答の送信先にするキューまたはトピックの絶対または相対パスに設定します。
戻り値:
getReplyToSessionId
public abstract String getReplyToSessionId()
アドレスを拡張するセッション識別子を getReplyTo() 取得または設定します。 この値は、ReplyTo の情報を補足し、応答が応答エンティティに送信されるときに設定する必要がある SessionId を指定します。
戻り値:
getScheduledEnqueueTimeUtc
public abstract Instant getScheduledEnqueueTimeUtc()
このメッセージのスケジュールされたエンキュー時間を取得します。 この値は、遅延メッセージの可用性に使用されます。 メッセージはキューに安全に追加されますが、アクティブとは見なされないため、スケジュールされたエンキュー時間まで取得できません。 メッセージは、特定の時点でアクティブ化 (エンキュー) されないことに注意してください。実際のアクティブ化時間は、キューのワークロードとその状態によって異なります。
戻り値:
getScheduledEnqueuedTimeUtc
@Deprecated
public abstract Instant getScheduledEnqueuedTimeUtc()
非推奨
このメッセージのスケジュールされたエンキュー時間を取得します。 この値は、遅延メッセージの可用性に使用されます。 メッセージはキューに安全に追加されますが、アクティブとは見なされないため、スケジュールされたエンキュー時間まで取得できません。 メッセージは、特定の時点でアクティブ化 (エンキュー) されないことに注意してください。実際のアクティブ化時間は、キューのワークロードとその状態によって異なります。
戻り値:
getSequenceNumber
public abstract long getSequenceNumber()
Service Bus によってメッセージに割り当てられた一意の番号を取得します。 このシーケンス番号は、メッセージがブローカーおよび関数によって受け入れおよび格納されるときに真の識別子として割り当てられる 64 ビットの整数です。 パーティション分割されたエンティティの場合、最上位の 16 ビットはパーティション識別子を表します。 シーケンス番号はギャップなしで単調に増分されます。 48 - 64 ビット範囲が使い果たされると、0 にロールオーバーされます。 このプロパティは読み取り専用です。
戻り値:
getSessionId
public abstract String getSessionId()
セッション対応エンティティのセッション識別子を取得します。 この値はアプリケーションによって定義され、セッションを認識するエンティティの場合に、メッセージのセッションへの所属を指定します。 同じセッション識別子を持つメッセージがまとめてロックされ、正確な順序での処理と多重化が可能になります。 セッションを認識しないエンティティの場合、この値は無視されます。
戻り値:
getTimeToLive
public abstract Duration getTimeToLive()
このメッセージの有効期限が切れるまでの期間を取得します。 この値は、メッセージが期限切れになるまでの相対的な期間です。これは、 で getEnqueuedTimeUtc()キャプチャされたメッセージがブローカーによって受け入れられ、格納された瞬間から始まります。 明示的に設定しない場合、想定される値は、それぞれのキューまたはトピックに設定された DefaultTimeToLive です。 メッセージレベルの TimeToLive 値をエンティティの DefaultTimeToLive の設定より長くすることはできません。長くした場合、自動的に調整されます。
戻り値:
getTo
public abstract String getTo()
"宛先" アドレスを取得します。
戻り値:
getViaPartitionKey
public abstract String getViaPartitionKey()
別のパーティション分割された転送エンティティを介してエンティティにメッセージを送信するためのパーティション キーを取得します。 トランザクションのスコープ内の転送キューを介してメッセージが送信される場合、この値は転送キュー パーティションを選択します。これは機能的には と同等 getPartitionKey() であり、メッセージが転送されるときにメッセージが一緒に保持されるようにします。
戻り値:
setBody
@Deprecated
public abstract void setBody(byte[] body)
非推奨
このメッセージの本文をバイト配列として設定します。
パラメーター:
setContentType
public abstract void setContentType(String contentType)
このメッセージのコンテンツ タイプを設定します。
パラメーター:
setCorrelationId
public abstract void setCorrelationId(String correlationId)
関連付け識別子を設定します。
パラメーター:
setLabel
public abstract void setLabel(String label)
アプリケーション固有のメッセージ ラベルを設定します。
パラメーター:
setMessageBody
public abstract void setMessageBody(MessageBody body)
このメッセージの本文を設定します。
パラメーター:
setMessageId
public abstract void setMessageId(String messageId)
このメッセージの ID を設定します。
パラメーター:
setPartitionKey
public abstract void setPartitionKey(String partitionKey)
パーティション分割されたエンティティにメッセージを送信するためのパーティション キーを設定します
パラメーター:
setProperties
public abstract void setProperties(Map
このメッセージのユーザー アプリケーション プロパティのマップを設定します。 クライアント アプリケーションは、このマップを使用してメッセージにユーザー プロパティを設定できます。
パラメーター:
setReplyTo
public abstract void setReplyTo(String replyTo)
返信を送信するエンティティのアドレスを設定します。
パラメーター:
setReplyToSessionId
public abstract void setReplyToSessionId(String replyToSessionId)
アドレスを拡張するセッション識別子を getReplyTo() 取得または設定します。
パラメーター:
setScheduledEnqueueTimeUtc
public abstract void setScheduledEnqueueTimeUtc(Instant scheduledEnqueueTimeUtc)
このメッセージのスケジュールされたエンキュー時間を設定します。
パラメーター:
setScheduledEnqueuedTimeUtc
@Deprecated
public abstract void setScheduledEnqueuedTimeUtc(Instant scheduledEnqueueTimeUtc)
非推奨
このメッセージのスケジュールされたエンキュー時間を設定します。
パラメーター:
setSessionId
public abstract void setSessionId(String sessionId)
セッション対応エンティティのセッション識別子を設定します。
パラメーター:
setTimeToLive
public abstract void setTimeToLive(Duration timeToLive)
このメッセージの有効期限が切れるまでの期間を設定します。
パラメーター:
setTo
public abstract void setTo(String to)
"to" アドレスを設定します。 このプロパティはルーティング シナリオでの将来の使用のために予約されており、現在はブローカー自体で無視されます。 アプリケーションは、ルール駆動型 の自動転送チェーン シナリオでこの値を使用して、メッセージの目的の論理宛先を示すことができます。
パラメーター:
setViaPartitionKey
public abstract void setViaPartitionKey(String viaPartitionKey)
別のパーティション分割されたエンティティを介して宛先エンティティにメッセージを送信するための via-partition キーを設定します
パラメーター:
適用対象
Azure SDK for Java