CTR NEX API Reference
nn::nex::DataStoreClient クラス

DataStore サーバーとの通信を行うためのライブラリです。 [詳解]

#include <RendezVous/Services/Jugem/DataStore/src/Client/DataStoreClient.h>

+ nn::nex::DataStoreClient の継承関係図

公開メンバ関数

 DataStoreClient ()
 コンストラクタです。
 
virtual ~DataStoreClient ()
 デストラクタです。
 
virtual qBool Bind (Credentials *pCredentials)
 サービスを利用するための証明書を登録します。 [詳解]
 
virtual qBool ChangeMeta (ProtocolCallContext *pContext, const DataStoreChangeMetaParam &param)
 ストレージのメタ情報を変更します。 [詳解]
 
virtual qBool ChangeMeta (ProtocolCallContext *pContext, const qVector< qUnsignedInt64 > &dataIds, const DataStoreChangeMetaParam &param, const qBool transactional=true, qVector< qResult > *pResults=NULL)
 ストレージのメタ情報を一括で変更します。 [詳解]
 
virtual qBool ChangeMeta (ProtocolCallContext *pContext, const qVector< DataStoreChangeMetaParam > &params, const qBool transactional=true, qVector< qResult > *pResults=NULL)
 ストレージのメタ情報を一括で変更します。 [詳解]
 
virtual qBool CompleteSuspendedPostObject (ProtocolCallContext *pContext, const qVector< qUnsignedInt64 > &dataIds)
 完了が保留されたアップロードに対してすべてのアップロード処理が完了したことをサーバーに伝え、そのデータを有効化します。 [詳解]
 
virtual qBool DeleteObject (ProtocolCallContext *pContext, const DataStoreDeleteParam &param)
 ストレージのデータを削除します。 [詳解]
 
virtual qBool DeleteObject (ProtocolCallContext *pContext, const qUnsignedInt64 &dataId)
 ストレージのデータを削除します。 [詳解]
 
virtual qBool DeleteObject (ProtocolCallContext *pContext, const qVector< DataStoreDeleteParam > &params, const qBool transactional=true, qVector< qResult > *pResults=NULL)
 ストレージのデータを一括削除します。 [詳解]
 
virtual qBool DeleteObject (ProtocolCallContext *pContext, const qVector< qUnsignedInt64 > &dataIds, const qBool transactional=true, qVector< qResult > *pResults=NULL)
 ストレージのデータを一括削除します。 [詳解]
 
CredentialsGetCredentials () const
 Bind() された Credentials オブジェクトを取得します。 [詳解]
 
size_t GetHttpBufferSize () const
 HTTP 通信で使用するバッファサイズを取得します。 [詳解]
 
qUnsignedInt32 GetHttpThreadPriority () const
 データの送受信に使用される HTTP 通信スレッドの優先度を取得します。 [詳解]
 
virtual qBool GetMeta (ProtocolCallContext *pContext, const DataStoreGetMetaParam &param, DataStoreMetaInfo *pMetaInfo)
 ストレージのメタ情報を取得します。 [詳解]
 
virtual qBool GetMeta (ProtocolCallContext *pContext, const qVector< qUnsignedInt64 > &dataIds, const DataStoreGetMetaParam &param, qVector< DataStoreMetaInfo > *pMetaInfos, qVector< qResult > *pResults=NULL)
 ストレージのメタ情報を一括取得します。 [詳解]
 
virtual qBool GetMeta (ProtocolCallContext *pContext, const qVector< DataStoreGetMetaParam > &params, qVector< DataStoreMetaInfo > *pMetaInfos, qVector< qResult > *pResults=NULL)
 ストレージのメタ情報を一括取得します。 [詳解]
 
virtual qBool GetObject (ProtocolCallContext *pContext, const DataStoreGetParam &param, DataStoreGetObjectEventListener *eventListener)
 DataStore サーバーからデータを取得します。 [詳解]
 
virtual qBool GetObject (ProtocolCallContext *pContext, const DataStoreGetParam &param, void *buffer, size_t bufferSize, size_t *pWrittenSize)
 DataStore サーバーからデータを取得します。 [詳解]
 
virtual qBool GetPasswordInfo (ProtocolCallContext *pContext, qUnsignedInt64 dataId, DataStorePasswordInfo *pPasswordInfo)
 パスワード情報を取得します。 [詳解]
 
virtual qBool GetPasswordInfo (ProtocolCallContext *pContext, const qVector< qUnsignedInt64 > &dataIds, qVector< DataStorePasswordInfo > *pPasswordInfos, qVector< qResult > *pResults=NULL)
 パスワード情報を複数取得します。 [詳解]
 
virtual qBool GetPersistenceInfo (ProtocolCallContext *pContext, PrincipalID pid, qUnsignedInt16 persistenceSlotId, DataStorePersistenceInfo *pPersistenceInfo)
 永続化情報を取得します。 [詳解]
 
virtual qBool GetPersistenceInfo (ProtocolCallContext *pContext, PrincipalID pid, qVector< qUnsignedInt16 > persistenceSlotIds, qVector< DataStorePersistenceInfo > *pPersistenceInfos, qVector< qResult > *pResults=NULL)
 永続化情報を取得します。 [詳解]
 
virtual qBool GetRating (ProtocolCallContext *pContext, const DataStoreRatingTarget &target, DataStoreRatingInfo *pRating, qUnsignedInt64 accessPassword=DataStoreConstants::INVALID_PASSWORD)
 データの評価情報を取得します [詳解]
 
virtual qBool GetRating (ProtocolCallContext *pContext, const qUnsignedInt64 dataId, qMap< qInt8, DataStoreRatingInfo > *pRatings, qUnsignedInt64 accessPassword=DataStoreConstants::INVALID_PASSWORD)
 データの評価情報を取得します [詳解]
 
virtual qBool GetRating (ProtocolCallContext *pContext, const qVector< qUnsignedInt64 > &dataIds, qVector< qMap< qInt8, DataStoreRatingInfo > > *pRatings, qVector< qResult > *pResults=NULL)
 データの評価情報を一括取得します [詳解]
 
virtual qBool GetRating (ProtocolCallContext *pContext, const DataStoreRatingTarget &target, DataStoreRatingInfo *pRating, DataStoreRatingLog *pRatingLog, qUnsignedInt64 accessPassword=DataStoreConstants::INVALID_PASSWORD)
 データの評価情報と評価ログを取得します [詳解]
 
size_t GetRelayBufferSize () const
 データを受け渡す際の最大サイズを取得します。 [詳解]
 
virtual qBool PerpetuateObject (ProtocolCallContext *pContext, qUnsignedInt16 persistenceSlotId, qUnsignedInt64 dataId, qBool deleteLastObject=true)
 データを永続化します。 [詳解]
 
virtual qBool PostObject (ProtocolCallContext *pContext, const DataStorePostParam &param, qUnsignedInt64 *dataId, DataStorePostObjectEventListener *eventListener)
 DataStore サーバーにデータをアップロードします。 [詳解]
 
virtual qBool PostObject (ProtocolCallContext *pContext, const DataStorePostParam &param, qUnsignedInt64 *dataId, const void *buffer, qBool useInternalBuffer=true)
 DataStore サーバーにデータをアップロードします。 [詳解]
 
virtual qBool PostObject (ProtocolCallContext *pContext, const DataStorePostParam &param, qUnsignedInt64 *dataId)
 DataStore サーバーにメタ情報のみをアップロードします。 [詳解]
 
virtual qBool PostObject (ProtocolCallContext *pContext, const qUnsignedInt64 dataId, const DataStorePostParam &param)
 データ ID を指定して DataStore サーバーにメタ情報のみをアップロードします。 [詳解]
 
virtual qBool PostObject (ProtocolCallContext *pContext, const qVector< std::pair< qUnsignedInt64, DataStorePostParam > > &params, const qBool transactional=true, qVector< qResult > *pResults=NULL)
 データ ID を指定して DataStore サーバーにメタ情報のみを一括アップロードします。 [詳解]
 
virtual qBool PostObject (ProtocolCallContext *pContext, const qVector< qUnsignedInt64 > &dataIds, const DataStorePreparePostParam &param, const qBool transactional=true, qVector< qResult > *pResults=NULL)
 データ ID を指定して DataStore サーバーにメタ情報のみを一括アップロードします。 [詳解]
 
virtual qBool RateObject (ProtocolCallContext *pContext, const DataStoreRatingTarget &target, const DataStoreRateObjectParam &param, DataStoreRatingInfo *pRating)
 データの評価を行います。 [詳解]
 
virtual qBool RateObject (ProtocolCallContext *pContext, const qVector< DataStoreRatingTarget > &targets, const DataStoreRateObjectParam &param, const qBool transactional=true, qVector< DataStoreRatingInfo > *pRatings=NULL, qVector< qResult > *pResults=NULL)
 データの一括評価を行います。 [詳解]
 
