ライブラリ使用状況

これらのAPIの使用方法の例は、ディストリビューションに含まれています。<package>/examplesディレクトリを参照してください。特に、hello.cは、ストアに対する基本的なAPIの使用方法では認証を必要としないことを示しており、hello_secured.cは、セキュア・ストアを操作する同様の使用方法を示しています。

全般的に、このライブラリを使用するには次のステップを実行します。

  1. kv_create_jni_impl()を使用して、Java Native Interface Framework (JNI)を初期化します。

  2. kv_create_config()を使用してストア構成を作成します。

  3. 認証が必要なストアを使用している場合は、kv_create_properties()kv_set_property()およびkv_config_set_security_properties()というAPIを使用して、セキュリティ・プロパティと認証資格証明を定義します。認証資格証明は、kv_create_password_credentials()を使用して作成します。

  4. kv_open_store()またはkv_open_store_login()を使用して、ストアへのハンドルを取得します。

  5. データ操作関数で説明されている様々な関数を使用して、データの読取りおよび書込み操作を実行します。これらの関数には、永続性構造と一貫性構造、およびkey/valueの構造が必要な場合があります。このような構造の作成と管理に使用する関数については、永続性および一貫性関数およびKey/Valueペア管理関数を参照してください。

    認証が必要なストアを操作している場合は、KV_AUTH_FAILUREエラーを処理できる必要があります。これらのエラーが表示された場合は、kv_store_login()を使用して再認証します。

  6. ストアへのアクセスが完了したら、kv_close_store()を使用してストア・ハンドルをクローズします。ハンドルをストアにログインしている場合、これによってハンドルがログアウトされます。

  7. kv_release_config()を使用して、ストア構成構造を解放します。

  8. kv_release_impl()を使用してJNI実装を解放します。

この基本ステップのリストでは、構造を割り当て、または初期化するとともに、操作が完了した後にこのような構造を解放する責任があることに注意してください。これらの作業を行うには、ある種の作成および解放関数を使用します。この責任のパターンは、いくつかの例外を除いて、API全体で繰り返されます。たとえば、キーを作成するにはkv_create_key()が必要であり、キーを解放するにはkv_release_key()を使用します。これらのAPIを使用して取得したリソースを解放する責任があります。