NEC mBaaS Embedded SDK  6.2.0
 全て クラス ネームスペース ファイル 関数 変数 列挙型 列挙型の値
Public メソッド | Protected 変数 | すべてのメンバ一覧
クラス necbaas::NbJsonObject

Jsonオブジェクト. [詳細]

#include "necbaas/nb_json_object.h"

necbaas::NbJsonObjectに対する継承グラフ
necbaas::NbObject

Public メソッド

 NbJsonObject ()
 コンストラクタ. [詳細]
 
 NbJsonObject (const std::string &json_string)
 コンストラクタ. [詳細]
 
 NbJsonObject (const std::vector< char > &json_char)
 コンストラクタ. [詳細]
 
virtual ~NbJsonObject ()
 デストラクタ. [詳細]
 
bool PutAll (const std::string &json)
 全データセット. [詳細]
 
std::vector< std::string > GetKeySet () const
 キーセット取得. [詳細]
 
int GetInt (const std::string &key, int default_value=0) const
 整数値取得. [詳細]
 
int64_t GetInt64 (const std::string &key, int64_t default_value=0) const
 64bit整数値取得. [詳細]
 
double GetDouble (const std::string &key, double default_value=0.0) const
 浮動小数点値取得. [詳細]
 
bool GetBoolean (const std::string &key, bool default_value=false) const
 真偽値取得. [詳細]
 
std::string GetString (const std::string &key, const std::string default_value="") const
 文字列取得. [詳細]
 
NbJsonObject GetJsonObject (const std::string &key) const
 Jsonオブジェクト取得. [詳細]
 
NbJsonArray GetJsonArray (const std::string &key) const
 Json配列取得. [詳細]
 
const Json::Value & GetSubstitutableValue () const
 [内部処理用] [詳細]
 
Json::Value & operator[] (const std::string &key)
 Value設定用添え字演算子. [詳細]
 
const Json::Value & operator[] (const std::string &key) const
 Value参照用添え字演算子. [詳細]
 
void PutJsonObject (const std::string &key, const NbJsonObject &json_object)
 Jsonオブジェクト設定. [詳細]
 
void PutJsonArray (const std::string &key, const NbJsonArray &json_array)
 Json配列設定. [詳細]
 
void PutNull (const std::string &key)
 null設定. [詳細]
 
unsigned int GetSize () const
 サイズ取得. [詳細]
 
bool IsEmpty () const
 オブジェクト空確認. [詳細]
 
bool IsMember (const std::string &key) const
 Key存在確認. [詳細]
 
NbJsonType GetType (const std::string &key) const
 Jsonタイプ取得. [詳細]
 
void Remove (const std::string &key)
 Key削除. [詳細]
 
void Clear ()
 全データ削除. [詳細]
 
std::string ToJsonString () const
 Json文字列変換. [詳細]
 
void Replace (const Json::Value &value)
 [内部処理用] [詳細]
 
bool operator== (const NbJsonObject &other) const
 ==演算子. [詳細]
 

Protected 変数

Json::Value value_
 

説明

Jsonオブジェクト.

Json形式のKey-Valueストアを提供する。
データの取得は、Valueの型に対応したGetメソッドを使用する。
データの設定は、添え字演算子[]かValueの型に対応したPutメソッドを使用する。

本クラスのインスタンスはスレッドセーフではない

コンストラクタとデストラクタ

necbaas::NbJsonObject::NbJsonObject ( )

コンストラクタ.

necbaas::NbJsonObject::NbJsonObject ( const std::string &  json_string)
explicit

コンストラクタ.

Json文字列をParseしてNbJsonObjectを生成する。
Json Parseに失敗した場合は、空のJsonオブジェクトが生成される。

引数
[in]json_stringJson文字列
necbaas::NbJsonObject::NbJsonObject ( const std::vector< char > &  json_char)
explicit

コンストラクタ.

Json文字列をParseしてNbJsonObjectを生成する。
Json Parseに失敗した場合は、空のJsonオブジェクトが生成される。

引数
[in]json_charJson文字列
virtual necbaas::NbJsonObject::~NbJsonObject ( )
virtual

デストラクタ.

関数

void necbaas::NbJsonObject::Clear ( )

全データ削除.

全てのKey-Valueセットを削除する。

bool necbaas::NbJsonObject::GetBoolean ( const std::string &  key,
bool  default_value = false 
) const

真偽値取得.

Keyに対応するValueをbool型で取得する。
以下の場合は、default_valueを返却する。

  • Keyに対応するValueが存在しない
  • Valueが真偽値型でない
    引数
    [in]keyKey
    [in]default_value取得できなかったときに返す値
    戻り値
    Value
double necbaas::NbJsonObject::GetDouble ( const std::string &  key,
double  default_value = 0.0 
) const

浮動小数点値取得.

Keyに対応するValueをdouble型で取得する。
以下の場合は、default_valueを返却する。

  • Keyに対応するValueが存在しない
  • Valueが数値型でない
    引数
    [in]keyKey
    [in]default_value取得できなかったときに返す値
    戻り値
    Value
int necbaas::NbJsonObject::GetInt ( const std::string &  key,
int  default_value = 0 
) const

整数値取得.

Keyに対応するValueをint型で取得する。
浮動小数点は丸められる。
以下の場合は、default_valueを返却する。

  • Keyに対応するValueが存在しない
  • Valueが数値型でない
  • Valueがintの範囲外
    引数
    [in]keyKey
    [in]default_value取得できなかったときに返す値
    戻り値
    Value