virtual qBool RateObject (ProtocolCallContext *pContext, const qVector< DataStoreRatingTarget > &targets, const qVector< DataStoreRateObjectParam > &params, const qBool transactional=true, qVector< DataStoreRatingInfo > *pRatings=NULL, qVector< qResult > *pResults=NULL)
 データの一括評価を行います。 [詳解]
 
virtual qBool RateObjectsWithPosting (ProtocolCallContext *pContext, const qVector< DataStoreRatingTarget > &targets, const qVector< DataStoreRateObjectParam > &rateParams, const qVector< DataStorePostParam > &postParams, qBool transactional=true, qVector< DataStoreRatingInfo > *pRatings=NULL, qVector< qResult > *pResults=NULL)
 複数のデータの一括評価を行います。存在しない場合は、指定した値で初期化して、評価を行います。 [詳解]
 
virtual qBool RateObjectsWithPosting (ProtocolCallContext *pContext, const qVector< DataStoreRatingTarget > &targets, const DataStoreRateObjectParam &rateParam, const DataStorePostParam &postParam, qBool transactional=true, qVector< DataStoreRatingInfo > *pRatings=NULL, qVector< qResult > *pResults=NULL)
 複数のデータの一括評価を行います。存在しない場合は、指定した値で初期化して、評価を行います。評価と初期値は、ひとつのみ指定できます。 [詳解]
 
virtual qBool RateObjectWithPosting (ProtocolCallContext *pContext, const DataStoreRatingTarget &target, const DataStoreRateObjectParam &rateParam, const DataStorePostParam &postParam, DataStoreRatingInfo *pRating=NULL)
 データの評価を行います。存在しない場合は、指定した値で初期化して、評価を行います。。 [詳解]
 
virtual qBool ResetRating (ProtocolCallContext *pContext, const DataStoreRatingTarget &target, qUnsignedInt64 updatePassword=DataStoreConstants::INVALID_PASSWORD)
 データの評価情報と評価ログをリセットします。 [詳解]
 
virtual qBool ResetRating (ProtocolCallContext *pContext, const qUnsignedInt64 &dataId)
 データの評価情報と評価ログをリセットします。 [詳解]
 
virtual qBool ResetRating (ProtocolCallContext *pContext, const qVector< qUnsignedInt64 > &dataIds, const qBool transactional=true, qVector< qResult > *pResults=NULL)
 データの評価情報と評価ログを一括リセットします。 [詳解]
 
virtual qBool SearchObject (ProtocolCallContext *pContext, const DataStoreSearchParam &param, DataStoreSearchResult *pSearchResult)
 ストレージの情報を検索します。 [詳解]
 
virtual qBool SearchObjectLight (ProtocolCallContext *pContext, const DataStoreSearchParam &param, DataStoreSearchResult *pSearchResult)
 ストレージの情報を検索します。 [詳解]
 
void SetDataTransferTimeout (qUnsignedInt32 timeoutBytesPerSecond, TimeInterval minimumTimeoutMilliSecond=DataStoreConstants::DEFAULT_DATA_TRANSFER_MINIMUM_TIMEOUT)
 データの送受信時のタイムアウト値を設定します。 [詳解]
 
void SetDefaultCredentials (Credentials *pCredentials)
 
void SetHttpBufferSize (size_t httpBufferSize)
 データの送受信で使用される HTTP 通信用に DataStore ライブラリが確保するバッファサイズを設定します。 [詳解]
 
void SetHttpThreadPriority (qUnsignedInt32 priority)
 データの送受信に使用される HTTP 通信スレッドの優先度を設定します。 [詳解]
 
void SetRelayBufferSize (size_t relayBufferSize)
 データを受け渡す際の最大サイズを設定します。 [詳解]
 
virtual qBool TouchObject (ProtocolCallContext *pContext, const DataStoreTouchObjectParam &param)
 DataStore サーバーのデータの有効期限を更新します。 [詳解]
 
void Trace (qUnsignedInt64 uiTraceFlags=TRACE_ALWAYS) const
 DataStoreClientオブジェクトの内容をトレースします。 [詳解]
 
virtual qBool Unbind ()
 証明書の登録を解除します。 [詳解]
 
virtual qBool UnperpetuateObject (ProtocolCallContext *pContext, qUnsignedInt16 persistenceSlotId, qBool deleteLastObject=false)
 データを非永続化します。 [詳解]
 
virtual qBool UpdateObject (ProtocolCallContext *pContext, const DataStoreUpdateParam &param, DataStorePostObjectEventListener *eventListener)
 DataStore サーバーにアップロードしてあるデータを置き換えます。 [詳解]
 
virtual qBool UpdateObject (ProtocolCallContext *pContext, const DataStoreUpdateParam &param, const void *buffer, qBool useInternalBuffer=true)
 DataStore サーバーにアップロードしてあるデータを置き換えます。 [詳解]
 

詳解

DataStore サーバーとの通信を行うためのライブラリです。

関数詳解

virtual qBool nn::nex::DataStoreClient::GetObject ( ProtocolCallContext pContext,
const DataStoreGetParam param,
DataStoreGetObjectEventListener eventListener 
)
virtual

DataStore サーバーからデータを取得します。

本関数呼び出し前に nn::http::Initialize() を呼び出し、HTTP ライブラリを初期化する必要があります。

本関数を呼び出すと NEX のスレッドモードにかかわらず通信用スレッドが一つ作成されます。 ダウンロードしたデータは指定した eventListener からアプリケーションに渡されます。 ダウンロードするデータを保存するメモリを一度に確保できない場合などに使用してください。 メタ情報のみをアップロードする DataStoreClient::PostObject() を使いアップロードされたデータに対して本関数を呼び出した場合の結果は QERROR(DataStore, OperationNotAllowed) となります。代わりに DataStoreClient::GetMeta() を使用して下さい。 対象のデータの参照権限を持っている人のみが参照できます。

引数
[in,out]pContext呼び出し情報。
[in]param詳細情報。
[in]eventListenerダウンロードされたデータを受け取るリスナーオブジェクト。


戻り値一覧:

true 非同期処理の開始に成功。

false 指定した pContext の状態が CallContext::CallInProgress となっており非同期処理を開始出来ない。 これは他の非同期処理で使用中であることを示します。 プログラミングエラーであるため、このケースはリリースビルド以外では内部で Assert により停止します。

nn::nex::DataStoreClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreClient::GetObject ( ProtocolCallContext pContext,
const DataStoreGetParam param,
void *  buffer,
size_t  bufferSize,
size_t *  pWrittenSize 
)
virtual

DataStore サーバーからデータを取得します。

本関数呼び出し前に nn::http::Initialize() を呼び出し、HTTP ライブラリを初期化する必要があります。

本関数を呼び出すと NEX のスレッドモードにかかわらず通信用スレッドが一つ作成されます。 ダウンロードしたデータは buffer に書き込まれます。非同期処理が成功したときのみ buffer からデータを読み出すことが可能です。 メタ情報のみをアップロードする DataStoreClient::PostObject() を使いアップロードされたデータに対して本関数を呼び出した場合の結果は QERROR(DataStore, OperationNotAllowed) となります。代わりに DataStoreClient::GetMeta() を使用して下さい。 対象のデータの参照権限を持っている人のみが参照できます。

引数
[in,out]pContext呼び出し情報。
[in]param詳細情報。
[out]bufferダウンロードしたデータを書き込むバッファ。
[in]bufferSizebuffer のサイズ。ダウンロードしたいデータのサイズ以上の値を指定してください。
[out]pWrittenSizeダウンロードしたデータのサイズを格納するポインタ。NULL を指定すると格納されません。


戻り値一覧:

true 非同期処理の開始に成功。

false 指定した pContext の状態が CallContext::CallInProgress となっており非同期処理を開始出来ない。 これは他の非同期処理で使用中であることを示します。 プログラミングエラーであるため、このケースはリリースビルド以外では内部で Assert により停止します。

nn::nex::DataStoreClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreClient::PostObject ( ProtocolCallContext pContext,
const DataStorePostParam param,
qUnsignedInt64 dataId,
DataStorePostObjectEventListener eventListener 
)
virtual

DataStore サーバーにデータをアップロードします。

本関数呼び出し前に nn::http::Initialize() を呼び出し、HTTP ライブラリを初期化する必要があります。

本関数を呼び出すと NEX のスレッドモードにかかわらず通信用スレッドが一つ作成されます。 アップロードするデータは eventListener からコールバックされる関数で指定します。 本関数を使用してアップロードしたデータはメタ情報とは別に専用のストレージサーバー領域に保存されます。

