2017-02-13 6 views
0

私はそれを実装する方法を見つけることができないユースケースを持っています。これはFTP接続では、リストから特定のプリフィックスを持つファイルだけを取得する必要があります。 (ファイル名の例FileA_20170210073006539.csv、FileB__20170210073006475.csv、FileC_20170210073006485.csv)。Apache CAMELプロセスのファイル存在

これらのファイルがすべて同じ日付で処理されている場合にのみ処理できます。

最初に行うことは、この3つの接頭辞にフィルターを付けてファイルをコピーしてから、アグリゲーターを使用すると思いますが、その方法を見つけることができません。例えば、私は私のFTPフォルダ

  1. FileA_20170209073006539.csvにしている場合
  2. FileB__20170209073006475.csv
  3. FileC_20170209073006485.csv
  4. FileA_20170210073006539.csv
  5. FileB__20170210073006475.csv
  6. FileC_20170210073006485.csv

私は始める必要がありますFileX_20170209ファイル(最古のもの)を処理することにより、

A及び私は持っている場合:

  1. FileB__20170210073006475.csv
  2. FileC_20170210073006485.csv

私はFileA_20170210の存在を待つ必要があります。アグリゲータを使用することはできますか?もしそうなら、どのように?

は、あなたがする必要があるあなたの助け

+0

ここからのリストはありますか?ファイルをソートしてフィルタフィルタを使用して、すべてのファイルがある場合はtrue | falseを返すことができます。ファイルフィルタには状態を保存することができるので、前のファイルを覚えておくことができます。そのため、それらがA .. B .. Cの順番でチェックできます。これは、あなたがA BとCが存在していて、すべての人に真実を返すことができるかどうかを知る第2世論調査で、あなたが間違っていると言う必要があるときに初めて少し難解になります。 –

答えて

0

をありがとう:

tWaitForFile - > tFTPFileList - >あなたのプロセス

をあなたが作るために "*" を使用することができますこれらの二つのコンポーネントで"20100708"によってのみ、ファイルの魔女仕上げを取るために

  • "*20100708"のようなあなたのファイルをフィルタリングするために、マスク
  • "FILE_A*"ファイルの魔法使いだけを取る"FILE_A"