クラス RabbitAmqpTemplate

java.lang.ObjectSE
org.springframework.amqp.rabbitmq.client.RabbitAmqpTemplate
実装されているすべてのインターフェース:
AsyncAmqpTemplateDisposableBean

public class RabbitAmqpTemplate extends ObjectSE implements AsyncAmqpTemplate, DisposableBean
RabbitMQ AMQP 1.0 プロトコルサポート用の AmqpTemplateEnvironment.connectionBuilder() をラップする Spring 対応ラッパー。
導入:
4.0
作成者:
Artem Bilan
  • コンストラクターの詳細

  • メソッドの詳細

    • setListeners

      public void setListeners(com.rabbitmq.client.amqp.Resource.StateListener... listeners)
    • setPublishTimeout

      public void setPublishTimeout(DurationSE timeout)
    • setCompletionTimeout

      public void setCompletionTimeout(DurationSE completionTimeout)
      リターン時の CompletableFuture.orTimeout(long, TimeUnit)SE の継続時間を設定します。CompletableFuture.get(long, TimeUnit)SE からリクエストされる onTimeout() のような CompletableFutureSE API はありませんが、CompletableFutureSE のフルフィルメントとは独立して、AMQP リソースを最終的に閉じる必要がある操作で使用されます。デフォルトは 1 分です。
      パラメーター:
      completionTimeout - 将来の完了までの期間。
    • setExchange

      public void setExchange(StringSE exchange)
      パブリッシュ用のデフォルトのエクスチェンジを設定します。実際のデフォルトの AMQP エクスチェンジは指定できません。代わりに setQueue(String) の使用を推奨します。setQueue(String) とは相互に排他的です。
      パラメーター:
      exchange - デフォルトの交換
    • setRoutingKey

      public void setRoutingKey(StringSE routingKey)
      デフォルトのルーティングキーを設定します。setQueue(String) とは排他的です。
      パラメーター:
      routingKey - デフォルトのルーティングキー。
    • setQueue

      public void setQueue(StringSE queue)
      パブリッシュ用のデフォルトキューを設定します。setExchange(String) および setRoutingKey(String) とは排他的です。
      パラメーター:
      queue - デフォルトのキュー。
    • setReceiveQueue

      public void setReceiveQueue(StringSE queue)
      明示的に指定されていない場合にメッセージを受信するデフォルトのキューの名前。
      パラメーター:
      queue - 受信操作に使用するデフォルトのキュー名。
    • setReplyToQueue

      public void setReplyToQueue(StringSE queue)
      明示的に指定されていない場合に応答を受信するデフォルトのキューの名前。
      パラメーター:
      queue - 送受信操作に使用するデフォルトのキュー名。
    • setMessageConverter

      public void setMessageConverter(MessageConverter messageConverter)
      convertAndSend(Object) 操作用のコンバーターを設定します。
      パラメーター:
      messageConverter - コンバーター。
    • getPublisher

      public com.rabbitmq.client.amqp.Publisher getPublisher()
      低レベルの AMQP 操作の Publisher を返します。
      戻り値:
      低レベルの AMQP 操作用の Publisher
    • destroy

      public void destroy()
      次で指定:
      インターフェース DisposableBeandestroy 
    • send

      public CompletableFutureSE<BooleanSE> send(Message message)
      このテンプレートで構成されているデフォルトの交換およびルーティングキー (存在する場合) (またはキュー) にメッセージを公開します。
      次で指定:
      インターフェース AsyncAmqpTemplatesend 
      パラメーター:
      message - 出版する
      戻り値:
      メッセージの公開の結果としての CompletableFutureSE
    • send

      public CompletableFutureSE<BooleanSE> send(StringSE queue, Message message)
      指定されたキューにメッセージを公開します。
      次で指定:
      インターフェース AsyncAmqpTemplatesend 
      パラメーター:
      queue - 出版する
      message - 出版する
      戻り値:
      メッセージの公開の結果としての CompletableFutureSE
    • send

      public CompletableFutureSE<BooleanSE> send(StringSE exchange, @Nullable StringSE routingKey, Message message)
      次で指定:
      インターフェース AsyncAmqpTemplatesend 
    • convertAndSend

      public CompletableFutureSE<BooleanSE> convertAndSend(ObjectSE message)
      変換された本文から、このテンプレートで設定されているデフォルトの交換およびルーティングキー (存在する場合) (またはキュー) にメッセージを公開します。
      次で指定:
      インターフェース AsyncAmqpTemplateconvertAndSend 
      パラメーター:
      message - 出版する
      戻り値:
      メッセージの公開の結果としての CompletableFutureSE
    • convertAndSend

      public CompletableFutureSE<BooleanSE> convertAndSend(StringSE queue, ObjectSE message)
      次で指定:
      インターフェース AsyncAmqpTemplateconvertAndSend 
    • convertAndSend

      public CompletableFutureSE<BooleanSE> convertAndSend(StringSE exchange, @Nullable StringSE routingKey, ObjectSE message)
      次で指定:
      インターフェース AsyncAmqpTemplateconvertAndSend 
    • convertAndSend

      public CompletableFutureSE<BooleanSE> convertAndSend(ObjectSE message, @Nullable MessagePostProcessor messagePostProcessor)
      次で指定:
      インターフェース AsyncAmqpTemplateconvertAndSend 
    • convertAndSend

      public CompletableFutureSE<BooleanSE> convertAndSend(StringSE queue, ObjectSE message, @Nullable MessagePostProcessor messagePostProcessor)
      次で指定:
      インターフェース AsyncAmqpTemplateconvertAndSend 
    • convertAndSend

      public CompletableFutureSE<BooleanSE> convertAndSend(StringSE exchange, @Nullable StringSE routingKey, ObjectSE message, @Nullable MessagePostProcessor messagePostProcessor)
      次で指定:
      インターフェース AsyncAmqpTemplateconvertAndSend 
    • receive

      public CompletableFutureSE<Message> receive()
      次で指定:
      インターフェース AsyncAmqpTemplatereceive 
    • receive

      public CompletableFutureSE<Message> receive(StringSE queueName)
      指定されたキューからヘッドメッセージをリクエストします。返された CompletableFutureSEsetCompletionTimeout(Duration) 後にタイムアウトします。
      次で指定:
      インターフェース AsyncAmqpTemplatereceive 
      パラメーター:
      queueName - メッセージを消費するキュー。
      戻り値:
      受け取ったメッセージで未来を予測します。
      関連事項:
    • receiveAndConvert

      public CompletableFutureSE<ObjectSE> receiveAndConvert()
      次で指定:
      インターフェース AsyncAmqpTemplatereceiveAndConvert 
    • receiveAndConvert

      public CompletableFutureSE<ObjectSE> receiveAndConvert(StringSE queueName)
      次で指定:
      インターフェース AsyncAmqpTemplatereceiveAndConvert 
    • receiveAndConvert

      public <T> CompletableFutureSE<T> receiveAndConvert(@Nullable ParameterizedTypeReference<T> type)
      setReceiveQueue(String) からメッセージを受信し、その本体を期待される型に変換します。setMessageConverter(MessageConverter)SmartMessageConverter の実装である必要があります。
      次で指定:
      インターフェース AsyncAmqpTemplatereceiveAndConvert 
      パラメーター:
      type - 受信した結果を変換する型。
      戻り値:
      CompletableFuture で結果が出ました。
    • receiveAndConvert

      public <T> CompletableFutureSE<T> receiveAndConvert(StringSE queueName, @Nullable ParameterizedTypeReference<T> type)
      setReceiveQueue(String) からメッセージを受信し、その本体を期待される型に変換します。setMessageConverter(MessageConverter)SmartMessageConverter の実装である必要があります。
      次で指定:
      インターフェース AsyncAmqpTemplatereceiveAndConvert 
      パラメーター:
      queueName - メッセージを消費するキュー。
      type - 受信した結果を変換する型。
      戻り値:
      CompletableFuture で結果が出ました。
    • receiveAndReply

      public <R,S> CompletableFutureSE<BooleanSE> receiveAndReply(ReceiveAndReplyCallback<R,S> callback)
      次で指定:
      インターフェース AsyncAmqpTemplatereceiveAndReply 
    • receiveAndReply

      public <R,S> CompletableFutureSE<BooleanSE> receiveAndReply(StringSE queueName, ReceiveAndReplyCallback<R,S> callback)
      インターフェースからコピーされた説明: AsyncAmqpTemplate
      サーバー側 RPC 機能を実行します。リクエストメッセージには replyTo プロパティが必要です。リクエストの messageId プロパティは相関関係に使用されます。コールバックは「応答なし」を意味する応答を生成しない可能性があります。
      次で指定:
      インターフェース AsyncAmqpTemplatereceiveAndReply 
      型パラメーター:
      R - リクエスト本体の型。
      S - レスポンス本体型
      パラメーター:
      queueName - リクエストを消費するキュー。
      callback - リクエストを処理して応答を生成するアプリケーションコールバック。
      戻り値:
      完了ステータス: エラーがなく、応答が生成された場合には true になります。
    • sendAndReceive

      public CompletableFutureSE<Message> sendAndReceive(Message message)
      インターフェースからコピーされた説明: AsyncAmqpTemplate
      デフォルトのルーティングキーを使用して、デフォルトの交換にメッセージを送信します。メッセージに correlationId プロパティが含まれている場合、そのプロパティは一意である必要があります。
      次で指定:
      インターフェース AsyncAmqpTemplatesendAndReceive 
      パラメーター:
      message - メッセージ。
      戻り値:
      CompletableFutureSE
    • sendAndReceive

      public CompletableFutureSE<Message> sendAndReceive(StringSE exchange, @Nullable StringSE routingKey, Message message)
      インターフェースからコピーされた説明: AsyncAmqpTemplate
      指定された交換とルーティングキーにメッセージを送信します。メッセージに correlationId プロパティが含まれている場合、そのプロパティは一意である必要があります。
      次で指定:
      インターフェース AsyncAmqpTemplatesendAndReceive 
      パラメーター:
      exchange - 交換。
      routingKey - ルーティングキー。
      message - メッセージ。
      戻り値:
      CompletableFutureSE
    • sendAndReceive

      public CompletableFutureSE<Message> sendAndReceive(StringSE queue, Message message)
      インターフェースからコピーされた説明: AsyncAmqpTemplate
      指定されたルーティングキーを使用して、デフォルトの交換にメッセージを送信します。メッセージに correlationId プロパティが含まれている場合、そのプロパティは一意である必要があります。
      次で指定:
      インターフェース AsyncAmqpTemplatesendAndReceive 
      パラメーター:
      queue - ルーティングキー。
      message - メッセージ。
      戻り値:
      CompletableFutureSE
    • convertSendAndReceive

      public <C> CompletableFutureSE<C> convertSendAndReceive(ObjectSE object)
      インターフェースからコピーされた説明: AsyncAmqpTemplate
      オブジェクトをメッセージに変換し、デフォルトのルーティングキーを使用してデフォルトの交換に送信します。
      次で指定:
      インターフェース AsyncAmqpTemplateconvertSendAndReceive 
      型パラメーター:
      C - 期待される結果型。
      パラメーター:
      object - 変換するオブジェクト。
      戻り値:
      CompletableFutureSE
    • convertSendAndReceive

      public <C> CompletableFutureSE<C> convertSendAndReceive(StringSE queue, ObjectSE object)
      インターフェースからコピーされた説明: AsyncAmqpTemplate
      オブジェクトをメッセージに変換し、指定されたルーティングキーを使用してデフォルトの交換に送信します。
      次で指定:
      インターフェース AsyncAmqpTemplateconvertSendAndReceive 
      型パラメーター:
      C - 期待される結果型。
      パラメーター:
      queue - ルーティングキー。
      object - 変換するオブジェクト。
      戻り値:
      CompletableFutureSE
    • convertSendAndReceive

      public <C> CompletableFutureSE<C> convertSendAndReceive(StringSE exchange, @Nullable StringSE routingKey, ObjectSE object)
      インターフェースからコピーされた説明: AsyncAmqpTemplate
      オブジェクトをメッセージに変換し、指定された交換およびルーティングキーに送信します。
      次で指定:
      インターフェース AsyncAmqpTemplateconvertSendAndReceive 
      型パラメーター:
      C - 期待される結果型。
      パラメーター:
      exchange - 交換。
      routingKey - ルーティングキー。
      object - 変換するオブジェクト。
      戻り値:
      CompletableFutureSE
    • convertSendAndReceive

      public <C> CompletableFutureSE<C> convertSendAndReceive(ObjectSE object, MessagePostProcessor messagePostProcessor)
      インターフェースからコピーされた説明: AsyncAmqpTemplate
      MessagePostProcessor を呼び出した後、オブジェクトをメッセージに変換し、デフォルトのルーティングキーを使用してデフォルトのエクスチェンジに送信します。ポストプロセッサーが correlationId プロパティを追加する場合、そのプロパティは一意である必要があります。
      次で指定:
      インターフェース AsyncAmqpTemplateconvertSendAndReceive 
      型パラメーター:
      C - 期待される結果型。
      パラメーター:
      object - 変換するオブジェクト。
      messagePostProcessor - ポストプロセッサー。
      戻り値:
      CompletableFutureSE
    • convertSendAndReceive

      public <C> CompletableFutureSE<C> convertSendAndReceive(StringSE queue, ObjectSE object, MessagePostProcessor messagePostProcessor)
      インターフェースからコピーされた説明: AsyncAmqpTemplate
      オブジェクトをメッセージに変換し、MessagePostProcessor を呼び出した後、指定されたルーティングキーを使用してデフォルトのエクスチェンジに送信します。ポストプロセッサーが correlationId プロパティを追加する場合、そのプロパティは一意である必要があります。
      次で指定:
      インターフェース AsyncAmqpTemplateconvertSendAndReceive 
      型パラメーター:
      C - 期待される結果型。
      パラメーター:
      queue - ルーティングキー。
      object - 変換するオブジェクト。
      messagePostProcessor - ポストプロセッサー。
      戻り値:
      CompletableFutureSE
    • convertSendAndReceive

      public <C> CompletableFutureSE<C> convertSendAndReceive(StringSE exchange, @Nullable StringSE routingKey, ObjectSE object, @Nullable MessagePostProcessor messagePostProcessor)
      インターフェースからコピーされた説明: AsyncAmqpTemplate
      Convert the object to a message and send it to the provided exchange and routing key after invoking the MessagePostProcessor . If the post-processor adds a correlationId property, it must be unique.
      次で指定:
      インターフェース AsyncAmqpTemplateconvertSendAndReceive 
      型パラメーター:
      C - 期待される結果型。
      パラメーター:
      exchange - 交換
      routingKey - ルーティングキー。
      object - 変換するオブジェクト。
      messagePostProcessor - ポストプロセッサー。
      戻り値:
      CompletableFutureSE
    • convertSendAndReceiveAsType

      public <C> CompletableFutureSE<C> convertSendAndReceiveAsType(ObjectSE object, ParameterizedTypeReference<C> responseType)
      インターフェースからコピーされた説明: AsyncAmqpTemplate
      オブジェクトをメッセージに変換し、デフォルトのルーティングキーを使用してデフォルトの交換に送信します。
      次で指定:
      インターフェース AsyncAmqpTemplateconvertSendAndReceiveAsType 
      型パラメーター:
      C - 期待される結果型。
      パラメーター:
      object - 変換するオブジェクト。
      responseType - レスポンス型。
      戻り値:
      CompletableFutureSE
    • convertSendAndReceiveAsType

      public <C> CompletableFutureSE<C> convertSendAndReceiveAsType(StringSE queue, ObjectSE object, ParameterizedTypeReference<C> responseType)
      インターフェースからコピーされた説明: AsyncAmqpTemplate
      オブジェクトをメッセージに変換し、指定されたルーティングキーを使用してデフォルトの交換に送信します。
      次で指定:
      インターフェース AsyncAmqpTemplateconvertSendAndReceiveAsType 
      型パラメーター:
      C - 期待される結果型。
      パラメーター:
      queue - ルーティングキー。
      object - 変換するオブジェクト。
      responseType - レスポンス型。
      戻り値:
      CompletableFutureSE
    • convertSendAndReceiveAsType

      public <C> CompletableFutureSE<C> convertSendAndReceiveAsType(StringSE exchange, @Nullable StringSE routingKey, ObjectSE object, ParameterizedTypeReference<C> responseType)
      インターフェースからコピーされた説明: AsyncAmqpTemplate
      オブジェクトをメッセージに変換し、指定された交換およびルーティングキーに送信します。
      次で指定:
      インターフェース AsyncAmqpTemplateconvertSendAndReceiveAsType 
      型パラメーター:
      C - 期待される結果型。
      パラメーター:
      exchange - 交換。
      routingKey - ルーティングキー。
      object - 変換するオブジェクト。
      responseType - レスポンス型。
      戻り値:
      CompletableFutureSE
    • convertSendAndReceiveAsType

      public <C> CompletableFutureSE<C> convertSendAndReceiveAsType(ObjectSE object, @Nullable MessagePostProcessor messagePostProcessor, @Nullable ParameterizedTypeReference<C> responseType)
      インターフェースからコピーされた説明: AsyncAmqpTemplate
      MessagePostProcessor を呼び出した後、オブジェクトをメッセージに変換し、デフォルトのルーティングキーを使用してデフォルトのエクスチェンジに送信します。ポストプロセッサーが correlationId プロパティを追加する場合、そのプロパティは一意である必要があります。
      次で指定:
      インターフェース AsyncAmqpTemplateconvertSendAndReceiveAsType 
      型パラメーター:
      C - 期待される結果型。
      パラメーター:
      object - 変換するオブジェクト。
      messagePostProcessor - ポストプロセッサー。
      responseType - レスポンス型。
      戻り値:
      CompletableFutureSE
    • convertSendAndReceiveAsType

      public <C> CompletableFutureSE<C> convertSendAndReceiveAsType(StringSE queue, ObjectSE object, @Nullable MessagePostProcessor messagePostProcessor, @Nullable ParameterizedTypeReference<C> responseType)
      インターフェースからコピーされた説明: AsyncAmqpTemplate
      オブジェクトをメッセージに変換し、MessagePostProcessor を呼び出した後、指定されたルーティングキーを使用してデフォルトのエクスチェンジに送信します。ポストプロセッサーが correlationId プロパティを追加する場合、そのプロパティは一意である必要があります。
      次で指定:
      インターフェース AsyncAmqpTemplateconvertSendAndReceiveAsType 
      型パラメーター:
      C - 期待される結果型。
      パラメーター:
      queue - ルーティングキー。
      object - 変換するオブジェクト。
      messagePostProcessor - ポストプロセッサー。
      responseType - レスポンス型。
      戻り値:
      CompletableFutureSE
    • convertSendAndReceiveAsType

      public <C> CompletableFutureSE<C> convertSendAndReceiveAsType(StringSE exchange, @Nullable StringSE routingKey, ObjectSE object, @Nullable MessagePostProcessor messagePostProcessor, @Nullable ParameterizedTypeReference<C> responseType)
      インターフェースからコピーされた説明: AsyncAmqpTemplate
      Convert the object to a message and send it to the provided exchange and routing key after invoking the MessagePostProcessor . If the post-processor adds a correlationId property, it must be unique.
      次で指定:
      インターフェース AsyncAmqpTemplateconvertSendAndReceiveAsType 
      型パラメーター:
      C - 期待される結果型。
      パラメーター:
      exchange - 交換
      routingKey - ルーティングキー。
      object - 変換するオブジェクト。
      messagePostProcessor - ポストプロセッサー。
      responseType - レスポンス型。
      戻り値:
      CompletableFutureSE