引数
[in,out]pContext呼び出し情報。
[in]param詳細情報。
[out]dataIdアップロードされたデータに割り当てられたデータ ID。データ ID はゲーム内でユニークな値になります。 NULL を指定すると格納されません。
[in]eventListenerアップロードするデータを指定するリスナーオブジェクト。


戻り値一覧:

true 非同期処理の開始に成功。

false 指定した pContext の状態が CallContext::CallInProgress となっており非同期処理を開始出来ない。 これは他の非同期処理で使用中であることを示します。 プログラミングエラーであるため、このケースはリリースビルド以外では内部で Assert により停止します。

nn::nex::DataStoreClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreClient::PostObject ( ProtocolCallContext pContext,
const DataStorePostParam param,
qUnsignedInt64 dataId,
const void *  buffer,
qBool  useInternalBuffer = true 
)
virtual

DataStore サーバーにデータをアップロードします。

本関数呼び出し前に nn::http::Initialize() を呼び出し、HTTP ライブラリを初期化する必要があります。

本関数を呼び出すと NEX のスレッドモードにかかわらず通信用スレッドが一つ作成されます。 アップロードするデータは buffer から指定します。 本関数を使用してアップロードしたデータはメタ情報とは別に専用のストレージサーバーに保存されます。

引数
[in,out]pContext呼び出し情報。
[in]param詳細情報。
[out]dataIdアップロードされたデータに割り当てられたデータ ID。データ ID はゲーム内でユニークな値になります。 NULL を指定すると格納されません。
[in]bufferアップロードするデータ。 param に対して DataStorePreparePostParam::SetSize() で指定したサイズ分がアップロードされます。
[in]useInternalBuffertrue を指定した場合(デフォルト)、 buffer の内容はライブラリ内部にコピーして保持されるため呼び出し側では破棄して構いません。 この場合、DataStorePostParam::SetSize()で指定したサイズ分のメモリを内部に確保します。 false を指定した場合、非同期処理が完了するまで buffer の内容を保持してください。


戻り値一覧:

true 非同期処理の開始に成功。

false 指定した pContext の状態が CallContext::CallInProgress となっており非同期処理を開始出来ない。 これは他の非同期処理で使用中であることを示します。 プログラミングエラーであるため、このケースはリリースビルド以外では内部で Assert により停止します。

nn::nex::DataStoreClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreClient::PostObject ( ProtocolCallContext pContext,
const DataStorePostParam param,
qUnsignedInt64 dataId 
)
virtual

DataStore サーバーにメタ情報のみをアップロードします。

本関数を使用してメタ情報のみアップロードした場合は専用のストレージサーバーへのデータ保存は行いません。

引数
[in,out]pContext呼び出し情報。
[in]param詳細情報。
[out]dataIdアップロードされたデータに割り当てられたデータ ID。データ ID はゲーム内でユニークな値になります。 NULL を指定すると格納されません。


戻り値一覧:

true 非同期処理の開始に成功。

false 指定した pContext の状態が CallContext::CallInProgress となっており非同期処理を開始出来ない。 これは他の非同期処理で使用中であることを示します。 プログラミングエラーであるため、このケースはリリースビルド以外では内部で Assert により停止します。

nn::nex::DataStoreClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreClient::PostObject ( ProtocolCallContext pContext,
const qUnsignedInt64  dataId,
const DataStorePostParam param 
)
virtual

データ ID を指定して DataStore サーバーにメタ情報のみをアップロードします。

データ ID 指定版です。通常のアップロードでは、データ ID をサーバーが自動的に割り当てますが、 本関数を仕様すると、データ ID をクライアントが指定できます。 詳しくはプログラミングマニュアルを参照してください。 本関数を使用してメタ情報のみアップロードした場合は専用のストレージサーバーへのデータ保存は行いません。

引数
[in,out]pContext呼び出し情報。
[in]dataIdアップロードされたデータに割り当てられたデータID。データIDはゲーム内でユニークな値になります。
[in]param詳細情報。


戻り値一覧:

true 非同期処理の開始に成功。

false 指定した pContext の状態が CallContext::CallInProgress となっており非同期処理を開始出来ない。 これは他の非同期処理で使用中であることを示します。 プログラミングエラーであるため、このケースはリリースビルド以外では内部で Assert により停止します。

nn::nex::DataStoreClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreClient::PostObject ( ProtocolCallContext pContext,
const qVector< std::pair< qUnsignedInt64, DataStorePostParam > > &  params,
const qBool  transactional = true,
qVector< qResult > *  pResults = NULL 
)
virtual

データ ID を指定して DataStore サーバーにメタ情報のみを一括アップロードします。

データ ID 指定版です。通常のアップロードでは、データ ID をサーバーが自動的に割り当てますが、 本関数を仕様すると、データ ID をクライアントが指定できます。 詳しくはプログラミングマニュアルを参照してください。 本関数を使用してメタ情報のみアップロードした場合は専用のストレージサーバーへのデータ保存は行いません。

一括処理の上限数は100件です。 pResultにはparamsで指定したデータIDに対する処理の結果が指定した数だけ同順で返ります。

引数
[in,out]pContext呼び出し情報。
[in]params詳細情報。
[in]transactionalすべて成功する場合のみ処理を行うか (true)、できる限り処理を行うか。処理に失敗したデータについては処理が取り消されます。(false)。
[out]pResults成功したかどうかの結果 (省略可)


戻り値一覧:

true 非同期処理の開始に成功。

false 指定した pContext の状態が CallContext::CallInProgress となっており非同期処理を開始出来ない。 これは他の非同期処理で使用中であることを示します。 プログラミングエラーであるため、このケースはリリースビルド以外では内部で Assert により停止します。

nn::nex::DataStoreClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreClient::PostObject ( ProtocolCallContext pContext,
const qVector< qUnsignedInt64 > &  dataIds,
const DataStorePreparePostParam param,
const qBool  transactional = true,
qVector< qResult > *  pResults = NULL 
)
virtual

データ ID を指定して DataStore サーバーにメタ情報のみを一括アップロードします。

データ ID 指定版です。通常のアップロードでは、データ ID をサーバーが自動的に割り当てますが、 本関数を仕様すると、データ ID をクライアントが指定できます。 詳しくはプログラミングマニュアルを参照してください。 本関数を使用してメタ情報のみアップロードした場合は専用のストレージサーバーへのデータ保存は行いません。

一つのメタ情報を複数のデータ ID に設定することができます。 一括処理の上限数は100件です。 pResultにはdataIdsで指定したデータIDに対する処理の結果が指定した数だけ同順で返ります。

引数
[in,out]pContext呼び出し情報。
[in]dataIdsアップロードされたデータに割り当てられたデータID配列。データIDはゲーム内でユニークな値になります。
[in]param詳細情報。
[in]transactionalすべて成功する場合のみ処理を行うか (true)、できる限り処理を行うか。処理に失敗したデータについては処理が取り消されます。(false)。
[out]pResults成功したかどうかの結果 (省略可)


戻り値一覧:

true 非同期処理の開始に成功。

false 指定した pContext の状態が CallContext::CallInProgress となっており非同期処理を開始出来ない。 これは他の非同期処理で使用中であることを示します。 プログラミングエラーであるため、このケースはリリースビルド以外では内部で Assert により停止します。

virtual qBool nn::nex::DataStoreClient::UpdateObject ( ProtocolCallContext pContext,
const DataStoreUpdateParam param,
DataStorePostObjectEventListener eventListener 
)
virtual

DataStore サーバーにアップロードしてあるデータを置き換えます。

本関数呼び出し前に nn::http::Initialize() を呼び出し、HTTP ライブラリを初期化する必要があります。

本関数を呼び出すと NEX のスレッドモードにかかわらず通信用スレッドが一つ作成されます。 アップロードするデータは eventListener からコールバックされる関数で指定します。データIDは変化しません。 メタ情報のみをアップロードする DataStoreClient::PostObject() を使いアップロードされたデータに対して本関数を呼び出した場合の結果は QERROR(DataStore, OperationNotAllowed) となります。メタ情報を変更するには DataStoreClient::ChangeMeta() を使用して下さい。 更新権限を持っているデータのみ更新することが可能です。

引数
[in,out]pContext呼び出し情報。
[in]param詳細情報。
[in]eventListenerアップロードするデータを指定するリスナーオブジェクト。


戻り値一覧:

true 非同期処理の開始に成功。

false 指定した pContext の状態が CallContext::CallInProgress となっており非同期処理を開始出来ない。 これは他の非同期処理で使用中であることを示します。 プログラミングエラーであるため、このケースはリリースビルド以外では内部で Assert により停止します。

nn::nex::DataStoreClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreClient::UpdateObject ( ProtocolCallContext pContext,
const DataStoreUpdateParam param,
const void *  buffer,
qBool  useInternalBuffer = true 
)
virtual

DataStore サーバーにアップロードしてあるデータを置き換えます。

