インターフェース KeySpaceStore


public interface KeySpaceStore
指定されたキー空間のマップを取得するための戦略インターフェース。複数のスレッド(ストア自体と使用されるキーストアマップの両方)で使用する場合、実装はスレッドセーフである必要があります。

統合インターフェースを介して、キーストアの作成または実装戦略(たとえば、MapDB や Infinispan などのマップベースの実装)をプラグインできます。キースペースストアは、マップのマップ、または複数のコレクションを含むデータベースを表し、キースペースごとに任意の種類のマップを使用できます。

たとえば、ConcurrentHashMapSE をキーストアマップ型として使用して、次のキースペースへの同時アクセスを許可できます。

KeyspaceStore store = KeyspaceStore.create();
提供されているファクトリメソッドを使用して、カスタムマップ型 (またはそれらのインスタンス) も使用できます。
KeyspaceStore store = KeyspaceStore.of(LinkedHashMap.class);

Mapinvalid input: '<'String, Mapinvalid input: '<'Object, Object>> backingMap = …;
KeyspaceStore store = KeyspaceStore.of(backingMap);
導入:
4.0
  • メソッドの詳細

    • getKeySpace

      MapSE<ObjectSE,ObjectSE> getKeySpace(StringSE keyspace)
      指定されたキースペースに関連付けられたマップを返します。実装では、キースペースがまだ存在しない場合は空のマップを返すか、リクエストされたキースペースのキーと値を保持する既存のキースペースを表すマップへの参照を返すことができます。
      パラメーター:
      keyspace - マップを取得するキースペースの名前。null にすることはできません。
      戻り値:
      指定されたキースペースに関連付けられたマップ。null にはなりません。
    • clear

      void clear()
      すべてのキースペースをクリアします。このメソッド呼び出し後、getKeySpace(String) にアクセスすると、各キースペースの空のマップが返されます。各キースペースを個別にクリアする必要はありませんが、メモリを解放するためにクリアしておくことをお勧めします。
    • create

      static KeySpaceStore create()
      各キースペースマップのバックアップマップ型として ConcurrentHashMapSE を使用して、新しい KeySpaceStore を作成します。
      戻り値:
      新しい空の KeySpaceStore
    • of

      static KeySpaceStore of(ClassSE<? extends MapSE> mapType)
      各キースペースマップに対して指定されたマップ型を使用して新しい KeySpaceStore を作成します。
      パラメーター:
      mapType - 使用するマップの種類。
      戻り値:
      新しい KeySpaceStore オブジェクト。
    • of

      指定されたマップをバックアップストアとして使用し、新しい KeySpaceStore を作成します。指定されたマップからマップ型を決定します。
      パラメーター:
      store - 地図の地図。
      戻り値:
      指定された store の新しい KeySpaceStore オブジェクト。