RemoteTableCacheManager - スコープ指定
RemoteTableCacheManager API は、指定したリモートテーブルのキャッシュをフラッシュするメソッドを提供します。
多くの場合、リモートテーブルはパフォーマンス上の理由からクエリ結果をキャッシュしますが、ソースのデータが変更されると、キャッシュされた結果が古くなります。スコープ対象のアプリケーションは、この API を呼び出してリモートテーブルキャッシュをフラッシュし、後続のクエリでソースシステムから最新のデータをフェッチできるようにします。この API を使用して、スコープ対象のアプリケーションのカスタムロジック、ワークフロー、またはトリガーに基づいてキャッシュのフラッシュを自動化します。
RemoteTableCacheManager API はリモートテーブルプラグイン (com.glide.script.vtable) を必要とし、sn_vtable 名前空間内で提供されます。詳細については、「 リモートテーブル」を参照してください。
RemoteTableCacheManager:flushCache(文字列 tableName)
指定したリモートテーブルのキャッシュをフラッシュします。
キャッシュをフラッシュすると、リモートテーブルに対する後続のクエリで、ソースシステムから新しいデータがフェッチされます。
| 名前 | タイプ | 説明 |
|---|---|---|
| tableName | 文字列 | リモートテーブルの名前。現在のスコープ内の有効なリモートテーブルである必要があります。 |
| タイプ | 説明 |
|---|---|
| なし |
結果に関する詳細を含むメッセージがシステムログに書き込まれます。
成功メッセージ:
- [RemoteTableCacheManager] - リモートテーブル <tableName> のフラッシュ済みキャッシュ。
エラーメッセージ:
- [RemoteTableCacheManager] - tableName を null にすることはできません。
- [RemoteTableCacheManager] - <tableName> という名前のリモートテーブルが見つかりません。
- [RemoteTableCacheManager] - テーブルスコープが null です。
- [RemoteTableCacheManager] - 現在のスコープが null です。
- [RemoteTableCacheManager] - 現在のスコープ <currentScope> がテーブルスコープ <tableScope> と同じではありません。
この例では、リモートテーブルx_app_my_remote_tableのキャッシュをフラッシュします。
sn_vtable.RemoteTableCacheManager.flushCache("x_app_my_remote_table");
出力:
[RemoteTableCacheManager] - Flushed cache for Remote Table: x_app_my_remote_table