本関数呼び出し前に nn::http::Initialize() を呼び出し、HTTP ライブラリを初期化する必要があります。

本関数を呼び出すと NEX のスレッドモードにかかわらず通信用スレッドが一つ作成されます。 アップロードするデータは buffer から指定します。データIDは変化しません。 メタ情報のみをアップロードする DataStoreClient::PostObject() を使いアップロードされたデータに対して本関数を呼び出した場合の結果は QERROR(DataStore, OperationNotAllowed) となります。メタ情報を変更するには DataStoreClient::ChangeMeta() を使用して下さい。 更新権限を持っているデータのみ更新することが可能です。

引数
[in,out]pContext呼び出し情報。
[in]param詳細情報。
[in]bufferアップロードするデータ。param に対して DataStoreUpdateParam::SetSize() で指定したサイズ分がアップロードされます。
[in]useInternalBuffertrue を指定した場合(デフォルト)、 buffer の内容はライブラリ内部にコピーして保持されるため呼び出し側では破棄して構いません。 この場合、DataStoreUpdateParam::SetSize()で指定したサイズ分のメモリを内部に確保します。 false を指定した場合、非同期処理が完了するまで buffer の内容を保持してください。


戻り値一覧:

true 非同期処理の開始に成功。

false 指定した pContext の状態が CallContext::CallInProgress となっており非同期処理を開始出来ない。 これは他の非同期処理で使用中であることを示します。 プログラミングエラーであるため、このケースはリリースビルド以外では内部で Assert により停止します。

nn::nex::DataStoreClientInterfaceを実装しています。

void nn::nex::DataStoreClient::SetHttpThreadPriority ( qUnsignedInt32  priority)

データの送受信に使用される HTTP 通信スレッドの優先度を設定します。

HTTP 通信は DataStoreClient::GetObject()DataStoreClient::PostObject()DataStoreClient::UpdateObject() 呼び出しにより発生します。 HTTP 通信を発生させる関数を呼び出した時点での設定が使用されます。 そのため、 HTTP 通信を発生させる関数呼び出しごとに本関数を呼び出すことにより、セッションごとに優先度を変更することができます。 本関数を呼び出さない場合の優先度は DataStoreConstants::DEFAULT_HTTP_THREAD_PRIORITY となります。

引数
[in]priorityHTTP 通信スレッドの優先度。
qUnsignedInt32 nn::nex::DataStoreClient::GetHttpThreadPriority ( ) const

データの送受信に使用される HTTP 通信スレッドの優先度を取得します。

戻り値
設定されている HTTP 通信スレッドの優先度。
void nn::nex::DataStoreClient::SetRelayBufferSize ( size_t  relayBufferSize)

データを受け渡す際の最大サイズを設定します。

DataStoreGetObjectEventListener::ProcessResponse() 及び DataStorePostObjectEventListener::PostChunkedBuffer() により渡されるバッファサイズの最大値を設定します。 HTTP 通信を発生させる関数を呼び出した時点での設定が使用されます。 そのため、 HTTP 通信を発生させる関数呼び出しごとに本関数を呼び出すことにより、セッションごとにサイズを切り替えることができます。 本関数を呼び出さない場合のサイズは DataStoreConstants::DEFAULT_RELAY_BUFFER_SIZE です。 DataStoreClient::SetHttpBufferSize() で設定する HTTP 用のバッファサイズ以下の値を指定してください。 HTTP 用のバッファサイズより大きな値を指定した場合は HTTP 用バッファサイズの値がデータを受け渡す際の最大値となります。

引数
[in]relayBufferSizeデータを受け渡す際の最大サイズ。
size_t nn::nex::DataStoreClient::GetRelayBufferSize ( ) const

データを受け渡す際の最大サイズを取得します。

戻り値
データを受け渡す際の最大サイズ。
void nn::nex::DataStoreClient::SetHttpBufferSize ( size_t  httpBufferSize)

データの送受信で使用される HTTP 通信用に DataStore ライブラリが確保するバッファサイズを設定します。

データの送受信は DataStoreClient::GetObject()DataStoreClient::PostObject()DataStoreClient::UpdateObject() 呼び出しにより発生します。 HTTP 通信の際はダブルバッファリングが行われるためここで設定したサイズの二倍のメモリが確保されます。 HTTP 通信を発生させる関数を呼び出した時点での設定が使用されます。 そのため、 HTTP 通信を発生させる関数呼び出しごとに本関数を呼び出すことにより、セッションごとにサイズを切り替えることができます。 本関数を呼び出さない場合のサイズは DataStoreConstants::DEFAULT_HTTP_BUFFER_SIZE です。

引数
[in]httpBufferSizeHTTP 通信で使用されるバッファサイズ。
size_t nn::nex::DataStoreClient::GetHttpBufferSize ( ) const

HTTP 通信で使用するバッファサイズを取得します。

戻り値
HTTP 通信で使用するバッファサイズ。
void nn::nex::DataStoreClient::SetDataTransferTimeout ( qUnsignedInt32  timeoutBytesPerSecond,
TimeInterval  minimumTimeoutMilliSecond = DataStoreConstants::DEFAULT_DATA_TRANSFER_MINIMUM_TIMEOUT 
)

データの送受信時のタイムアウト値を設定します。

データの送受信は DataStoreClient::GetObject()DataStoreClient::PostObject()DataStoreClient::UpdateObject() 呼び出しにより発生します。 このときに適用するタイムアウト値を設定します。タイムアウト値(ミリ秒)は下記の計算によって設定されます。

std::max(<送受信するデータサイズ(byte)> / timeoutBytesPerSecond * 1000, minimumTimeoutMilliSecond);

本関数を使用しない場合(未設定の場合)は timeoutBytesPerSecond に DataStoreConstants::DEFAULT_DATA_TRANSFER_TIMEOUT_BYTES_PER_SECOND 、 minimumTimeoutMilliSecond に DataStoreConstants::DEFAULT_DATA_TRANSFER_MINIMUM_TIMEOUT が設定されたタイムアウト値が適用されます。 この初期設定では、例えば 100KB のデータの送受信が 10 分かかっても終わらない場合や、1byte のファイルが 60 秒たってもダウンロードできない場合にタイムアウトされます。 タイムアウト値は本関数で設定した値と送受信するデータサイズにより決定されます。 (一時的に通信速度が timeoutBytesPerSecond を下回ったときにタイムアウトするという処理は行いません。) HTTP 通信を発生させる関数呼び出しごとに本関数を呼び出すことにより、セッションごとにタイムアウト値を切り替えることができます。 各 RMC を固定の時間でタイムアウトさせたい場合は CallContext::SetTimeout() を使用してください。

引数
[in]timeoutBytesPerSecondタイムアウトの計算元となる最低通信速度。(バイト毎秒) 0を指定した場合はタイムアウト処理を行いません。
[in]minimumTimeoutMilliSecond送受信するデータサイズによらず最低限待機する時間。(ミリ秒)
virtual qBool nn::nex::DataStoreClient::GetRating ( ProtocolCallContext pContext,
const DataStoreRatingTarget target,
DataStoreRatingInfo pRating,
qUnsignedInt64  accessPassword = DataStoreConstants::INVALID_PASSWORD 
)
virtual

データの評価情報を取得します

データIDとスロットを指定し、1個の評価情報を取得します。 対象のデータの参照権限を持っている人のみが取得できます。

引数
[in,out]pContext呼び出し情報。
[in]target評価情報を取得する対象。
[out]pRating評価情報。
[in]accessPassword参照パスワード。デフォルトは DataStoreConstants::INVALID_PASSWORD となっておりパスワードによる認証を使用しません。


戻り値一覧:

true 非同期処理の開始に成功。

false 指定した pContext の状態が CallContext::CallInProgress となっており非同期処理を開始出来ない。 これは他の非同期処理で使用中であることを示します。 プログラミングエラーであるため、このケースはリリースビルド以外では内部で Assert により停止します。

nn::nex::DataStoreClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreClient::GetRating ( ProtocolCallContext pContext,
const qUnsignedInt64  dataId,
qMap< qInt8, DataStoreRatingInfo > *  pRatings,
qUnsignedInt64  accessPassword = DataStoreConstants::INVALID_PASSWORD 
)
virtual

データの評価情報を取得します

データIDを指定し、全てのスロットの評価情報を取得します。 対象のデータの参照権限を持っている人のみが取得できます。

引数
[in,out]pContext呼び出し情報。
[in]dataId評価情報を取得するデータID。
[out]pRatings評価情報。
[in]accessPassword参照パスワード。デフォルトは DataStoreConstants::INVALID_PASSWORD となっておりパスワードによる認証を使用しません。


戻り値一覧:

true 非同期処理の開始に成功。

