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