第115章 Google カレンダーコンポーネント
Camel バージョン 2.15 から利用可能
Google Calendar コンポーネントは、Google Calendar Web API 経由で Google カレンダー へのアクセスを提供します。
Google カレンダーは、Google アカウントの認証に OAuth 2.0 プロトコル を使用し、ユーザーデータへのアクセスを承認します。このコンポーネントを使用する前に、 アカウントを作成し、OAuth 認証情報を生成 する必要があります。認証情報は、clientId、clientSecret、および refreshToken で構成されます。有効期間の長い refreshToken を生成するための便利なリソースは OAuth playground です。
Maven ユーザーは、このコンポーネントの pom.xml に以下の依存関係を追加する必要があります。
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-google-calendar</artifactId> <version>2.15.0</version> </dependency>
115.1. 1.Google カレンダーオプション
Google Calendar コンポーネントは、以下に示す 3 つのオプションをサポートします。
Name | 説明 | デフォルト | Type |
---|---|---|---|
設定 (共通) | 共有設定の使用 | GoogleCalendar Configuration | |
clientFactory (advanced) | クライアントを作成するために GoogleCalendarClientFactory をファクトリーとして使用します。デフォルトでは BatchGoogleCalendarClientFactory を使用します。 | GoogleCalendarClient Factory | |
resolveProperty Placeholders (advanced) | 起動時にコンポーネント自体がプロパティープレースホルダーを解決するかどうか。String タイプのプロパティーのみがプロパティープレースホルダーを使用できます。 | true | boolean |
Google カレンダーエンドポイントは、URI 構文を使用して設定します。
google-calendar:apiName/methodName
以下の path パラメーターおよびクエリーパラメーターを使用します。
115.1.1. パスパラメーター(2 パラメーター):
Name | 説明 | デフォルト | Type |
---|---|---|---|
apiName | 必要な 操作の種類 | GoogleCalendarApiName | |
methodName | 選択した操作に使用するサブ操作が 必要 | 文字列 |
115.1.2. クエリーパラメーター(14 パラメーター):
Name | 説明 | デフォルト | Type |
---|---|---|---|
accessToken (common) | OAuth 2 アクセストークンこれは通常 1 時間後に期限切れになるため、長期の使用には refreshToken が推奨されます。 | 文字列 | |
applicationName (common) | Google カレンダーアプリケーション名。例: camel-google-calendar/1.0 | 文字列 | |
clientId (common) | カレンダーアプリケーションのクライアント ID | 文字列 | |
clientSecret (common) | カレンダーアプリケーションのクライアントシークレット | 文字列 | |
emailAddress (common) | Google サービスアカウント の emailAddress。 | 文字列 | |
inBody (common) | エクスチェンジ In Body で渡されるパラメーターの名前を設定します。 | 文字列 | |
p12FileName (common) | Google サービスアカウントで使用する秘密鍵を持つ p12 ファイルの名前。 | 文字列 | |
refreshToken (common) | OAuth 2 更新トークン。これを使用すると、Google カレンダーコンポーネントは、現在期限切れになるたびに新しい accessToken を取得できます。アプリケーションの有効期間は必要となります。 | 文字列 | |
scopes (common) | カレンダーアプリケーションが必要とするパーミッションをユーザーアカウントに指定します。複数のスコープはコンマで区切ることができます。詳細は、https://developers.google.com/google-apps/calendar/auth を参照してください。 | 文字列 | |
User (common) | アプリケーションがサービスアカウントフローで権限を借用しようとしているユーザーのメールアドレス | 文字列 | |
bridgeErrorHandler (consumer) | コンシューマーの Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、コンシューマーが受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、コンシューマーは org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | false | boolean |
exceptionHandler (consumer) | コンシューマーによるカスタム ExceptionHandler の使用を許可します。bridgeErrorHandler オプションが有効な場合は、このオプションは使用されていないことに注意してください。デフォルトでは、コンシューマーは例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | ExceptionHandler | |
exchangePattern (consumer) | コンシューマーがエクスチェンジを作成する際に交換パターンを設定します。 | ExchangePattern | |
同期 (詳細) | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるようにするかを設定します(サポートされている場合)。 | false | boolean |