90.8. Put (アップロード) 操作
Dropbox にファイルをアップロードします。
キャメルプロデューサーとして活動。
以下に、この操作のオプションを示します。
プロパティー | 必須 | 説明 |
---|---|---|
|
| add または force このオプションは、ドロップボックスにファイルを保存する方法を指定します。"add" の場合、同じ名前のファイルがドロップボックスにすでに存在すると、新しいファイルの名前が変更されます。"force" の場合、ドロップボックスに同名のファイルがすでに存在する場合、上書きされます。 |
|
| ローカルファイルシステムから Dropbox にアップロードするフォルダーまたはファイル。このオプションが設定されている場合、Camel メッセージ本文のコンテンツを含む単一のファイルとしてアップロードするよりも優先されます (メッセージ本文はバイト配列に変換されます)。 |
|
| Dropbox 上のフォルダーの宛先。プロパティーが設定されていない場合、コンポーネントはローカルパスと同じリモートパスにファイルをアップロードします。Windows を使用する場合、または絶対 localPath を使用しない場合、次のような例外が発生する可能性があります。
Caused by: java.lang.IllegalArgumentException: 'path': bad path: must start with "/": "C:/My/File" |
90.8.1. サンプル
from("direct:start").to("dropbox://put?accessToken=XXX&clientIdentifier=XXX&uploadMode=add&localPath=/root/folder1") .to("mock:result"); from("direct:start").to("dropbox://put?accessToken=XXX&clientIdentifier=XXX&uploadMode=add&localPath=/root/folder1&remotePath=/root/folder2") .to("mock:result");
メッセージボディーのコンテンツを含む単一のファイルをアップロードするには
from("direct:start") .setHeader(DropboxConstants.HEADER_PUT_FILE_NAME, constant("myfile.txt")) .to("dropbox://put?accessToken=XXX&clientIdentifier=XXX&uploadMode=add&remotePath=/root/folder2") .to("mock:result");
ファイルの名前は、優先順位に従ってヘッダー DropboxConstants.HEADER_PUT_FILE_NAME
または Exchange.FILE_NAME
に指定できます。ヘッダーが指定されていない場合、メッセージ ID (uuid) がファイル名として使用されます。
90.8.2. 結果メッセージのヘッダー
メッセージの結果には、次のヘッダーが設定されます。
プロパティー | 値 |
---|---|
| 単一ファイルのアップロードの場合、アップロードされたリモートパスのパス |
| 複数のファイルをアップロードする場合は、アップロードされたリモートパスを含む文字列 |
90.8.3. 結果メッセージボディー
メッセージボディーの結果には、次のオブジェクトが設定されます。
オブジェクトタイプ | 説明 |
---|---|
| 単一ファイルのアップロードの場合、アップロード操作の結果、OK または KO |
| 複数のファイルをアップロードする場合は、アップロードされたリモートファイルのパスをキーとして、アップロード操作の結果を値として持つマップ、OK または KO |