5.15. SPI
以下のクラス図は、永続 API の主な SPI インターフェースを示しています。
図5.1 永続性 SPI
クラスに関する注意事項
- ByteBuffer: オブジェクトのシリアライズされた形式を抽象化します。
- MarshalledEntry: キャッシュに追加されたキー値に対応する永続ストア内に保持される情報を抽象化します。シリアライズされた(バイトバッファー)およびデシリアライズ(Object)形式の両方でこの情報を読み取るメソッドを提供します。通常、ストアから読み取られ たデータはシリアライズされた形式で保持され、MarishalledEntry 実装内にオンデマンドでデシリアライズされます。
- CacheWriter および CacheLoader は、ストアの読み書きを行うための基本的な方法を提供します。
- AdvancedCacheLoader および AdvancedCacheWriter は、有効期限の切れたエントリーの並行反復とパージ、削除およびサイズなど、ストレージを一括して操作する操作を提供します。
プロバイダーは、以下のインターフェースのサブセットのみを実装するように選択することができます。
- AdvancedCacheWriter を実装しないと、指定されたライターが期限切れのエントリーをパージしたり、消去したりすることができません。
- ローダーが AdvancedCacheLoader インクラインを実装していない場合は、プリロードやキャッシュの反復に参加しません(ストリーム操作に必要)。
既存のストアを新しい API に移行したり、新しいストア実装を作成したりする場合は、SingleFileStore が開始点/サンプルになっている可能性があります。