第60章 GoogleDrive
GoogleDrive Component リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
Camel 2.14 から利用可能
Google Drive コンポーネントは、Google Drive Web API 経由で Google ドライブファイルストレージサービス へのアクセスを提供します。
Google ドライブは、OAuth 2.0 プロトコル を使用して Google アカウントを認証し、ユーザーデータへのアクセスを承認します。このコンポーネントを使用する前に、アカウントを作成し、OAuth クレデンシャル を生成 する必要があります。認証情報は、clientId、clientSecret、および refreshToken で設定されます。有効期間の長い refreshToken を生成するための便利なリソースは OAuth プレイグラウンドです。
Maven ユーザーは、このコンポーネントの pom.xml に以下の依存関係を追加する必要があります。
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-google-drive</artifactId>
<version>2.14-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-google-drive</artifactId>
<version>2.14-SNAPSHOT</version>
</dependency>
URI 形式 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
GoogleDrive コンポーネントは以下の URI 形式を使用します。
google-drive://endpoint-prefix/endpoint?[options]
google-drive://endpoint-prefix/endpoint?[options]
エンドポイント接頭辞は以下のいずれかになります。
drive-aboutdrive-appsdrive-changesdrive-channelsdrive-childrendrive-commentsdrive-filesdrive-parentsdrive-permissionsdrive-propertiesdrive-realtimedrive-repliesdrive-revisions
GoogleDriveComponent リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
GoogleDrive コンポーネントは、以下のオプションで設定できます。これらのオプションは、タイプ
org.apache.camel.component.google.drive.GoogleDriveConfiguration のコンポーネントの Bean プロパティー configuration を使用して提供できます。
| オプション | タイプ | 説明 |
|---|---|---|
accessToken
|
String
|
OAuth 2 アクセストークン通常、これは 1 時間後に期限切れになるため、長期間の使用には refreshToken が推奨されます。
|
applicationName
|
String
|
Google ドライブアプリケーション名。たとえば、camel-google-drive/1.0 です。
|
clientId
|
String
|
ドライブアプリケーションのクライアント ID |
clientSecret
|
String
|
ドライブアプリケーションのクライアントシークレット |
refreshToken
|
String
|
OAuth 2 トークンの更新これを使用すると、現在の有効期限が切れるたびに Google ドライブコンポーネントが新しい accessToken を取得することができます。アプリケーションが長い期間であれば必要です。
|
scopes
|
List<String>
|
ドライブアプリケーションでユーザーアカウントに必要なパーミッションのレベルを指定します。詳細は、https://developers.google.com/drive/web/scopes を参照してください。 |
プロデューサーエンドポイント リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
プロデューサーエンドポイントはエンドポイント接頭辞を使用し、続いてエンドポイント名と以下で説明する関連オプションを使用できます。一部のエンドポイントには、短縮エイリアスを使用できます。エンドポイント URI には 接頭辞が含まれている必要があります。
必須ではないエンドポイントオプションは [] で示されます。エンドポイントに必須のオプションがない場合は、[] オプションのセットの 1 つを指定する必要があります。プロデューサーエンドポイントは、Camel Exchange In メッセージに含まれる値を持つ endpoint オプションの名前が含まれる必要がある特別なオプション
inBody を使用することもできます。
エンドポイントオプションは、エンドポイント URI またはメッセージヘッダーで動的に指定できます。メッセージヘッダー名は
CamelGoogleDrive.<option> の形式である必要があります。inBody オプションはメッセージヘッダーを上書きすることに注意してください。つまり、エンドポイントオプション inBody=option は CamelGoogleDrive.option ヘッダーを上書きすることに注意してください。
エンドポイントおよびオプションの詳細は、API ドキュメント( https://developers.google.com/drive/v2/reference/)を参照してください。
1.エンドポイント接頭辞 drive-about リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下のエンドポイントは、以下のように接頭辞
drive-about で呼び出すことができます。
google-drive://drive-about/endpoint?[options]
google-drive://drive-about/endpoint?[options]
| エンドポイント | 短縮形エイリアス | オプション | 結果ボディーのタイプ |
|---|---|---|---|
get
|
com.google.api.services.drive.model.About
|
drive-about の URI オプション リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
| 名前 | タイプ |
|---|
2.エンドポイント接頭辞 drive-apps リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下のエンドポイントは、以下のように接頭辞
drive-apps で呼び出すことができます。
google-drive://drive-apps/endpoint?[options]
google-drive://drive-apps/endpoint?[options]
| エンドポイント | 短縮形エイリアス | オプション | 結果ボディーのタイプ |
|---|---|---|---|
get
|
appId
|
com.google.api.services.drive.model.App
|
|
list
|
com.google.api.services.drive.model.AppList
|
drive-apps の URI オプション リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
| 名前 | タイプ |
|---|---|
appId
|
String
|
3.エンドポイント接頭辞 drive-changes リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下のエンドポイントは、以下のように接頭辞
drive-changes で呼び出すことができます。
google-drive://drive-changes/endpoint?[options]
google-drive://drive-changes/endpoint?[options]
| エンドポイント | 短縮形エイリアス | オプション | 結果ボディーのタイプ |
|---|---|---|---|
get
|
changeId
|
com.google.api.services.drive.model.Change
|
|
list
|
com.google.api.services.drive.model.ChangeList
|
||
watch
|
contentChannel
|
com.google.api.services.drive.model.Channel
|
drive-changes の URI オプション リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
| 名前 | タイプ |
|---|---|
changeId
|
String
|
contentChannel
|
com.google.api.services.drive.model.Channel
|
4.エンドポイント接頭辞ドライブチャネル リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下のエンドポイントは、以下のように接頭辞
drive-channels で呼び出すことができます。
google-drive://drive-channels/endpoint?[options]
google-drive://drive-channels/endpoint?[options]
| エンドポイント | 短縮形エイリアス | オプション | 結果ボディーのタイプ |
|---|---|---|---|
stop
|
contentChannel
|
drive-channel の URI オプション リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
| 名前 | タイプ |
|---|---|
contentChannel
|
com.google.api.services.drive.model.Channel
|
5.エンドポイント接頭辞 drive-children リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下のエンドポイントは、以下のように接頭辞
drive-children で呼び出すことができます。
google-drive://drive-children/endpoint?[options]
google-drive://drive-children/endpoint?[options]
| エンドポイント | 短縮形エイリアス | オプション | 結果ボディーのタイプ |
|---|---|---|---|
delete
|
childId, folderId
|
||
get
|
childId, folderId
|
com.google.api.services.drive.model.ChildReference
|
|
insert
|
content, folderId
|
com.google.api.services.drive.model.ChildReference
|
|
list
|
folderId
|
com.google.api.services.drive.model.ChildList
|
drive-children の URI オプション リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
| 名前 | タイプ |
|---|---|
childId
|
String
|
content
|
com.google.api.services.drive.model.ChildReference
|
folderId
|
String
|
6.エンドポイント接頭辞ドライブ リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下のエンドポイントは、以下のように接頭辞
drive-comments で呼び出すことができます。
google-drive://drive-comments/endpoint?[options]
google-drive://drive-comments/endpoint?[options]
| エンドポイント | 短縮形エイリアス | オプション | 結果ボディーのタイプ |
|---|---|---|---|
delete
|
commentId, fileId
|
||
get
|
commentId, fileId
|
com.google.api.services.drive.model.Comment
|
|
insert
|
content, fileId
|
com.google.api.services.drive.model.Comment
|
|
list
|
fileId
|
com.google.api.services.drive.model.CommentList
|
|
patch
|
commentId, content, fileId
|
com.google.api.services.drive.model.Comment
|
|
update
|
commentId, content, fileId
|
com.google.api.services.drive.model.Comment
|
drive-comment の URI オプション リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
| 名前 | タイプ |
|---|---|
commentId
|
String
|
content
|
com.google.api.services.drive.model.Comment
|
fileId
|
String
|
7.エンドポイント接頭辞ドライブファイル リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下のエンドポイントは、以下のように接頭辞
drive-files で呼び出すことができます。
google-drive://drive-files/endpoint?[options]
google-drive://drive-files/endpoint?[options]
| エンドポイント | 短縮形エイリアス | オプション | 結果ボディーのタイプ |
|---|---|---|---|
copy
|
content, fileId
|
com.google.api.services.drive.model.File
|
|
delete
|
fileId
|
||
emptyTrash
|
|||
get
|
fileId
|
com.google.api.services.drive.model.File
|
|
insert
|
[mediaContent], content
|
com.google.api.services.drive.model.File
|
|
list
|
com.google.api.services.drive.model.FileList
|
||
patch
|
content, fileId
|
com.google.api.services.drive.model.File
|
|
touch
|
fileId
|
com.google.api.services.drive.model.File
|
|
trash
|
fileId
|
com.google.api.services.drive.model.File
|
|
untrash
|
fileId
|
com.google.api.services.drive.model.File
|
|
update
|
[mediaContent], content, fileId
|
com.google.api.services.drive.model.File
|
|
watch
|
contentChannel, fileId
|
com.google.api.services.drive.model.Channel
|
drive-files の URI オプション リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
| 名前 | タイプ |
|---|---|
content
|
com.google.api.services.drive.model.File
|
contentChannel
|
com.google.api.services.drive.model.Channel
|
fileId
|
String
|
mediaContent
|
com.google.api.client.http.AbstractInputStreamContent
|
8.エンドポイント接頭辞 drive-parents リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下のエンドポイントは、以下のように接頭辞
drive-parents で呼び出すことができます。
google-drive://drive-parents/endpoint?[options]
google-drive://drive-parents/endpoint?[options]
| エンドポイント | 短縮形エイリアス | オプション | 結果ボディーのタイプ |
|---|---|---|---|
delete
|
fileId, parentId
|
||
get
|
fileId, parentId
|
com.google.api.services.drive.model.ParentReference
|
|
insert
|
content, fileId
|
com.google.api.services.drive.model.ParentReference
|
|
list
|
fileId
|
com.google.api.services.drive.model.ParentList
|
drive-parents の URI オプション リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
| 名前 | タイプ |
|---|---|
content
|
com.google.api.services.drive.model.ParentReference
|
fileId
|
String
|
parentId
|
String
|
9.エンドポイント接頭辞 drive-permissions リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下のエンドポイントは、以下のように接頭辞
drive-permissions で呼び出すことができます。
google-drive://drive-permissions/endpoint?[options]
google-drive://drive-permissions/endpoint?[options]
| エンドポイント | 短縮形エイリアス | オプション | 結果ボディーのタイプ |
|---|---|---|---|
delete
|
fileId, permissionId
|
||
get
|
fileId, permissionId
|
com.google.api.services.drive.model.Permission
|
|
getIdForEmail
|
email
|
com.google.api.services.drive.model.PermissionId
|
|
insert
|
content, fileId
|
com.google.api.services.drive.model.Permission
|
|
list
|
fileId
|
com.google.api.services.drive.model.PermissionList
|
|
patch
|
content, fileId, permissionId
|
com.google.api.services.drive.model.Permission
|
|
update
|
content, fileId, permissionId
|
com.google.api.services.drive.model.Permission
|
drive-permissions の URI オプション リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
| 名前 | タイプ |
|---|---|
content
|
com.google.api.services.drive.model.Permission
|
email
|
String
|
fileId
|
String
|
permissionId
|
String
|
10.エンドポイント接頭辞 drive-properties リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下のエンドポイントは、以下のように接頭辞
drive-properties で呼び出すことができます。
google-drive://drive-properties/endpoint?[options]
google-drive://drive-properties/endpoint?[options]
| エンドポイント | 短縮形エイリアス | オプション | 結果ボディーのタイプ |
|---|---|---|---|
delete
|
fileId, propertyKey
|
||
get
|
fileId, propertyKey
|
com.google.api.services.drive.model.Property
|
|
insert
|
content, fileId
|
com.google.api.services.drive.model.Property
|
|
list
|
fileId
|
com.google.api.services.drive.model.PropertyList
|
|
patch
|
content, fileId, propertyKey
|
com.google.api.services.drive.model.Property
|
|
update
|
content, fileId, propertyKey
|
com.google.api.services.drive.model.Property
|
drive-properties の URI オプション リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
| 名前 | タイプ |
|---|---|
content
|
com.google.api.services.drive.model.Property
|
fileId
|
String
|
propertyKey
|
String
|
11.エンドポイント接頭辞 drive-realtime リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下のエンドポイントは、以下のように接頭辞
drive-realtime で呼び出すことができます。
google-drive://drive-realtime/endpoint?[options]
google-drive://drive-realtime/endpoint?[options]
| エンドポイント | 短縮形エイリアス | オプション | 結果ボディーのタイプ |
|---|---|---|---|
get
|
fileId
|
||
update
|
[mediaContent], fileId
|
drive-realtime の URI オプション リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
| 名前 | タイプ |
|---|---|
fileId
|
String
|
mediaContent
|
com.google.api.client.http.AbstractInputStreamContent
|
12.エンドポイント接頭辞ドライブ リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下のエンドポイントは、以下のように接頭辞
drive-replies で呼び出すことができます。
google-drive://drive-replies/endpoint?[options]
google-drive://drive-replies/endpoint?[options]
| エンドポイント | 短縮形エイリアス | オプション | 結果ボディーのタイプ |
|---|---|---|---|
delete
|
commentId, fileId, replyId
|
||
get
|
commentId, fileId, replyId
|
com.google.api.services.drive.model.CommentReply
|
|
insert
|
commentId, content, fileId
|
com.google.api.services.drive.model.CommentReply
|
|
list
|
commentId, fileId
|
com.google.api.services.drive.model.CommentReplyList
|
|
patch
|
commentId, content, fileId, replyId
|
com.google.api.services.drive.model.CommentReply
|
|
update
|
commentId, content, fileId, replyId
|
com.google.api.services.drive.model.CommentReply
|
drive-replies の URI オプション リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
| 名前 | タイプ |
|---|---|
commentId
|
String
|
content
|
com.google.api.services.drive.model.CommentReply
|
fileId
|
String
|
replyId
|
String
|
13.エンドポイント接頭辞 drive-revisions リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下のエンドポイントは、以下のように接頭辞
drive-revisions で呼び出すことができます。
google-drive://drive-revisions/endpoint?[options]
google-drive://drive-revisions/endpoint?[options]
| エンドポイント | 短縮形エイリアス | オプション | 結果ボディーのタイプ |
|---|---|---|---|
delete
|
fileId, revisionId
|
||
get
|
fileId, revisionId
|
com.google.api.services.drive.model.Revision
|
|
list
|
fileId
|
com.google.api.services.drive.model.RevisionList
|
|
patch
|
content, fileId, revisionId
|
com.google.api.services.drive.model.Revision
|
|
update
|
content, fileId, revisionId
|
com.google.api.services.drive.model.Revision
|
drive-revisions の URI オプション リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
| 名前 | タイプ |
|---|---|
content
|
com.google.api.services.drive.model.Revision
|
fileId
|
String
|
revisionId
|
String
|
コンシューマーエンドポイント リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
プロデューサーエンドポイントはいずれもコンシューマーエンドポイントとして使用できます。コンシューマーエンドポイントは、
consumer. 接頭辞が付い た Scheduled Poll Consumer オプション を使用して、エンドポイントの呼び出しをスケジュールできます。配列またはコレクションを返すコンシューマーエンドポイントは、要素ごとにエクスチェンジを 1 つ生成し、それらのルートはエクスチェンジごとに 1 回実行されます。
メッセージヘッダー リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
URI オプションは、
CamelGoogleDrive. 接頭辞が付いたプロデューサーエンドポイントのメッセージヘッダーで指定できます。
メッセージボディー リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
すべての結果メッセージ本文は、GoogleDriveComponent が使用する基礎となる API によって提供されるオブジェクトを使用します。プロデューサーエンドポイントは、
inBody エンドポイント URI パラメーターに受信メッセージボディーのオプション名を指定できます。配列またはコレクションを返すエンドポイントの場合、コンシューマーエンドポイントはすべての要素を個別のメッセージにマップします。