104.3. 移動および削除操作


移動または削除操作は、ルーティングが完了した後 (ポストコマンド) に実行されます。そのため、Exchange の処理中、ファイルはまだ受信トレイフォルダーにあります。

これを例で説明しましょう。

Copy to Clipboard Toggle word wrap
from("file://inbox?move=.done").to("bean:handleOrder");

ファイルが inbox フォルダーにドロップされると、ファイルconsumer はこれに気づき、handleOrder Bean にルーティングされる新しい FileExchange を作成します。次に、Bean は File オブジェクトを処理します。この時点で、ファイルはまだ inbox フォルダーにあります。Bean が完了してルートが完了すると、file consumer は移動操作を実行し、ファイルを .done サブフォルダーに移動します。

move および preMove オプションは、ディレクトリー名と見なされます (ただし、File 言語Simple などの式を使用する場合は、式の評価の結果をファイル名として使用します。たとえば、以下のように設定した場合、

Copy to Clipboard Toggle word wrap
move=../backup/copy-of-${file:name}

File 言語 を使用しています。つまり、使用するように返されたファイル名を使用しています)。これは、相対または絶対のいずれかになります。相対の場合、ディレクトリーは、ファイルが消費されたフォルダー内のサブフォルダーとして作成されます。

デフォルトでは、Camel は消費されたファイルを、ファイルが消費されたディレクトリーに相対的な .camel サブフォルダーに移動します。

処理後にファイルを削除する場合、ルートは次のようになります。

Copy to Clipboard Toggle word wrap
from("file://inobox?delete=true").to("bean:handleOrder");

処理 にファイルを移動する 事前 移動操作が導入されました。これにより、処理される前にこのサブフォルダーに移動されるときに、どのファイルがスキャンされたかをマークできます。

Copy to Clipboard Toggle word wrap
from("file://inbox?preMove=inprogress").to("bean:handleOrder");

pre の動きと通常の動きを組み合わせることができます。

Copy to Clipboard Toggle word wrap
from("file://inbox?preMove=inprogress&move=.done").to("bean:handleOrder");

したがって、この状況では、ファイルは処理中は inprogress フォルダーにあり、処理後は .done フォルダーに移動されます。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat, Inc.