クラス AbstractAmqpOutboundEndpoint

実装されたすべてのインターフェース:
org.reactivestreams.Subscriber<Message<?>>AwareBeanClassLoaderAwareBeanFactoryAwareBeanNameAwareDisposableBeanInitializingBeanApplicationContextAwareLifecycleOrderedExpressionCapableOrderableMessageProducerHeaderPropagationAwareIntegrationPatternNamedComponentIntegrationManagementManageableLifecycleTrackableComponentMessageHandlerreactor.core.CoreSubscriber<Message<?>>
既知の直属サブクラス
AmqpOutboundEndpointAsyncAmqpOutboundGateway

public abstract class AbstractAmqpOutboundEndpoint extends AbstractReplyProducingMessageHandler implements ManageableLifecycle
AMQP メッセージハンドラーのベース AbstractReplyProducingMessageHandler 拡張。
導入:
4.3
作成者:
Gary Russell, Artem Bilan, Christian Tzolov
  • コンストラクターの詳細

    • AbstractAmqpOutboundEndpoint

      public AbstractAmqpOutboundEndpoint()
  • メソッドの詳細

    • setHeaderMapper

      public void setHeaderMapper(AmqpHeaderMapper headerMapper)
      リクエストおよび応答ヘッダーをマッピングするためのカスタム AmqpHeaderMapper を設定します。デフォルトは DefaultAmqpHeaderMapper.outboundMapper() です。
      パラメーター:
      headerMapper - 使用する AmqpHeaderMapper
    • setHeadersMappedLast

      public void setHeadersMappedLast(boolean headersMappedLast)
      送信メッセージのヘッダーをマッピングする場合、メッセージが変換される前にヘッダーをマッピングするか、その後にヘッダーをマッピングするかを決定します。これは、メッセージコンバーターによって追加される可能性のあるヘッダーにのみ影響します。false の場合、コンバーターのヘッダーが優先されます。true の場合、コンバーターによって追加されたヘッダーはオーバーライドされます(ソースメッセージにこれらのヘッダーにマップするヘッダーがある場合)。たとえば、json を含む String ペイロードで SimpleMessageConverter を使用する場合、これを true に設定できます。コンバーターは、AmqpHeaders.CONTENT_TYPE メッセージヘッダーを設定することにより、application/json に上書きできる text/plain にコンテンツ型を設定します。デフォルト: false。
      パラメーター:
      headersMappedLast - 変換後にヘッダーがマップされる場合は true。
      導入:
      5.0
    • setExchangeName

      public void setExchangeName(StringSE exchangeName)
      メッセージを送信するための AMQP 交換名を構成します。
      パラメーター:
      exchangeName - メッセージを送信するための交換名。
    • setExchangeNameExpression

      public void setExchangeNameExpression(Expression exchangeNameExpression)
      実行時に交換名を評価するように SpEL 式を構成します。
      パラメーター:
      exchangeNameExpression - 使用する式。
      導入:
      4.3
    • setExchangeNameExpressionString

      public void setExchangeNameExpressionString(StringSE exchangeNameExpression)
      パラメーター:
      exchangeNameExpression - SpEL 構文の文字列。
      導入:
      4.3
    • setRoutingKey

      public void setRoutingKey(StringSE routingKey)
      メッセージを送信するための AMQP ルーティングキーを構成します。
      パラメーター:
      routingKey - 使用するルーティングキー
    • setRoutingKeyExpression

      public void setRoutingKeyExpression(Expression routingKeyExpression)
      パラメーター:
      routingKeyExpression - 使用する式。
      導入:
      4.3
    • setRoutingKeyExpressionString

      public void setRoutingKeyExpressionString(StringSE routingKeyExpression)
      パラメーター:
      routingKeyExpression - SpEL 構文の文字列。
      導入:
      4.3
    • setConfirmCorrelationExpression

      public void setConfirmCorrelationExpression(Expression confirmCorrelationExpression)
      SpEL 式を設定して、実行時に確認相関を評価します。
      パラメーター:
      confirmCorrelationExpression - 使用する式。
      導入:
      4.3
    • setConfirmCorrelationExpressionString

      public void setConfirmCorrelationExpressionString(StringSE confirmCorrelationExpression)
      SpEL 式を設定して、実行時に確認相関を評価します。
      パラメーター:
      confirmCorrelationExpression - SpEL 構文の文字列。
      導入:
      4.3
    • setConfirmAckChannel

      public void setConfirmAckChannel(MessageChannel ackChannel)
      Ack が送信されるチャネルを設定します(パブリッシャーが確認します)。
      パラメーター:
      ackChannel - チャンネル。
    • setConfirmAckChannelName

      public void setConfirmAckChannelName(StringSE ackChannelName)
      Ack が送信されるチャネル名を設定します(パブリッシャーが確認します)。
      パラメーター:
      ackChannelName - チャンネル名。
      導入:
      4.3.12
    • setConfirmNackChannel

      public void setConfirmNackChannel(MessageChannel nackChannel)
      ナックが送信されるチャネルを設定します(パブリッシャーが確認します)。
      パラメーター:
      nackChannel - チャンネル。
    • setConfirmNackChannelName

      public void setConfirmNackChannelName(StringSE nackChannelName)
      ナックが送信されるチャンネル名を設定します(パブリッシャーが確認します)。
      パラメーター:
      nackChannelName - チャンネル名。
      導入:
      4.3.12
    • setReturnChannel

      public void setReturnChannel(MessageChannel returnChannel)
      返されたメッセージが送信されるチャネルを設定します。
      パラメーター:
      returnChannel - チャンネル。
    • setDefaultDeliveryMode

      public void setDefaultDeliveryMode(MessageDeliveryMode defaultDeliveryMode)
      デフォルトの配信モードを設定します。
      パラメーター:
      defaultDeliveryMode - 配信モード。
    • setLazyConnect

      public void setLazyConnect(boolean lazyConnect)
      エンドポイントの開始時に接続を試行するには、false に設定します。デフォルト true は、最初のメッセージの到着時に接続の確立が試行されることを意味します。
      パラメーター:
      lazyConnect - 設定する lazyConnect
      導入:
      4.1
    • setDelay

      public void setDelay(int delay)
      RabbitMQ 遅延メッセージ交換プラグインを使用する場合、x-delay ヘッダーに設定する値を設定します。デフォルトでは、AmqpHeaders.DELAY ヘッダー(存在する場合)がマップされます。ここで遅延を設定すると、その値が上書きされます。
      パラメーター:
      delay - 遅延。
      導入:
      4.3.5
    • setDelayExpression

      public void setDelayExpression(Expression delayExpression)
      RabbitMQ 遅延メッセージ交換プラグインを使用する場合、x-delay ヘッダーを計算するように SpEL 式を設定します。デフォルトでは、AmqpHeaders.DELAY ヘッダー(存在する場合)がマップされます。ここで式を設定すると、その値がオーバーライドされます。
      パラメーター:
      delayExpression - 表現。
      導入:
      4.3.5
    • setDelayExpressionString

      public void setDelayExpressionString(@Nullable StringSE delayExpression)
      RabbitMQ 遅延メッセージ交換プラグインを使用する場合、x-delay ヘッダーを計算するように SpEL 式を設定します。デフォルトでは、AmqpHeaders.DELAY ヘッダー(存在する場合)がマップされます。ここで式を設定すると、その値がオーバーライドされます。
      パラメーター:
      delayExpression - 表現。
      導入:
      4.3.5
    • setErrorMessageStrategy

      public void setErrorMessageStrategy(ErrorMessageStrategy errorMessageStrategy)
      返される(または否定的に確認された)メッセージに使用するエラーメッセージ戦略を設定します。
      パラメーター:
      errorMessageStrategy - 戦略。
      導入:
      4.3.12
    • setConfirmTimeout

      public void setConfirmTimeout(long confirmTimeout)
      その時間内にパブリッシャーの確認が受信されなかった場合、nack が合成されるまでのタイムアウトを設定します。欠落している確認はこの値の 50% ごとにチェックされるため、このタイムアウトで合成されたナックが 1x と 1.5x の間で送信されます。
      パラメーター:
      confirmTimeout - おおよそのタイムアウト。
      導入:
      5.2
      関連事項:
    • setConnectionFactory

      protected final void setConnectionFactory(ConnectionFactory connectionFactory)
    • getExchangeName

      protected StringSE getExchangeName()
    • getRoutingKey

      protected StringSE getRoutingKey()
    • getExchangeNameExpression

      protected Expression getExchangeNameExpression()
    • getRoutingKeyExpression

      protected Expression getRoutingKeyExpression()
    • getRoutingKeyGenerator

      protected ExpressionEvaluatingMessageProcessor<StringSE> getRoutingKeyGenerator()
    • getExchangeNameGenerator

      protected ExpressionEvaluatingMessageProcessor<StringSE> getExchangeNameGenerator()
    • getHeaderMapper

      public AmqpHeaderMapper getHeaderMapper()
    • getConfirmCorrelationExpression

      protected Expression getConfirmCorrelationExpression()
    • getCorrelationDataGenerator

      protected ExpressionEvaluatingMessageProcessor<ObjectSE> getCorrelationDataGenerator()
    • getConfirmAckChannel

      protected MessageChannel getConfirmAckChannel()
    • getConfirmNackChannel

      protected MessageChannel getConfirmNackChannel()
    • getReturnChannel

      protected MessageChannel getReturnChannel()
    • getDefaultDeliveryMode

      protected MessageDeliveryMode getDefaultDeliveryMode()
    • isLazyConnect

      protected boolean isLazyConnect()
    • isHeadersMappedLast

      protected boolean isHeadersMappedLast()
    • getConfirmTimeout

      @Nullable protected DurationSE getConfirmTimeout()
    • doInit

      protected final void doInit()
      オーバーライド:
      クラス AbstractReplyProducingMessageHandlerdoInit 
    • endpointInit

      protected void endpointInit()
      サブクラスはオーバーライドして、追加の初期化を実行できます。afterPropertiesSet() から呼び出されます。
    • start

      public void start()
      次で指定:
      インターフェース Lifecyclestart 
      次で指定:
      インターフェース ManageableLifecyclestart 
    • getRabbitTemplate

      @Nullable protected abstract RabbitTemplate getRabbitTemplate()
    • stop

      public void stop()
      次で指定:
      インターフェース Lifecyclestop 
      次で指定:
      インターフェース ManageableLifecyclestop 
    • doStart

      protected void doStart()
    • doStop

      protected void doStop()
    • isRunning

      public boolean isRunning()
      次で指定:
      インターフェース LifecycleisRunning 
      次で指定:
      インターフェース ManageableLifecycleisRunning 
    • generateCorrelationData

      protected CorrelationData generateCorrelationData(Message<?> requestMessage)
    • generateExchangeName

      protected StringSE generateExchangeName(Message<?> requestMessage)
    • generateRoutingKey

      protected StringSE generateRoutingKey(Message<?> requestMessage)
    • addDelayProperty

      protected void addDelayProperty(Message<?> message, Message amqpMessage)
    • buildReply

      protected AbstractIntegrationMessageBuilder<?> buildReply(MessageConverter converter, Message amqpReplyMessage)
    • buildReturnedMessage

      protected Message<?> buildReturnedMessage(ReturnedMessage returnedMessage, MessageConverter converter)
    • handleConfirm

      protected void handleConfirm(CorrelationData correlationData, boolean ack, StringSE cause)