false 指定した pContext の状態が CallContext::CallInProgress となっており非同期処理を開始出来ない。 これは他の非同期処理で使用中であることを示します。 プログラミングエラーであるため、このケースはリリースビルド以外では内部で Assert により停止します。

nn::nex::DataStoreClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreClient::GetRating ( ProtocolCallContext pContext,
const qVector< qUnsignedInt64 > &  dataIds,
qVector< qMap< qInt8, DataStoreRatingInfo > > *  pRatings,
qVector< qResult > *  pResults = NULL 
)
virtual

データの評価情報を一括取得します

データIDのリストを指定し、複数の評価情報をまとめて取得します。 pRatingsにはdataIdsで指定したデータIDに対する処理の結果が指定した数だけ同順で返ります。 対象のデータの参照権限を持っている人のみが取得できます。

引数
[in,out]pContext呼び出し情報。
[in]dataIds評価情報を取得するデータIDのリスト。
[out]pRatings評価情報。
[out]pResults成功したかどうかの結果 (省略可)


戻り値一覧:

true 非同期処理の開始に成功。

false 指定した pContext の状態が CallContext::CallInProgress となっており非同期処理を開始出来ない。 これは他の非同期処理で使用中であることを示します。 プログラミングエラーであるため、このケースはリリースビルド以外では内部で Assert により停止します。

nn::nex::DataStoreClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreClient::GetRating ( ProtocolCallContext pContext,
const DataStoreRatingTarget target,
DataStoreRatingInfo pRating,
DataStoreRatingLog pRatingLog,
qUnsignedInt64  accessPassword = DataStoreConstants::INVALID_PASSWORD 
)
virtual

データの評価情報と評価ログを取得します

データIDとスロットを指定し、1個の評価情報と評価ログを取得します。 本関数は評価スロットの初期化設定の際に DataStoreConstants::RATING_FLAG_MODIFIABLE を指定したものもしくは、 重複ロックを設定したデータのみに使用できます。(両方を指定している場合でも使用できます。) これらが指定されていなかった場合の結果は QERROR(DataStore, OperationNotAllowed) となります。 対象のデータの参照権限を持っている人のみが取得できます。

引数
[in,out]pContext呼び出し情報。
[in]target評価情報を取得する対象。
[out]pRating評価情報。
[out]pRatingLog評価ログ。
[in]accessPassword参照パスワード。デフォルトは DataStoreConstants::INVALID_PASSWORD となっておりパスワードによる認証を使用しません。


戻り値一覧:

true 非同期処理の開始に成功。

false 指定した pContext の状態が CallContext::CallInProgress となっており非同期処理を開始出来ない。 これは他の非同期処理で使用中であることを示します。 プログラミングエラーであるため、このケースはリリースビルド以外では内部で Assert により停止します。

nn::nex::DataStoreClientInterfaceを実装しています。

void nn::nex::DataStoreClient::Trace ( qUnsignedInt64  uiTraceFlags = TRACE_ALWAYS) const

DataStoreClientオブジェクトの内容をトレースします。

引数
[in]uiTraceFlagsTraceLog::SetFlag()の引数と同様です。
virtual qBool nn::nex::DataStoreLogicServerClient::CompleteSuspendedPostObject ( ProtocolCallContext pContext,
const qVector< qUnsignedInt64 > &  dataIds 
)
virtualinherited

完了が保留されたアップロードに対してすべてのアップロード処理が完了したことをサーバーに伝え、そのデータを有効化します。

DataStoreClient::PostObject()DataStoreConstants::DATA_FLAG_NEED_COMPLETION を指定してアップロードされたデータに対してのみ本関数の利用が可能です。 詳細についてはプログラミングマニュアルを参照して下さい。 引数で与えたデータIDのデータをアトミックに有効化します。本関数呼び出し後は指定されたデータがすべて有効化されるか、すべて無効のままとなります。 一つでも処理に失敗するとその時点で処理をロールバックします。CallContext::GetOutcome() では最初に発生したエラーが取得できます。 関連するデータを複数アップロードしたい場合などに利用できます。 DataStoreConstants::DATA_FLAG_NEED_COMPLETION を指定してアップロードされたデータは本関数で有効化されるまで誰からも参照・変更できません。 もし永続化設定がなされていた場合は本非同期処理が成功したときに設定されます。 DataStoreClient::PostObject() を開始してから 3 時間以内に本関数で有効化する必要があります。 3 時間以上経過すると自動的にサーバー上のデータが削除されます。 DataStoreConstants::DATA_FLAG_NEED_COMPLETION を指定していない場合は DataStoreClient::PostObject() の完了と同時にサーバー上のデータが有効化されるため 本関数の呼び出しは不要です。 すでに有効化済みのデータに対して本関数を呼び出した場合の結果は QERROR(DataStore, OperationNotAllowed) となります。

引数
[in,out]pContext呼び出し情報。
[in]dataIdsアップロードを完了させるデータIDのリスト。 指定できるのは DataStoreConstants::DATA_FLAG_NEED_COMPLETION を指定してアップロードされたデータに限ります。


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreLogicServerClient::DeleteObject ( ProtocolCallContext pContext,
const DataStoreDeleteParam param 
)
virtualinherited

ストレージのデータを削除します。

対象データの更新権限を持っている人のみが削除できます。 データ ID 指定 POST のデータはクライアントからは削除できません。 NMAS から削除を行ってください。

引数
[in,out]pContext呼び出し情報。
[in]param詳細情報。


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreLogicServerClient::DeleteObject ( ProtocolCallContext pContext,
const qUnsignedInt64 dataId 
)
virtualinherited

ストレージのデータを削除します。

DataStoreDeleteParamを使用する場合と動作の違いはありません。 対象データの更新権限を持っている人のみが削除できます。 データ ID 指定 POST のデータはクライアントからは削除できません。 NMAS から削除を行ってください。

引数
[in,out]pContext呼び出し情報。
[in]dataId削除したいデータのdata_id


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

virtual qBool nn::nex::DataStoreLogicServerClient::DeleteObject ( ProtocolCallContext pContext,
const qVector< DataStoreDeleteParam > &  params,
const qBool  transactional = true,
qVector< qResult > *  pResults = NULL 
)
virtualinherited

ストレージのデータを一括削除します。

一括処理の上限数は100件です。 pResultにはparamsで指定したデータIDに対する処理の結果が指定した数だけ同順で返ります。 対象データの更新権限を持っている人のみが削除できます。 データ ID 指定 POST のデータはクライアントからは削除できません。 NMAS から削除を行ってください。

引数
[in,out]pContext呼び出し情報。
[in]params詳細情報。
[in]transactionalすべて成功する場合のみ処理を行うか (true)、できる限り処理を行うか。処理に失敗したデータについては処理が取り消されます。(false)。
[out]pResults成功したかどうかの結果 (省略可)


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

virtual qBool nn::nex::DataStoreLogicServerClient::DeleteObject ( ProtocolCallContext pContext,
const qVector< qUnsignedInt64 > &  dataIds,
const qBool  transactional = true,
qVector< qResult > *  pResults = NULL 
)
virtualinherited

ストレージのデータを一括削除します。

DataStoreDeleteParamを使用する場合と動作の違いはありません。 一括処理の上限数は100件です。 pResultにはdataIdsで指定したデータIDに対する処理の結果が指定した数だけ同順で返ります。 対象データの更新権限を持っている人のみが一括削除できます。 データ ID 指定 POST のデータはクライアントからは削除できません。 NMAS から削除を行ってください。

引数
[in,out]pContext呼び出し情報。
[in]dataIds削除したいデータのdata_id
[in]transactionalすべて成功する場合のみ処理を行うか (true)、できる限り処理を行うか。処理に失敗したデータについては処理が取り消されます。(false)。
[out]pResults成功したかどうかの結果 (省略可)


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

virtual qBool nn::nex::DataStoreLogicServerClient::ChangeMeta ( ProtocolCallContext pContext,
const DataStoreChangeMetaParam param 
)
virtualinherited

ストレージのメタ情報を変更します。

更新権限を持っているデータのみ更新することが可能です。

DataStoreChangeMetaParamDataStoreChangeMetaCompareParam を設定すると、メタ情報をコンペアアンドスワップで変更します。この時、設定した値と実際の値が一致しなかった場合は変更されず、 CallContext::GetOutcome()QERROR(DataStore, ValueNotEqual) が返ります。 データ ID 指定 POST のデータは ChangeMeta の処理は行えません。

引数
[in,out]pContext呼び出し情報。
[in]param詳細情報。


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreLogicServerClient::ChangeMeta ( ProtocolCallContext pContext,
const qVector< qUnsignedInt64 > &  dataIds,
const DataStoreChangeMetaParam param,
const qBool  transactional = true,
qVector< qResult > *  pResults = NULL 
)
virtualinherited

