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

デバッグ補助機能を提供するライブラリです。 [詳解]

#include <RendezVous/Services/Jugem/Debug/src/Client/DebugClient.h>

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

公開メンバ関数

 DebugClient ()
 コンストラクタです。
 
virtual ~DebugClient ()
 デストラクタです。 [詳解]
 
virtual qBool Bind (Credentials *pCredentials)
 サービスを利用するための証明書を登録します。 [詳解]
 
qBool DisableApiRecorder (ProtocolCallContext *pContext)
 サーバーでのAPI呼び出しの記録を無効化する。 [詳解]
 
qBool EnableApiRecorder (ProtocolCallContext *pContext)
 サーバーでのAPI呼び出しの記録を有効化する。 [詳解]
 
qBool GetApiCalls (ProtocolCallContext *pContext, qList< ApiCallData > *pApiCallDatas, qList< PrincipalID > &principalIds, DateTime sinceTime=DateTime::Never, DateTime untilTime=DateTime::Never)
 サーバーよりAPI呼び出しの履歴を取得する。 [詳解]
 
qBool GetApiCallSummary (ProtocolCallContext *pContext, qList< ApiCallSummary > *pApiCallSummaryList, PrincipalID principalId, DateTime sinceTime=DateTime::Never, DateTime untilTime=DateTime::Never, qBool isLimitOverOnly=true)
 API呼び出し履歴を集計し、呼び出し頻度の制限内にあるかどうかを取得します [詳解]
 
CredentialsGetCredentials () const
 Bind() された Credentials オブジェクトを取得します。 [詳解]
 
qBool GetExcludeJoinedMatchmakeSession (ProtocolCallContext *pContext, qBool *bpAvoidPreviousGathering)
 オートマッチで過去参加したマッチメイクセッションを参加対象外とするかどうかを取得します [詳解]
 
qBool IsApiRecorderEnabled (ProtocolCallContext *pContext, bool *IsEnabled)
 サーバーでのAPI呼び出しの記録が有効であるかを取得する。 [詳解]
 
void SetDefaultCredentials (Credentials *pCredentials)
 
qBool SetExcludeJoinedMatchmakeSession (ProtocolCallContext *pContext, qBool bAvoidPreviousGathering)
 オートマッチで過去参加したマッチメイクセッションを参加対象外とするかどうかを設定します [詳解]
 
virtual qBool Unbind ()
 証明書の登録を解除します。 [詳解]
 

詳解

デバッグ補助機能を提供するライブラリです。

注意:本機能はデバッグ専用の機能のため、製品ロムに含めてはいけません。

DebugClient ではNEXでのサーバーを介するAPI呼び出しをサーバー側で記録・履歴の取得や、 デバッグを効率化するために、ゲームサーバーの設定を変更することができます。

将来的には、ゲームサーバー全体の設定変更機能については管理用のWebシステムが提供される予定です。 その際には、 DebugClient からゲームサーバーの設定変更関数は削除されます。

構築子と解体子

virtual nn::nex::DebugClient::~DebugClient ( )
virtual

デストラクタです。

内部で Unbind() を呼び出します。

関数詳解

virtual qBool nn::nex::DebugClient::Bind ( Credentials pCredentials)
virtual

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

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

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


戻り値一覧:

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

false pCredentials に NULL が指定された。

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

virtual qBool nn::nex::DebugClient::Unbind ( )
virtual

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

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


戻り値一覧:

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

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

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

qBool nn::nex::DebugClient::EnableApiRecorder ( ProtocolCallContext pContext)

サーバーでのAPI呼び出しの記録を有効化する。

サーバーでのAPI呼び出しの記録を有効化します。

通常、API呼び出しの記録は無効化されていますので、 DebugClient::EnableApiRecorder() を用いて記録を有効化してください。 なおAPI呼び出しが1時間以上なかった場合には自動的に無効化されます。

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


戻り値一覧:

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

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

qBool nn::nex::DebugClient::DisableApiRecorder ( ProtocolCallContext pContext)

サーバーでのAPI呼び出しの記録を無効化する。

サーバーでのAPI呼び出しの記録を無効化します。 無効化に伴ってサーバー上の記録したAPI呼び出しの履歴も全て消去されます。

API呼び出しの記録の有効・無効はサーバー全体で一つの状態しか持たないため、 DisableApiRecorder を呼ぶことで、他の DebugClient を利用しているクライアントにも 影響が出ることにご注意ください。

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


戻り値一覧:

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

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

qBool nn::nex::DebugClient::IsApiRecorderEnabled ( ProtocolCallContext pContext,
bool *  IsEnabled 
)

サーバーでのAPI呼び出しの記録が有効であるかを取得する。

引数
[in,out]pContext呼び出し情報。
[out]IsEnabledサーバーの状態。


戻り値一覧:

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

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

