Org クラス
名前空間
使用方法
キャッシュキー形式
次の表は、put、get、contains など、このクラスの一部のメソッドで取るキーパラメータの形式の一覧です。
| キー形式 | 説明 |
|---|---|
| namespace.partition.key | 完全修飾されたキー名。 |
| key | namespace.partition プレフィックスが省略された場合、デフォルトとしてマークされたパーティションを参照します。 |
| local.partition.key | 組織に名前空間が定義されていない場合、local プレフィックスを使用して組織の名前空間を参照します。組織に名前空間が定義されている場合も、local プレフィックスはその組織の名前空間を参照します。 |
例
このクラスは、サンプル Visualforce ページのコントローラです (後続のコードサンプルを参照)。Visualforce ページが action 属性によって読み込まれたときに呼び出す init() メソッドによって、キャッシュ値は最初にキャッシュに追加されます。キャッシュキーには、namespace.partition プレフィックスは含まれません。キーはすべて組織のデフォルトパーティションを参照します。このサンプルを実行するには、パーティションを作成してデフォルトとしてマークします。
Visualforce ページには 4 つの出力コンポーネントが含まれます。これらのコンポーネントは、コントローラの get メソッドをコールし、このメソッドがキャッシュから日付、MyData 内部クラスに基づくデータ、カウンタ、テキスト値、リストの各値を返します。リストのサイズも返します。
Visualforce ページには 2 つのボタンも含まれます。[Rerender (再表示)] ボタンはコントローラの go() メソッドを呼び出します。このメソッドは、キャッシュのカウンタとカスタムデータの値を増やします。[Rerender (再表示)] をクリックすると、毎回 2 つのカウンタが 1 ずつ増えます。go() メソッドは、キャッシュからこれらのカウンタの値を取得し、その値を 1 ずつ増やしてキャッシュに再度保存します。
[Remove datetime Key (日時キーの削除)] ボタンは、キャッシュから日時値を (キー datetime で) 削除します。その結果、ページ上の [Cached datetime: (キャッシュ日時:)] の横にある値がクリアされます。
これは、OrgCacheController クラスに対応する Visualforce ページです。
これは [Rerender (再表示)] ボタンを 2 回クリックした後のページの出力です。このサンプルを実行する前に counter という名前のキーがすでにキャッシュにある場合は、カウンタ値が異なる可能性があります。
Org のメソッド
Org のメソッドは次のとおりです。すべてのメソッドが静的です。
get(key)
署名
public static Object get(String key)
戻り値
型: Object
キャッシュ値が汎用オブジェクト種別として返されます。戻り値を適切な型にキャストしてください。
使用方法
Cache.Org.get() はオブジェクトを返すため、戻り値を使いやすいように特定の型にキャストしてください。
Cache.Org.get() コールで参照されたキーが見つからない場合、null が返されます。
get(cacheBuilder, key)
署名
public static Object get(System.Type cacheBuilder, String key)
パラメータ
- cacheBuilder
- 型: System.Type
- CacheBuilder インターフェースを実装する Apex クラス。
- key
- 型: String
- cacheBuilder パラメータに対応するクラス名と組み合せてキャッシュ値を一意に識別する文字列値 (大文字と小文字を区別)。
戻り値
型: Object
キャッシュ値が汎用オブジェクト種別として返されます。戻り値を適切な型にキャストしてください。
使用方法
Cache.Org.get(cacheBuilder, key) はオブジェクトを返すため、戻り値を使いやすいように特定の型にキャストしてください。
getAvgGetSize()
署名
public static Long getAvgGetSize()
戻り値
型: Long
例
次の例では、次のキーおよび対応する値のサイズが挿入されます。このコードでは次にキー 1、キー 2、キー 3、キー 4 を取得し、取得したキーの平均項目サイズを返します。
| キー | キー値サイズ |
|---|---|
| キー 1 | 42 |
| キー 2 | 42 |
| キー 3 | 58 |
| キー 4 | 36 |
| キー 5 | 36 |
getMaxGetSize()
署名
public static Long getMaxGetSize()
戻り値
型: Long
例
次の例では、次のキーおよび対応する値のサイズが挿入されます。このコードではキー 1、キー 2、キー 4 を取得し、取得したキーの最大キー値サイズを返します。
| キー | キー値サイズ |
|---|---|
| キー 1 | 42 |
| キー 2 | 42 |
| キー 3 | 58 |
| キー 4 | 36 |
| キー 5 | 36 |
getPartition(partitionName)
署名
public static cache.OrgPartition getPartition(String partitionName)
パラメータ
- partitionName
- 型: String
- 名前空間で修飾されたパーティション名 (namespace.partition など)。
戻り値
例
組織のパーティションを取得したら、パーティションのキャッシュ値を追加および取得できます。
put(key, value, visibility)
署名
public static void put(String key, Object value, Cache.Visibility visibility)
パラメータ
- key
- 型: String
- キャッシュ値を一意に識別する文字列値 (大文字と小文字を区別)。キー名の形式についての詳細は、「使用方法」を参照してください。
- value
- 型: Object
- キャッシュに保存する値。キャッシュ値はシリアライズ可能にする必要があります。
- visibility
- 型: Cache.Visibility
- キャッシュ値を使用できるのが、同じ名前空間内で実行される Apex コードのみか、任意の名前空間から実行される Apex コードかを示します。
戻り値
型: void
put(key, value, ttlSecs)
署名
public static void put(String key, Object value, Integer ttlSecs)
パラメータ
戻り値
型: void
put(key, value, ttlSecs, visibility, immutable)
署名
public static void put(String key, Object value, Integer ttlSecs, cache.Visibility visibility, Boolean immutable)
パラメータ
- key
- 型: String
- キャッシュ値を一意に識別する文字列値 (大文字と小文字を区別)。キー名の形式についての詳細は、「使用方法」を参照してください。
- value
- 型: Object
- キャッシュに保存する値。キャッシュ値はシリアライズ可能にする必要があります。
- ttlSecs
- 型: Integer
- キャッシュ値を組織キャッシュに保持しておく時間 (秒数)。最大値は 172,800 秒 (48 時間) です。最小値は 300 秒 (5 分) です。デフォルト値は 86,400 秒 (24 時間) です。
- visibility
- 型: Cache.Visibility
- キャッシュ値を使用できるのが、同じ名前空間内で実行される Apex コードのみか、任意の名前空間から実行される Apex コードかを示します。
- immutable
- 型: Boolean
- キャッシュ値を別の名前空間によって上書きできるか (false)、否か (true) を示します。
戻り値
型: void
remove(cacheBuilder, key)
署名
public static Boolean remove(System.Type cacheBuilder, String key)
パラメータ
- cacheBuilder
- 型: System.Type
- CacheBuilder インターフェースを実装する Apex クラス。
- key
- 型: String
- cacheBuilder パラメータに対応するクラス名と組み合せてキャッシュ値を一意に識別する文字列値 (大文字と小文字を区別)。