ストレージのメタ情報を一括で変更します。

param に設定した条件を用いて dataIds で指定したデータのメタ情報を更新します。 ただし、DataStoreChangeMetaParam::SetDataId()で設定した情報は無視されます。 一括処理の上限数は100件です。 pResultにはdataIdsで指定したデータIDに対する処理の結果が指定した数だけ同順で返ります。 更新権限を持っているデータのみ更新することが可能です。 データ ID 指定 POST のデータは ChangeMeta の処理は行えません。

DataStoreChangeMetaParamDataStoreChangeMetaCompareParam を設定すると、メタ情報をコンペアアンドスワップで変更します。この時、設定した値と実際の値が一致しなかった場合は変更されず、 CallContext::GetOutcome()QERROR(DataStore, ValueNotEqual) が返ります。

引数
[in,out]pContext呼び出し情報。
[in]dataIds更新したいデータのdata_id
[in]param詳細情報。
[in]transactionalすべて成功する場合のみ処理を行うか (true)、できる限り処理を行うか。処理に失敗したデータについては処理が取り消されます。(false)。
[out]pResults成功したかどうかの結果 (省略可)


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

virtual qBool nn::nex::DataStoreLogicServerClient::ChangeMeta ( ProtocolCallContext pContext,
const qVector< DataStoreChangeMetaParam > &  params,
const qBool  transactional = true,
qVector< qResult > *  pResults = NULL 
)
virtualinherited

ストレージのメタ情報を一括で変更します。

DataStoreChangeMetaParamを個別に指定できます。 一括処理の上限数は100件です。 pResultにはparamsで指定したデータIDに対する処理の結果が指定した数だけ同順で返ります。 更新権限を持っているデータのみ更新することが可能です。 データ ID 指定 POST のデータは ChangeMeta の処理は行えません。

DataStoreChangeMetaParamDataStoreChangeMetaCompareParam を設定すると、メタ情報をコンペアアンドスワップで変更します。この時、設定した値と実際の値が一致しなかった場合は変更されず、 CallContext::GetOutcome()QERROR(DataStore, ValueNotEqual) が返ります。

引数
[in,out]pContext呼び出し情報。
[in]params詳細情報。
[in]transactionalすべて成功する場合のみ処理を行うか (true)、できる限り処理を行うか。処理に失敗したデータについては処理が取り消されます。(false)。
[out]pResults成功したかどうかの結果 (省略可)


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

virtual qBool nn::nex::DataStoreLogicServerClient::GetMeta ( ProtocolCallContext pContext,
const DataStoreGetMetaParam param,
DataStoreMetaInfo pMetaInfo 
)
virtualinherited

ストレージのメタ情報を取得します。

本関数でタグ、評価情報、メタ情報内のバイナリデータ、権限を持ったプリンシパルIDを取得したい場合は、 DataStoreGetMetaParam::SetResultOption を使用して取得したい情報をセットしてください。 デフォルトではこれらの情報は取得しません。 対象のデータの参照権限を持っている人のみが取得できます。

引数
[in,out]pContext呼び出し情報。
[in]param詳細情報。
[out]pMetaInfo取得結果。


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreLogicServerClient::GetMeta ( ProtocolCallContext pContext,
const qVector< qUnsignedInt64 > &  dataIds,
const DataStoreGetMetaParam param,
qVector< DataStoreMetaInfo > *  pMetaInfos,
qVector< qResult > *  pResults = NULL 
)
virtualinherited

ストレージのメタ情報を一括取得します。

本関数でタグ、評価情報、メタ情報内のバイナリデータ、権限を持ったプリンシパルIDを取得したい場合は、 DataStoreGetMetaParam::SetResultOption を使用して取得したい情報をセットしてください。 デフォルトではこれらの情報は取得しません。 param に設定した条件を用いて dataIds で指定したデータのメタ情報を取得します。 ただし、DataStoreGetMetaParam::SetDataId() 及び DataStoreGetMetaParam::SetPersistenceTarget() で設定した情報は無視されます。 一括処理の上限数は100件です。 pMetaInfos, pResult には dataIds で指定したデータIDに対する処理の結果が指定した数だけ同順で返ります。 対象のデータの参照権限を持っている人のみが取得できます。 対象のデータが見つからなかったり、参照権限が無い場合は pMetaInfos に含まれるオブジェクトが無効になります。有効/無効は DataStoreMetaInfo::IsValid() で調べることができます。

引数
[in,out]pContext呼び出し情報。
[in]dataIdsメタ情報を取得するデータのdataId
[in]param詳細情報。
[out]pMetaInfos取得結果。
[out]pResults成功したかどうかの結果 (省略可)


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreLogicServerClient::GetMeta ( ProtocolCallContext pContext,
const qVector< DataStoreGetMetaParam > &  params,
qVector< DataStoreMetaInfo > *  pMetaInfos,
qVector< qResult > *  pResults = NULL 
)
virtualinherited

ストレージのメタ情報を一括取得します。

本関数でタグ、評価情報、メタ情報内のバイナリデータ、権限を持ったプリンシパルIDを取得したい場合は、 DataStoreGetMetaParam::SetResultOption を使用して取得したい情報をセットしてください。 デフォルトではこれらの情報は取得しません。 一括処理の上限数は100件です。 pMetaInfos, pResult には param に指定されたデータに対する処理の結果が指定した数だけ同順で返ります。 対象のデータの参照権限を持っている人のみが取得できます。 対象のデータが見つからなかったり、参照権限が無い場合は pMetaInfos に含まれるオブジェクトが無効になります。有効/無効は DataStoreMetaInfo::IsValid() で調べることができます。

引数
[in,out]pContext呼び出し情報。
[in]params詳細情報。
[out]pMetaInfos取得結果。
[out]pResults成功したかどうかの結果 (省略可)


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreLogicServerClient::SearchObject ( ProtocolCallContext pContext,
const DataStoreSearchParam param,
DataStoreSearchResult pSearchResult 
)
virtualinherited

ストレージの情報を検索します。

対象のデータの参照権限を持っているデータのみを検索できます。

引数
[in,out]pContext呼び出し情報。
[in]param詳細情報。
[out]pSearchResult検索結果。


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreLogicServerClient::SearchObjectLight ( ProtocolCallContext pContext,
const DataStoreSearchParam param,
DataStoreSearchResult pSearchResult 
)
virtualinherited

ストレージの情報を検索します。

対象のデータの参照権限を持っているデータのみを検索できます。 本関数を使用する際は、タグ及び検索一致件数の取得を検索条件に指定することはできません。

また本関数は DataStoreClient::SearchObject() よりも API 呼び出し頻度制限が緩和されています。 詳細は、 「CTRガイドライン インターネット通信編」のNEXの項目 を参照してください。

引数
[in,out]pContext呼び出し情報。
[in]param詳細情報。
[out]pSearchResult検索結果。


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreLogicServerClient::RateObject ( ProtocolCallContext pContext,
const DataStoreRatingTarget target,
const DataStoreRateObjectParam param,
DataStoreRatingInfo pRating 
)
virtualinherited

データの評価を行います。

評価を行うには、予め該当のデータスロットが初期化されている必要があります。 評価の初期化は DataStoreClient::PostObject() する際に、 DataStorePreparePostParam::SetRatingSetting() で行います。 自己評価が禁止されたデータに対して自己評価した場合や、重複ロック中のデータに対して本関数を呼び出した場合の結果は QERROR(DataStore, OperationNotAllowed) となります。 重複ロックされているかどうかやロック期間については DataStoreClient::GetRating()DataStoreRatingLog を取得することで確認できます。 対象のデータの参照権限を持っている人のみが評価できます。

引数
[in,out]pContext呼び出し情報。
[in]target評価を行う対象。
[in]param設定パラメータ。
[out]pRating評価後の評価情報。不要の場合はNULL


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreLogicServerClient::RateObject ( ProtocolCallContext pContext,
const qVector< DataStoreRatingTarget > &  targets,
const DataStoreRateObjectParam param,
const qBool  transactional = true,
qVector< DataStoreRatingInfo > *  pRatings = NULL,
qVector< qResult > *  pResults = NULL 
)
virtualinherited

データの一括評価を行います。

一括処理の上限数は16件です。 paramで指定したパラメータは、targetsで指定したすべての対象に適用されます。 pRatingsとpResultには、targetsで指定した対象に対する処理の結果が指定した数だけ同順で返ります。

評価を行うには、予め該当のデータスロットが初期化されている必要があります。 評価の初期化は DataStoreClient::PostObject() する際に、 DataStorePreparePostParam::SetRatingSetting() で行います。 自己評価が禁止されたデータに対して自己評価した場合や、重複ロック中のデータに対して本関数を呼び出した場合の結果は QERROR(DataStore, OperationNotAllowed) となります。 重複ロックされているかどうかやロック期間については DataStoreClient::GetRating()DataStoreRatingLog を取得することで確認できます。 対象のデータの参照権限を持っている人のみが評価できます。