qBool nn::nex::DebugClient::GetApiCalls ( ProtocolCallContext pContext,
qList< ApiCallData > *  pApiCallDatas,
qList< PrincipalID > &  principalIds,
DateTime  sinceTime = DateTime::Never,
DateTime  untilTime = DateTime::Never 
)

サーバーよりAPI呼び出しの履歴を取得する。

指定した条件でAPI呼び出しの履歴をリストとして取得します。 取得したリストは呼び出し順に並んでいます。

取得するAPI呼び出しの条件指定には、呼び出し時刻と呼び出したクライアントの プリンシパル ID が指定できます。

指定した時刻より後の履歴を取得するには、 sinceTime 引数で指定してください。 同様に指定した時刻より前の履歴を取得するには、 untilTime 引数で指定してください。 指定したくない場合には DateTime::Never を引数として渡しください。

特定の プリンシパル ID の履歴のみ取得する際には、principalIds に取得したい プリンシパル ID のリストを与えてください。 指定しない場合には空のリストを与えてください。

非同期処理の結果、以下の Result が返ることがあります。

引数
[in,out]pContext呼び出し情報。
[out]pApiCallDatas取得したAPI呼び出し履歴。
[in]principalIdsプリンシパル ID のリスト。
[in]sinceTime指定する時刻。
[in]untilTime指定する時刻。


戻り値一覧:

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

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

qBool nn::nex::DebugClient::GetApiCallSummary ( ProtocolCallContext pContext,
qList< ApiCallSummary > *  pApiCallSummaryList,
PrincipalID  principalId,
DateTime  sinceTime = DateTime::Never,
DateTime  untilTime = DateTime::Never,
qBool  isLimitOverOnly = true 
)

API呼び出し履歴を集計し、呼び出し頻度の制限内にあるかどうかを取得します

指定された条件に合致するAPIの呼び出し情報を集計し、呼び出し回数の総計や、呼び出し回数がガイドラインで 規定されているAPIの呼び出し制限内に収まっているかの判定結果等を取得します。

取得するAPI呼び出しの条件指定には、呼び出し時刻と呼び出したクライアントの プリンシパル ID が指定できます。

指定した時刻より後の履歴を取得するには、 sinceTime 引数で指定してください。 同様に指定した時刻より前の履歴を取得するには、 untilTime 引数で指定してください。 指定したくない場合には DateTime::Never を引数として渡しください。

非同期処理の結果、以下の Result が返ることがあります。

引数
[in,out]pContext呼び出し情報。
[out]pApiCallSummaryList呼び出し履歴の集計情報のリスト
[in]principalId取得対象のプリンシパル ID
[in]sinceTime開始時刻
[in]untilTime終了時刻
[in]isLimitOverOnly呼び出し頻度制限の目安を超えているAPIのみ取得するかどうか


戻り値一覧:

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

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

qBool nn::nex::DebugClient::SetExcludeJoinedMatchmakeSession ( ProtocolCallContext pContext,
qBool  bAvoidPreviousGathering 
)

オートマッチで過去参加したマッチメイクセッションを参加対象外とするかどうかを設定します

デフォルト設定では、 MatchmakeExtensionClient::AutoMatchmake() では、過去3回にわたって参加したマッチメイクセッションに関して、 サーバー側で参加対象から外しています。アプリケーションのデバッグ時に、 MatchmakeExtensionClient::AutoMatchmake() 同じマッチメイクセッションに 参加したいという場合に本関数を使用してください。

ゲームサーバー全体の設定となりますので使用にあたっては注意してください。 なお、ゲームサーバーのデバッグ設定管理用 Web システムが提供され次第、本関数は使用できなくなります。

非同期処理の結果、以下の Result が返ることがあります。

引数
[in,out]pContext呼び出し情報。
[in]bAvoidPreviousGatheringオートマッチで過去参加したマッチメイクセッションを参加対象外とするかどうか。 trueの場合、過去に参加したマッチメイクセッションに参加しない(ゲームサーバーのデフォルト設定)、 false の場合、過去に参加したマッチメイクセッションに参加する。
qBool nn::nex::DebugClient::GetExcludeJoinedMatchmakeSession ( ProtocolCallContext pContext,
qBool bpAvoidPreviousGathering 
)

オートマッチで過去参加したマッチメイクセッションを参加対象外とするかどうかを取得します

非同期処理の結果、以下の Result が返ることがあります。

引数
[in,out]pContext呼び出し情報。
[in]bpAvoidPreviousGatheringオートマッチで過去参加したマッチメイクセッションを参加対象外とするかどうか。 trueの場合、過去に参加したマッチメイクセッションに参加しない(ゲームサーバーのデフォルト設定)、 false の場合、過去に参加したマッチメイクセッションに参加する。
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.
Credentials* nn::nex::ServiceClient::GetCredentials ( ) const
inherited

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

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