

# CloudFront SaaS Manager プロパティのヘルパーメソッド
<a name="saas-specific-logic-function-code"></a>

CloudFront SaaS Manager の次のヘルパー関数を使用して、作成した関数内のマルチテナントディストリビューションの値を取得します。このページの例を使用するには、まず JavaScript ランタイム 2.0 を使用して CloudFront 関数を作成する必要があります。詳細については、[CloudFront Functions の JavaScript ランタイム 2.0 の機能](functions-javascript-runtime-20.md) を参照してください。

**Topics**
+ [接続グループ](#connection-groups-helper-function)
+ [ディストリビューションテナント](#distribution-tenants-helper-functions)

## 接続グループ
<a name="connection-groups-helper-function"></a>

ディストリビューションテナントに関連付けられている接続グループにはドメイン名があります。

この値を取得するには、イベントオブジェクトの `context` サブオブジェクトの `endpoint` フィールドを使用します。

**[リクエスト**]

```
const value = event.context.endpoint;
```

**レスポンス**

レスポンスは、d111111abcdef8.cloudfront.net などの接続グループのドメイン名を含む `string` です。`endpoint` フィールドは、関連付けられた接続グループを持つマルチテナントディストリビューションに対して関数が呼び出された場合にのみ表示されます。詳細については、「[コンテキストオブジェクト](functions-event-structure.md#functions-event-structure-context)」を参照してください。

## ディストリビューションテナント
<a name="distribution-tenants-helper-functions"></a>

CloudFront Functions には、特定のディストリビューションテナント値へのアクセスを提供するモジュールがあります。

このモジュールを使用するには、関数コードの最初の行に、次のステートメントを含めます。

```
import cf from 'cloudfront';
```

次の例は、直接またはネストされた呼び出し関数を介して、`handler` 関数でのみ使用できます。

### `distributionTenant.id` フィールド
<a name="distribution-tenants-field"></a>

このフィールドを使用して、ディストリビューションテナント ID の値を取得します。

**[リクエスト**]

```
const value = cf.distributionTenant.id;
```

**レスポンス**

レスポンスは、`dt_1a2b3c4d5e6f7` などのディストリビューションテナント ID を含む `string` です。

**エラー処理**

関数が標準ディストリビューションに対して呼び出された場合、`distributionTenant.id` フィールドを指定すると `distributionTenant module is not available` 型エラーが返されます。このユースケースを処理するには、コードに `try` および `catch` ブロックを追加できます。

### `distributionTenant.parameters.get()` 方法
<a name="distribution-tenant-parameters-get-method"></a>

このメソッドを使用して、指定したディストリビューションテナントパラメータ名の値を返します。

```
distributionTenant.parameters.get("key");
```

`key`: 値を取得するディストリビューションテナントパラメータ名。

**[リクエスト]**

```
const value = distributionTenant.parameters.get("key");
```

**応答**

レスポンスは、ディストリビューションテナントパラメータの値を含む `string` です。例えば、キー名が `TenantPath` の場合、このパラメータの値は `tenant1` になります。

**エラー処理**

次のエラーが表示される場合があります。
+ 関数が標準ディストリビューションに対して呼び出された場合、`distributionTenant.parameters.get()` メソッドは `distributionTenant module is not available` 型エラーを返します。
+ 指定したディストリビューションテナントパラメータが存在しない場合は、`DistributionTenantParameterKeyNotFound` エラーが返されます。

これらのユースケースを管理するには、コードに `try` および `catch` ブロックを追加できます。