Fuse 6 is no longer supported
As of February 2025, Red Hat Fuse 6 is no longer supported. If you are using Fuse 6, please upgrade to Red Hat build of Apache Camel.第40章 Dropbox
Camel Dropbox コンポーネント リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Camel 2.14 から利用可能
dropbox: コンポーネントを使用すると、Dropbox リモートフォルダーをメッセージのプロデューサーまたはコンシューマーとして扱うことができます。Dropbox Java Core API (このコンポーネントの参照バージョンは 1.7.x)を使用する場合、この Camel コンポーネントには以下の機能があります。
- コンシューマーとして、ファイルをダウンロードし、クエリーでファイルを検索します。
- プロデューサーとしてファイルのダウンロード、リモートディレクトリー間でのファイルの移動、ファイル/ディレクトリーの削除、ファイルのアップロード、クエリーによるファイルの検索
Maven ユーザーは、このコンポーネントの以下の依存関係を
pom.xml
に追加する必要があります。
URI 形式 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
dropbox://[operation]?[options]
dropbox://[operation]?[options]
ここでの operation は、Dropbox リモートフォルダーで実行する特定のアクション(通常は CRUD アクション)です。
操作 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
操作
|
説明
|
---|---|
del
|
Dropbox のファイルまたはディレクトリーを削除します。
|
get
|
Dropbox からファイルをダウンロードする
|
move
|
Dropbox のフォルダーからファイルの移動
|
put
|
Dropbox でのファイルのアップロード
|
search
|
文字列クエリーに基づいて Dropbox でファイルを検索する
|
操作 には追加のオプションが必要です。特定の操作には一部は必須です。
オプション リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Dropbox API と連携するには、accessToken および clientIdentifier を取得する必要があります。取得する方法は、Dropbox のドキュメント を参照してください。
以下は、すべての操作に必要なオプションの一覧です。
プロパティー
|
Mandatory
|
説明
|
---|---|---|
accessToken
|
true
|
特定の Dropbox ユーザーの API リクエストを行うためのアクセストークン
|
clientIdentifier
|
true
|
API リクエストを行うために登録されたアプリケーションの名前
|
del 操作 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Dropbox のファイルを削除します。
Camel プロデューサーとしてのみ動作します。
以下は、この操作のオプションの一覧です。
プロパティー
|
Mandatory
|
説明
|
---|---|---|
remotePath
|
true
|
Dropbox で削除するフォルダーまたはファイル
|
サンプル リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
from ("direct:start").to ("dropbox://del?accessToken=XXX&clientIdentifier=XXX&remotePath=/root/folder1").to ("mock:result");
from ("direct:start").to ("dropbox://del?accessToken=XXX&clientIdentifier=XXX&remotePath=/root/folder1/file1.tar.gz").to ("mock:result");
結果メッセージヘッダー リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
メッセージ結果に以下のヘッダーが設定されます。
プロパティー
|
値
|
---|---|
DELETED_PATH
|
ドロップボックスで削除されたパスの名前
|
結果メッセージのボディー リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下のオブジェクトはメッセージボディーの結果に設定されます。
オブジェクトタイプ
|
説明
|
---|---|
String
|
ドロップボックスで削除されたパスの名前
|
get (download)操作 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Dropbox からファイルをダウンロードします。
Camel プロデューサーまたは Camel コンシューマーとして機能します。
以下は、この操作のオプションの一覧です。
プロパティー
|
Mandatory
|
説明
|
---|---|---|
remotePath
|
true
|
Dropbox からダウンロードするフォルダーまたはファイル
|
サンプル リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
from ("direct:start").to ("dropbox://get?accessToken=XXX&clientIdentifier=XXX&remotePath=/root/folder1/file1.tar.gz").to ("file:///home/kermit/?fileName=file1.tar.gz");
from ("direct:start").to ("dropbox://get?accessToken=XXX&clientIdentifier=XXX&remotePath=/root/folder1").to ("mock:result");
from ("dropbox://get?accessToken=XXX&clientIdentifier=XXX&remotePath=/root/folder1").to ("file:///home/kermit/");
結果メッセージヘッダー リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
メッセージ結果に以下のヘッダーが設定されます。
プロパティー
|
値
|
---|---|
DOWNLOADED_FILE
|
1 つのファイルのダウンロードの場合、ダウンロードしたリモートファイルのパス
|
DOWNLOADED_FILES
|
ファイルが複数ダウンロードされている場合は、ダウンロードしたリモートファイルのパス
|
結果メッセージのボディー リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下のオブジェクトはメッセージボディーの結果に設定されます。
オブジェクトタイプ
|
説明
|
---|---|
ByteArrayOutputStream
|
単一ファイルのダウンロードの場合、ダウンロードしたファイルを表すストリーム。
|
Map<String, ByteArrayOutputStream>
|
複数のファイルをダウンロードすると、がキーとして指定されたリモートファイルのパスと、ダウンロードしたファイルを表すストリームが値として、マップがダウンロードされます。
|
移動操作 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Dropbox のファイルをあるフォルダーから別のフォルダーに移動します。
Camel プロデューサーとしてのみ動作します。
以下は、この操作のオプションの一覧です。
プロパティー
|
Mandatory
|
説明
|
---|---|---|
remotePath
|
true
|
移動する元のファイルまたはディレクトリー
|
newRemotePath
|
true
|
宛先ファイルまたはフォルダー
|
サンプル リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
from ("direct:start").to ("dropbox://move?accessToken=XXX&clientIdentifier=XXX&remotePath=/root/folder1&newRemotePath=/root/folder2").to ("mock:result");
結果メッセージヘッダー リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
メッセージ結果に以下のヘッダーが設定されます。
プロパティー
|
値
|
---|---|
MOVED_PATH
|
ドロップボックスで移動したパスの名前
|
結果メッセージのボディー リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下のオブジェクトはメッセージボディーの結果に設定されます。
オブジェクトタイプ
|
説明
|
---|---|
String
|
ドロップボックスで移動したパスの名前
|
put (upload)操作 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Dropbox でファイルをアップロードします。
Camel プロデューサーとして機能します。
以下は、この操作のオプションの一覧です。
プロパティー
|
Mandatory
|
説明
|
---|---|---|
uploadMode
|
true
|
このオプションを追加または強制すると、ドロップボックスにファイルを保存する方法を指定します。add の場合、同じ名前のファイルがすでにドロップボックスに存在する場合、新しいファイルの名前が変更されます。同じ名前のファイルがすでに存在する場合は、これは上書きされます。
|
localPath
|
true
|
ローカルファイルシステム から Dropbox にアップロードするフォルダーまたはファイル。
|
remotePath
|
false
|
Dropbox のフォルダー宛先。プロパティーが設定されていない場合、コンポーネントはローカルパスと同等のリモートパス上のファイルをアップロードします。
|
サンプル リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
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");
結果メッセージヘッダー リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
メッセージ結果に以下のヘッダーが設定されます。
プロパティー
|
値
|
---|---|
UPLOADED_FILE
|
単一ファイルのアップロードの場合は、アップロードされたリモートパスのパス。
|
UPLOADED_FILES
|
複数のファイルのアップロードの場合は、リモートパスと共に文字列がアップロードされます。
|
結果メッセージのボディー リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下のオブジェクトはメッセージボディーの結果に設定されます。
オブジェクトタイプ
|
説明
|
---|---|
String
|
単一ファイルのアップロードの場合は、アップロード操作の結果、OK、または KO
|
Map<String, DropboxResultCode>
|
複数のファイルのアップロードの場合、がリモートファイルのパスとしてアップロードされるマップ。アップロード操作の結果、OK または KO の値
|
検索操作 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
サブディレクトリーを含むリモート Dropbox フォルダー内で検索します。
Camel プロデューサーおよび Camel コンシューマーとして機能します。
以下は、この操作のオプションの一覧です。
プロパティー
|
Mandatory
|
説明
|
---|---|---|
remotePath
|
true
|
検索先の Dropbox のフォルダー。
|
query
|
false
|
検索するサブ文字列のスペース区切りリスト。ファイルは、すべてのサブ文字列が含まれる場合にのみ一致します。このオプションが設定されていない場合、すべてのファイルが一致します。
|
サンプル リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
from ("dropbox://search?accessToken=XXX&clientIdentifier=XXX&remotePath=/XXX&query=XXX").to ("mock:result");
from ("direct:start").to ("dropbox://search?accessToken=XXX&clientIdentifier=XXX&remotePath=/XXX").to ("mock:result");
結果メッセージヘッダー リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
メッセージ結果に以下のヘッダーが設定されます。
プロパティー
|
値
|
---|---|
FOUNDED_FILES
|
検出されたファイルパスの一覧
|
結果メッセージのボディー リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下のオブジェクトはメッセージボディーの結果に設定されます。
オブジェクトタイプ
|
説明
|
---|---|
List<DbxEntry>
|
検出されたファイルパスの一覧。このオブジェクトの詳細は、Dropbox のドキュメント http://dropbox.github.io/dropbox-sdk-java/api-docs/v1.7.x/com/dropbox/core/DbxEntry.htmlを参照してください。
|