引数
[in,out]pContext呼び出し情報。
[in]targets評価を行う対象。
[in]param設定パラメータ。
[in]transactionalすべて成功する場合のみ処理を行うか (true)
[out]pRatings評価後の評価情報。不要の場合はNULL (省略可)
[out]pResults成功したかどうかの結果 (省略可)


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

virtual qBool nn::nex::DataStoreLogicServerClient::RateObject ( ProtocolCallContext pContext,
const qVector< DataStoreRatingTarget > &  targets,
const qVector< DataStoreRateObjectParam > &  params,
const qBool  transactional = true,
qVector< DataStoreRatingInfo > *  pRatings = NULL,
qVector< qResult > *  pResults = NULL 
)
virtualinherited

データの一括評価を行います。

DataStoreRateObjectParamを個別に指定できます。 一括処理の上限数は16件です。 paramsはtargetsと同じ数指定する必要があります。この時、各パラメータは対象に同順で適用されます。 pRatingsとpResultには、targetsで指定した対象に対する処理の結果が指定した数だけ同順で返ります。

評価を行うには、予め該当のデータスロットが初期化されている必要があります。 評価の初期化は DataStoreClient::PostObject() する際に、 DataStorePreparePostParam::SetRatingSetting() で行います。 自己評価が禁止されたデータに対して自己評価した場合や、重複ロック中のデータに対して本関数を呼び出した場合の結果は QERROR(DataStore, OperationNotAllowed) となります。 重複ロックされているかどうかやロック期間については DataStoreClient::GetRating()DataStoreRatingLog を取得することで確認できます。 対象のデータの参照権限を持っている人のみが評価できます。

引数
[in,out]pContext呼び出し情報。
[in]targets評価を行う対象。
[in]params設定パラメータ。
[in]transactionalすべて成功する場合のみ処理を行うか (true)
[out]pRatings評価後の評価情報。不要の場合はNULL (省略可)
[out]pResults成功したかどうかの結果 (省略可)


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

virtual qBool nn::nex::DataStoreLogicServerClient::RateObjectsWithPosting ( ProtocolCallContext pContext,
const qVector< DataStoreRatingTarget > &  targets,
const qVector< DataStoreRateObjectParam > &  rateParams,
const qVector< DataStorePostParam > &  postParams,
qBool  transactional = true,
qVector< DataStoreRatingInfo > *  pRatings = NULL,
qVector< qResult > *  pResults = NULL 
)
virtualinherited

複数のデータの一括評価を行います。存在しない場合は、指定した値で初期化して、評価を行います。

DataStoreRateObjectParam を個別に指定できます。また、存在しない場合の初期値を DataStorePostParam で設定できます。 一括処理の上限数は16件です。 rateParams, postParams は targets と同じ数指定する必要があります。この時、各パラメータは対象に同順で適用されます。 pRatings と pResult には、targetsで指定した対象に対する処理の結果が指定した数だけ同順で返ります。

評価の初期化は、 postParams の要素内の DataStorePreparePostParam::SetRatingSetting() で設定できます。 SetRatingSetting()には、初期化に必要なすべてのスロットの初期値を指定してください。 初期化後に、未使用のスロットを再初期化した場合の結果は、 QERROR(DataStore, InvalidArgument) になります。

自己評価が禁止されたデータに対して自己評価した場合や、重複ロック中のデータに対して本関数を呼び出した場合の結果は QERROR(DataStore, OperationNotAllowed) となります。 重複ロックされているかどうかやロック期間については DataStoreClient::GetRating()DataStoreRatingLog を取得することで確認できます。 対象のデータの参照権限を持っている人のみが評価できます。

引数
[in,out]pContext呼び出し情報。
[in]targets評価を行う対象。
[in]rateParams評価設定パラメータ。
[in]postParams初期設定パラメータ。
[in]transactionalすべて成功する場合のみ処理を行うか (true)
[out]pRatings評価後の評価情報。不要の場合はNULL (省略可)
[out]pResults成功したかどうかの結果 (省略可) transactinal が false のときのみに入ります


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

参照
RateObjectWithPosting
virtual qBool nn::nex::DataStoreLogicServerClient::RateObjectsWithPosting ( ProtocolCallContext pContext,
const qVector< DataStoreRatingTarget > &  targets,
const DataStoreRateObjectParam rateParam,
const DataStorePostParam postParam,
qBool  transactional = true,
qVector< DataStoreRatingInfo > *  pRatings = NULL,
qVector< qResult > *  pResults = NULL 
)
virtualinherited

複数のデータの一括評価を行います。存在しない場合は、指定した値で初期化して、評価を行います。評価と初期値は、ひとつのみ指定できます。

DataStoreRateObjectParam を個別に指定できます。また、存在しない場合の初期値を DataStorePostParam で設定できます。 一括処理の上限数は16件です。 pRatings と pResult には、targetsで指定した対象に対する処理の結果が指定した数だけ同順で返ります。

評価の初期化は、 postParam の要素内の DataStorePreparePostParam::SetRatingSetting() で設定できます。 SetRatingSetting()には、初期化に必要なすべてのスロットの初期値を指定してください。 初期化後に、未使用のスロットを再初期化した場合の結果は、 QERROR(DataStore, InvalidArgument) になります。

自己評価が禁止されたデータに対して自己評価した場合や、重複ロック中のデータに対して本関数を呼び出した場合の結果は QERROR(DataStore, OperationNotAllowed) となります。 重複ロックされているかどうかやロック期間については DataStoreClient::GetRating()DataStoreRatingLog を取得することで確認できます。 対象のデータの参照権限を持っている人のみが評価できます。

引数
[in,out]pContext呼び出し情報。
[in]targets評価を行う対象。
[in]rateParam評価設定パラメータ。
[in]postParam初期設定パラメータ。
[in]transactionalすべて成功する場合のみ処理を行うか (true)
[out]pRatings評価後の評価情報。不要の場合はNULL (省略可)
[out]pResults成功したかどうかの結果 (省略可) transactinal が false のときのみに入ります


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

参照
RateObjectWithPosting
virtual qBool nn::nex::DataStoreLogicServerClient::RateObjectWithPosting ( ProtocolCallContext pContext,
const DataStoreRatingTarget target,
const DataStoreRateObjectParam rateParam,
const DataStorePostParam postParam,
DataStoreRatingInfo pRating = NULL 
)
virtualinherited

データの評価を行います。存在しない場合は、指定した値で初期化して、評価を行います。。

評価時のDataStoreRateObjectParam を指定し、存在しない場合の初期値を DataStorePostParam で設定できます。 評価の初期化は、 postParam の要素内の DataStorePreparePostParam::SetRatingSetting() で設定できます。 SetRatingSetting()には、初期化に必要なすべてのスロットの初期値を指定してください。 初期化後に、未使用のスロットを再初期化した場合の結果は、 QERROR(DataStore, InvalidArgument) になります。

自己評価が禁止されたデータに対して自己評価した場合や、重複ロック中のデータに対して本関数を呼び出した場合の結果は QERROR(DataStore, OperationNotAllowed) となります。 重複ロックされているかどうかやロック期間については DataStoreClient::GetRating()DataStoreRatingLog を取得することで確認できます。 対象のデータの参照権限を持っている人のみが評価できます。

引数
[in,out]pContext呼び出し情報。
[in]target評価を行う対象。
[in]rateParam評価設定パラメータ。
[in]postParam初期設定パラメータ。
[out]pRating評価後の評価情報。不要の場合はNULL


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

参照
RateObjectsWithPosting
virtual qBool nn::nex::DataStoreLogicServerClient::ResetRating ( ProtocolCallContext pContext,
const DataStoreRatingTarget target,
qUnsignedInt64  updatePassword = DataStoreConstants::INVALID_PASSWORD 
)
virtualinherited

データの評価情報と評価ログをリセットします。

指定されたデータIDのスロットのみリセットします。 対象のデータの更新権限を持っている人のみがリセットできます。

引数
[in,out]pContext呼び出し情報。
[in]target評価情報をリセットする対象
[in]updatePassword更新パスワード。デフォルトは DataStoreConstants::INVALID_PASSWORD となっておりパスワード認証を利用しません。


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreLogicServerClient::ResetRating ( ProtocolCallContext pContext,
const qUnsignedInt64 dataId 
)
virtualinherited

データの評価情報と評価ログをリセットします。

指定されたデータIDで使用してる全スロットをリセットします。 対象のデータの更新権限を持っている人のみがリセットできます。