int64_t necbaas::NbJsonObject::GetInt64 ( const std::string &  key,
int64_t  default_value = 0 
) const

64bit整数値取得.

Keyに対応するValueをint64_t型で取得する。
浮動小数点は丸められる。
以下の場合は、default_valueを返却する。

  • Keyに対応するValueが存在しない
  • Valueが数値型でない
  • Valueがint64_tの範囲外
    引数
    [in]keyKey
    [in]default_value取得できなかったときに返す値
    戻り値
    Value
NbJsonArray necbaas::NbJsonObject::GetJsonArray ( const std::string &  key) const

Json配列取得.

Keyに対応するValueをNbJsonArray型で取得する。
以下の場合は、空のJson配列を返却する。

  • Keyに対応するValueが存在しない
  • ValueがJson配列型でない
    引数
    [in]keyKey
    戻り値
    Value
NbJsonObject necbaas::NbJsonObject::GetJsonObject ( const std::string &  key) const

Jsonオブジェクト取得.

Keyに対応するValueをNbJsonObject型で取得する。
以下の場合は、空のJsonオブジェクトを返却する。

  • Keyに対応するValueが存在しない
  • ValueがJsonオブジェクト型でない
    引数
    [in]keyKey
    戻り値
    Value
std::vector<std::string> necbaas::NbJsonObject::GetKeySet ( ) const

キーセット取得.

戻り値
キーセット一覧
unsigned int necbaas::NbJsonObject::GetSize ( ) const

サイズ取得.

Jsonオブジェクトに存在するKey-Valueセットの数を取得する。

戻り値
Key-Valueセットの数
std::string necbaas::NbJsonObject::GetString ( const std::string &  key,
const std::string  default_value = "" 
) const

文字列取得.

Keyに対応するValueをstd::string型で取得する。
以下の場合は、default_valueを返却する。

  • Keyに対応するValueが存在しない
  • Valueが文字列型でない
    引数
    [in]keyKey
    [in]default_value取得できなかったときに返す値
    戻り値
    Value
const Json::Value& necbaas::NbJsonObject::GetSubstitutableValue ( ) const

[内部処理用]

NbJsonType necbaas::NbJsonObject::GetType ( const std::string &  key) const

Jsonタイプ取得.

Keyに対応するJsonタイプを取得する。
Keyが存在しない場合は、NULL型が返る。

引数
[in]keyKey
戻り値
Jsonタイプ
bool necbaas::NbJsonObject::IsEmpty ( ) const

オブジェクト空確認.

Jsonオブジェクトが空かどうかを確認する。

戻り値
確認結果
戻り値
true
false1以上のKey-Valueセットが存在
bool necbaas::NbJsonObject::IsMember ( const std::string &  key) const

Key存在確認.

keyがJsonオブジェクトに存在するか確認する。

戻り値
確認結果
戻り値
true存在する
false存在しない
bool necbaas::NbJsonObject::operator== ( const NbJsonObject other) const

==演算子.

Json::Value& necbaas::NbJsonObject::operator[] ( const std::string &  key)

Value設定用添え字演算子.

添え字演算子を使用してKeyに対応するValueを設定する。
Keyが存在する場合は、Key-Valueセットが更新される。
Keyが存在しない場合は、Key-Valueセットが作成される。
設定可能なValueの型は以下

  • int, unsigned int,
  • int64_t, uint64_t,
  • double
  • bool
  • std::string

NbJsonObject, NbJsonArray の設定は、 PutJsonObject(), PutJsonArray() を使用すること。

json["key1"] = 123;
json["key2"] = "value";
*
引数
[in]keyKey
戻り値
代入用内部データへの参照
const Json::Value& necbaas::NbJsonObject::operator[] ( const std::string &  key) const

Value参照用添え字演算子.

本演算子は未サポート。Valueの取得には、Getメソッドを使用してください。

bool necbaas::NbJsonObject::PutAll ( const std::string &  json)

全データセット.

Json文字列をParseしてNbJsonObject内のデータを再構築する。元々存在していたデータは破棄される。
Json Parseに失敗した場合は、空のJsonオブジェクトが生成される。

引数
[in]jsonJson文字列
void necbaas::NbJsonObject::PutJsonArray ( const std::string &  key,
const NbJsonArray json_array 
)

Json配列設定.

Keyに対応するValueをNbJsonArray型で設定する。
Keyが空文字の場合は処理しない。

引数
[in]keyKey
[in]json_arrayValue
void necbaas::NbJsonObject::PutJsonObject ( const std::string &  key,
const NbJsonObject json_object 
)

Jsonオブジェクト設定.

Keyに対応するValueをNbJsonObject型で設定する。
Keyが空文字の場合は処理しない。

引数
[in]keyKey
[in]json_objectValue
void necbaas::NbJsonObject::PutNull ( const std::string &  key)

null設定.

Keyに対応するValueにnullを設定する。
Keyが空文字の場合は処理しない。

引数
[in]keyKey
void necbaas::NbJsonObject::Remove ( const std::string &  key)

Key削除.

Keyに対応するKey-Valueセットを削除する

引数
[in]keyKey
void necbaas::NbJsonObject::Replace ( const Json::Value &  value)

[内部処理用]

std::string necbaas::NbJsonObject::ToJsonString ( ) const

Json文字列変換.

設定されているJsonオブジェクトをJson文字列に変換する。

戻り値
Json文字列

変数

Json::Value necbaas::NbJsonObject::value_
protected

Jsonデータ


このクラスの説明は次のファイルから生成されました: