クラス ExpressionEvaluatingRoutingSlipRouteStrategy

java.lang.ObjectSE
org.springframework.integration.routingslip.ExpressionEvaluatingRoutingSlipRouteStrategy
実装されたすべてのインターフェース:
AwareBeanFactoryAwareInitializingBeanRoutingSlipRouteStrategy

public class ExpressionEvaluatingRoutingSlipRouteStrategy extends ObjectSE implements RoutingSlipRouteStrategy, BeanFactoryAware, InitializingBean
Expression ベースの RoutingSlipRouteStrategy 実装。requestMessage および reply オブジェクトは、EvaluationContext rootObject として使用される ExpressionEvaluatingRoutingSlipRouteStrategy.RequestAndReply にラップされます。これは、追加のパラメーターを式変数として入力できるが、EvaluationContext がスレッドセーフではない場合に、呼び出しごとに新しい EvaluationContext が作成されないようにするために必要です。

ExpressionEvaluatingRoutingSlipRouteStrategy は、ApplicationContext で通常の Bean として直接使用でき、その beanName は routingSlip ヘッダー構成から使用できます。

routingSlip ヘッダー付きのメッセージをネットワーク経由で送信できる分散環境の場合は、通常の Bean 定義として ExpressionEvaluatingRoutingSlipRouteStrategy を使用することをお勧めします。このケースの 1 つは、永続的な MessageStore を持つ QueueChannel であり、ヘッダー値としての ExpressionEvaluatingRoutingSlipRouteStrategy インスタンスは直列化できません。

このクラスは、構成からの value に式定義が含まれている場合に、RoutingSlipHeaderValueMessageProcessor から内部的に使用されて routingSlip ヘッダー値項目を設定します。

 
 <header-enricher>
     <routing-slip
           value="channel1; @routingSlipPojo.get(request, reply); request.headers[foo]"/>
 </header-enricher>
 
 
導入:
4.1
作成者:
Artem Bilan, Gary Russell
  • コンストラクターの詳細

    • ExpressionEvaluatingRoutingSlipRouteStrategy

      public ExpressionEvaluatingRoutingSlipRouteStrategy(StringSE expression)
    • ExpressionEvaluatingRoutingSlipRouteStrategy

      public ExpressionEvaluatingRoutingSlipRouteStrategy(Expression expression)
  • メソッドの詳細