引数
[in,out]pContext呼び出し情報。
[in]dataId評価情報をリセットするデータIDの指定


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreLogicServerClient::ResetRating ( ProtocolCallContext pContext,
const qVector< qUnsignedInt64 > &  dataIds,
const qBool  transactional = true,
qVector< qResult > *  pResults = NULL 
)
virtualinherited

データの評価情報と評価ログを一括リセットします。

指定されたデータIDで使用してる全スロットをリセットします。 一括処理の上限数は100件です。 pResultにはdataIdsで指定したデータIDに対する処理の結果が指定した数だけ同順で返ります。 対象のデータの更新権限を持っている人のみがリセットできます。

引数
[in,out]pContext呼び出し情報。
[in]dataIds評価情報をリセットするデータIDの指定
[in]transactionalすべて成功する場合のみ処理を行うか (true)、一部処理ができない場合はすべてを取り消すか (false)。
[out]pResults成功したかどうかの結果 (省略可)


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreLogicServerClient::TouchObject ( ProtocolCallContext pContext,
const DataStoreTouchObjectParam param 
)
virtualinherited

DataStore サーバーのデータの有効期限を更新します。

データアップロード時に DataStoreConstants::DATA_FLAG_PERIOD_FROM_LAST_REFERRED を指定している場合、有効期限が更新されます。 対象のデータの参照権限を持っている人のみが更新できます。

引数
[in,out]pContext呼び出し情報。
[in]param詳細情報。


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreLogicServerClient::GetPersistenceInfo ( ProtocolCallContext pContext,
PrincipalID  pid,
qUnsignedInt16  persistenceSlotId,
DataStorePersistenceInfo pPersistenceInfo 
)
virtualinherited

永続化情報を取得します。

プリンシパルIDと永続化スロットIDを指定し、永続化情報を取得します。 指定した永続化スロットが使用されていない場合やすでに非永続化されていた場合、対象のデータに対する参照権限が無い場合は非同期処理に失敗します。 ここで有効なデータIDを取得した場合でも、そのデータにアクセスした時にはすでにデータが削除されている可能性があることにご注意ください。

引数
[in,out]pContext呼び出し情報。
[in]pid永続化情報を取得したい対象のプリンシパルID。 INVALID_PRINCIPALID を指定すると自分の情報を取得します。
[in]persistenceSlotId永続化スロットID。
[out]pPersistenceInfo永続化情報。


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreLogicServerClient::GetPersistenceInfo ( ProtocolCallContext pContext,
PrincipalID  pid,
qVector< qUnsignedInt16 persistenceSlotIds,
qVector< DataStorePersistenceInfo > *  pPersistenceInfos,
qVector< qResult > *  pResults = NULL 
)
virtualinherited

永続化情報を取得します。

プリンシパルIDと永続化スロットIDを指定し、永続化情報を取得します。 非同期処理が成功すると、 persistenceSlotIds で指定した個数と順番通りに pPersistenceInfos と pResults に結果が格納されます。 指定した永続化スロットが使用されていない場合やすでに非永続化されていた場合、対象のデータに対する参照権限が無い場合は pPersistenceInfos に含まれるオブジェクトが無効になります。有効/無効は DataStorePersistenceInfo::IsValid() で調べることができます。 ここで有効なデータIDを取得した場合でも、そのデータにアクセスした時にはすでにデータが削除されている可能性があることにご注意ください。

引数
[in,out]pContext呼び出し情報。
[in]pid永続化情報を取得したい対象のプリンシパルID。 INVALID_PRINCIPALID を指定すると自分の情報を取得します。
[in]persistenceSlotIds永続化スロットIDのリスト。空を指定するとすべてのスロット情報を取得します。
[out]pPersistenceInfos永続化情報のリスト。
[out]pResults各スロットIDごとの取得結果 (省略可)


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreLogicServerClient::PerpetuateObject ( ProtocolCallContext pContext,
qUnsignedInt16  persistenceSlotId,
qUnsignedInt64  dataId,
qBool  deleteLastObject = true 
)
virtualinherited

データを永続化します。

データが有効期限により自動的に削除されないようにします。永続化スロットに登録されたデータは有効期限が DataStoreConstants::PERMANENT_DATE_TIME となります。 もし以前に同じ永続化スロットIDを使っていた場合は、そのデータは非永続化されます。 その際、 deleteLastObject でそのデータを削除するかどうかを設定します。 自分がオーナーとなっているデータに対してのみ永続化可能です。 以前設定した永続化スロットとデータIDが同じ場合は状態は変化せず成功します。 同じデータIDを複数の永続化スロットに設定することはできません。そのように設定しようとした場合の結果は QERROR(DataStore, OperationNotAllowed) となります。 永続化されたデータに対して DataStoreClient::DeleteObject() を呼び出して削除した場合は自動的に非永続化されます。

引数
[in,out]pContext呼び出し情報。
[in]persistenceSlotId永続化に使用する永続化スロットID。
[in]dataId永続化するデータのデータID。
[in]deleteLastObject以前のデータを削除するかどうか。デフォルトでは削除します。


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreLogicServerClient::UnperpetuateObject ( ProtocolCallContext pContext,
qUnsignedInt16  persistenceSlotId,
qBool  deleteLastObject = false 
)
virtualinherited

データを非永続化します。

データが自動的に削除されるように戻します。非永続化されたデータの有効期限が現在時刻プラス有効日数となります。 deleteLastObject を true にした場合は非永続化すると同時にデータを削除します。

引数
[in,out]pContext呼び出し情報。
[in]persistenceSlotId非永続化するデータが使用している永続化スロットID
[in]deleteLastObject非永続化したデータを削除するかどうか。デフォルトでは削除しません。


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreLogicServerClient::GetPasswordInfo ( ProtocolCallContext pContext,
qUnsignedInt64  dataId,
DataStorePasswordInfo pPasswordInfo 
)
virtualinherited

パスワード情報を取得します。

アップロードしたデータに設定されたパスワード情報を取得します。 自分がオーナーとなっているデータのパスワードのみ取得可能です。

引数
[in,out]pContext呼び出し情報。
[in]dataIdパスワード情報を取得する対象のデータID。
[out]pPasswordInfoパスワード情報。


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

virtual qBool nn::nex::DataStoreLogicServerClient::GetPasswordInfo ( ProtocolCallContext pContext,
const qVector< qUnsignedInt64 > &  dataIds,
qVector< DataStorePasswordInfo > *  pPasswordInfos,
qVector< qResult > *  pResults = NULL 
)
virtualinherited

パスワード情報を複数取得します。

アップロードしたデータに設定されたパスワード情報を取得します。 pPasswordInfos と pResult には dataIds で指定したデータIDに対する処理の結果が指定した数だけ同順で返ります。 自分がオーナーとなっているデータのパスワードのみ取得可能です。 対象のデータが見つからなかったり、オーナー権限が無い場合は pPasswordInfos に含まれるオブジェクトが無効になります。有効/無効は DataStorePasswordInfo::IsValid() で調べることができます。

引数
[in,out]pContext呼び出し情報。
[in]dataIdsパスワード情報を取得する対象のデータID。
[out]pPasswordInfosパスワード情報。
[out]pResultsデータIDごとの取得結果 (省略可)


戻り値一覧:

true RMC 呼び出しの初期化に成功。

false 失敗。

nn::nex::DataStoreLogicServerClientInterfaceを実装しています。

void nn::nex::ServiceClient::SetDefaultCredentials ( Credentials pCredentials)
inherited
引数
pCredentialsThe default Credentials for this service.
注釈
It is up to each ServiceClient to use this method to set the current Credentials in each of his protocols.
virtual qBool nn::nex::ServiceClient::Bind ( Credentials pCredentials)
virtualinherited

サービスを利用するための証明書を登録します。

サービスを利用するための証明書をセットします。 機能を利用する前にセットする必要があります。NgsFacade::Login() の非同期処理に成功後、 NgsFacade::GetCredentials() で取得した証明書を引数に指定してください。 Bind() で証明書をセットした後もう一度 Bind() を呼び出すと証明書を差し替える事ができます。

引数
[in]pCredentialsサービスにアクセスするための証明書。


戻り値一覧:

true 成功。pCredentials が NULL でない場合は必ず成功します。

false pCredentials に NULL が指定された。

virtual qBool nn::nex::ServiceClient::Unbind ( )
virtualinherited

証明書の登録を解除します。

Bind() でセットされた証明書を解除します。Bind() が呼び出されていなくても本関数を呼び出すことができます。 本オブジェクトを破棄する際に自動的に Unbind() と同等の処理行われるため、明示的に呼び出す必要はありません。


戻り値一覧:

true 証明書の解除を行った。

false Bind() が行われていないため何も行わなかった。

Credentials* nn::nex::ServiceClient::GetCredentials ( ) const
inherited

Bind() された Credentials オブジェクトを取得します。

戻り値
Bind() された Credentials オブジェクト。Bind() されていない場合、NULL を返します。