第40章 Dropbox


Camel Dropbox コンポーネント

Camel 2.14 から利用可能
dropbox: コンポーネントを使用すると、Dropbox リモートフォルダーをメッセージのプロデューサーまたはコンシューマーとして扱うことができます。Dropbox Java Core API (このコンポーネントの参照バージョンは 1.7.x)を使用する場合、この Camel コンポーネントには以下の機能があります。
  • コンシューマーとして、ファイルをダウンロードし、クエリーでファイルを検索します。
  • プロデューサーとしてファイルのダウンロード、リモートディレクトリー間でのファイルの移動、ファイル/ディレクトリーの削除、ファイルのアップロード、クエリーによるファイルの検索
Maven ユーザーは、このコンポーネントの以下の依存関係を pom.xml に追加する必要があります。
<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-dropbox</artifactId>
    <version>x.x.x</version>
    <!-- use the same version as your Camel core version -->
</dependency>
Copy to Clipboard Toggle word wrap

URI 形式

dropbox://[operation]?[options]
Copy to Clipboard Toggle word wrap
ここでの operation は、Dropbox リモートフォルダーで実行する特定のアクション(通常は CRUD アクション)です。

操作

Expand
操作
説明
del
Dropbox のファイルまたはディレクトリーを削除します。
get
Dropbox からファイルをダウンロードする
move
Dropbox のフォルダーからファイルの移動
put
Dropbox でのファイルのアップロード
search
文字列クエリーに基づいて Dropbox でファイルを検索する
操作 には追加のオプションが必要です。特定の操作には一部は必須です。

オプション

Dropbox API と連携するには、accessToken および clientIdentifier を取得する必要があります。取得する方法は、Dropbox のドキュメント を参照してください。
以下は、すべての操作に必要なオプションの一覧です。
Expand
プロパティー
Mandatory
説明
accessToken
true
特定の Dropbox ユーザーの API リクエストを行うためのアクセストークン
clientIdentifier
true
API リクエストを行うために登録されたアプリケーションの名前

del 操作

Dropbox のファイルを削除します。
Camel プロデューサーとしてのみ動作します。
以下は、この操作のオプションの一覧です。
Expand
プロパティー
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");

結果メッセージヘッダー

メッセージ結果に以下のヘッダーが設定されます。
Expand
プロパティー
DELETED_PATH
ドロップボックスで削除されたパスの名前

結果メッセージのボディー

以下のオブジェクトはメッセージボディーの結果に設定されます。
Expand
オブジェクトタイプ
説明
String
ドロップボックスで削除されたパスの名前

get (download)操作

Dropbox からファイルをダウンロードします。
Camel プロデューサーまたは Camel コンシューマーとして機能します。
以下は、この操作のオプションの一覧です。
Expand
プロパティー
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/");

結果メッセージヘッダー

メッセージ結果に以下のヘッダーが設定されます。
Expand
プロパティー
DOWNLOADED_FILE
1 つのファイルのダウンロードの場合、ダウンロードしたリモートファイルのパス
DOWNLOADED_FILES
ファイルが複数ダウンロードされている場合は、ダウンロードしたリモートファイルのパス

結果メッセージのボディー

以下のオブジェクトはメッセージボディーの結果に設定されます。
Expand
オブジェクトタイプ
説明
ByteArrayOutputStream
単一ファイルのダウンロードの場合、ダウンロードしたファイルを表すストリーム。
Map<String, ByteArrayOutputStream>
複数のファイルをダウンロードすると、がキーとして指定されたリモートファイルのパスと、ダウンロードしたファイルを表すストリームが値として、マップがダウンロードされます。

移動操作

Dropbox のファイルをあるフォルダーから別のフォルダーに移動します。
Camel プロデューサーとしてのみ動作します。
以下は、この操作のオプションの一覧です。
Expand
プロパティー
Mandatory
説明
remotePath
true
移動する元のファイルまたはディレクトリー
newRemotePath
true
宛先ファイルまたはフォルダー

サンプル

from ("direct:start").to ("dropbox://move?accessToken=XXX&clientIdentifier=XXX&remotePath=/root/folder1&newRemotePath=/root/folder2").to ("mock:result");

結果メッセージヘッダー

メッセージ結果に以下のヘッダーが設定されます。
Expand
プロパティー
MOVED_PATH
ドロップボックスで移動したパスの名前

結果メッセージのボディー

以下のオブジェクトはメッセージボディーの結果に設定されます。
Expand
オブジェクトタイプ
説明
String
ドロップボックスで移動したパスの名前

put (upload)操作

Dropbox でファイルをアップロードします。
Camel プロデューサーとして機能します。
以下は、この操作のオプションの一覧です。
Expand
プロパティー
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");

結果メッセージヘッダー

メッセージ結果に以下のヘッダーが設定されます。
Expand
プロパティー
UPLOADED_FILE
単一ファイルのアップロードの場合は、アップロードされたリモートパスのパス。
UPLOADED_FILES
複数のファイルのアップロードの場合は、リモートパスと共に文字列がアップロードされます。

結果メッセージのボディー

以下のオブジェクトはメッセージボディーの結果に設定されます。
Expand
オブジェクトタイプ
説明
String
単一ファイルのアップロードの場合は、アップロード操作の結果、OK、または KO
Map<String, DropboxResultCode>
複数のファイルのアップロードの場合、がリモートファイルのパスとしてアップロードされるマップ。アップロード操作の結果、OK または KO の値

検索操作

サブディレクトリーを含むリモート Dropbox フォルダー内で検索します。
Camel プロデューサーおよび Camel コンシューマーとして機能します。
以下は、この操作のオプションの一覧です。
Expand
プロパティー
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");

結果メッセージヘッダー

メッセージ結果に以下のヘッダーが設定されます。
Expand
プロパティー
FOUNDED_FILES
検出されたファイルパスの一覧

結果メッセージのボディー

以下のオブジェクトはメッセージボディーの結果に設定されます。
Expand
オブジェクトタイプ
説明
List<DbxEntry>
検出されたファイルパスの一覧。このオブジェクトの詳細は、Dropbox のドキュメント http://dropbox.github.io/dropbox-sdk-java/api-docs/v1.7.x/com/dropbox/core/DbxEntry.htmlを参照してください。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat