クラス FileAggregator

java.lang.ObjectSE
org.springframework.integration.file.aggregator.FileAggregator
実装されたすべてのインターフェース:
AwareBeanFactoryAwareCorrelationStrategyGroupConditionProviderMessageGroupProcessorReleaseStrategy

FileSplitter.FileMarker ベースの集約ロジックを利用するための便利なコンポーネント。ランタイム最適化のために、3 つすべての CorrelationStrategyReleaseStrategyMessageGroupProcessor を実装します。それぞれ FileHeaders.FILENAME 属性、FileMarkerReleaseStrategy および FileAggregatingMessageGroupProcessor を持つ HeaderAttributeCorrelationStrategy に委譲します。

マーカーが有効になっているデフォルトの FileSplitter の動作は、シーケンス詳細ヘッダーを提供しないことです。このアグリゲーター実装での相関は、FileSplitter.FileMarker メッセージを含め、発行された各行の FileSplitter によって引き続き入力される FileHeaders.FILENAME ヘッダーによって行われます。

このコンポーネントのデフォルトの動作がターゲットロジックを満たさない場合は、個々の戦略でアグリゲーターを構成することをお勧めします。

導入:
5.5
作成者:
Artem Bilan
  • コンストラクターの詳細

    • FileAggregator

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

    • setBeanFactory

      public void setBeanFactory(BeanFactory beanFactory) throws BeansException
      次で指定:
      インターフェース BeanFactoryAwaresetBeanFactory 
      例外:
      BeansException
    • getCorrelationKey

      public ObjectSE getCorrelationKey(Message<?> message)
      インターフェースからコピーされた説明: CorrelationStrategy
      指定されたメッセージの相関キーを見つけます。キーを判別できない場合、ストラテジーは null を返さないで、例外をスローする必要があります。
      次で指定:
      インターフェース CorrelationStrategygetCorrelationKey 
      パラメーター:
      message - メッセージ。
      戻り値:
      相関キー。
    • canRelease

      public boolean canRelease(MessageGroup group)
      次で指定:
      インターフェース ReleaseStrategycanRelease 
    • getGroupConditionSupplier

      public BiFunctionSE<Message<?>,StringSE,StringSE> getGroupConditionSupplier()
      次で指定:
      インターフェース GroupConditionProvidergetGroupConditionSupplier 
    • processMessageGroup

      public ObjectSE processMessageGroup(MessageGroup group)
      インターフェースからコピーされた説明: MessageGroupProcessor
      指定された MessageGroup を処理します。実装は、呼び出しに基づいて、必要な数のメッセージを自由に返すことができます。たとえば、集約プロセッサーはグループを表す単一のメッセージのみを返しますが、再シーケンスプロセッサーは前のシーケンスが満たされたすべてのメッセージを返します。

      複数のメッセージが返される場合、戻り値は Collection <Message> でなければなりません。

      次で指定:
      インターフェース MessageGroupProcessorprocessMessageGroup 
      パラメーター:
      group - メッセージグループ。
      戻り値:
      グループを処理した結果。