Package nablarch.core.text.json
Class BasicJsonSerializationManager
java.lang.Object
nablarch.core.text.json.BasicJsonSerializationManager
- All Implemented Interfaces:
JsonSerializationManager
- Direct Known Subclasses:
AppLogJsonSerializationManager
,JaxRsAccessLogJsonSerializationManager
@Published(tag="architect")
public class BasicJsonSerializationManager
extends Object
implements JsonSerializationManager
JsonSerializationManager
の基本実装クラス。- Author:
- Shuji Kitamura
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected JsonSerializer
デフォルトのシリアライザを生成する。protected JsonSerializer
objectのmember name用のシリアライザを生成する。protected JsonSerializer
null用のシリアライザを生成する。protected List<JsonSerializer>
createSerializers
(JsonSerializationSettings settings) 使用するシリアライザを生成する。 オブジェクトに対応したシリアライザかの評価は先頭から順に行われる。 デフォルトのシリアライザのみで使用する場合であっても、objectのmember nameを処理するためのシリアライザを取得する。getSerializer
(Object value) オブジェクトに対応したシリアライザを取得する。文字列をJSONのオブジェクトに処理するためのシリアライザを取得する。void
デフォルト設定でシリアライザを初期化する。void
initialize
(JsonSerializationSettings settings) 設定を指定してシリアライザを初期化する。
-
Constructor Details
-
BasicJsonSerializationManager
public BasicJsonSerializationManager()
-
-
Method Details
-
initialize
public void initialize()デフォルト設定でシリアライザを初期化する。- Specified by:
initialize
in interfaceJsonSerializationManager
-
initialize
設定を指定してシリアライザを初期化する。- Specified by:
initialize
in interfaceJsonSerializationManager
- Parameters:
settings
- シリアライズに関する設定
-
createNullSerializer
null用のシリアライザを生成する。- Returns:
- null用のシリアライザ
-
createDefaultSerializer
デフォルトのシリアライザを生成する。- Returns:
- デフォルトのシリアライザ
-
createMemberNameSerializer
objectのmember name用のシリアライザを生成する。- Returns:
- objectのmember name用のシリアライザ
-
createSerializers
使用するシリアライザを生成する。 オブジェクトに対応したシリアライザかの評価は先頭から順に行われる。 デフォルトのシリアライザのみで使用する場合であっても、- Parameters:
settings
- シリアライズに関する設定- Returns:
- シリアライザのリスト
-
getMemberNameSerializer
objectのmember nameを処理するためのシリアライザを取得する。このメソッドの返り値となるシリアライザの出力は常にJSONのstringでなければならない。
JSONの仕様上、objectのmember nameは、必ずstringでなければならない。 一方で、
JsonSerializationManager.getStringSerializer()
で取得されるシリアライザはgetSerializer("")
のショートカットであり、 文字列用のシリアライザを独自の実装に差し替えることができる。 もし差し替え後の実装が常にstringにシリアライズする実装になっていない場合、JsonSerializationManager.getStringSerializer()
で取得したシリアライザでmember nameを 処理すると、JSONの仕様に沿わない結果となりうる。 そのため、メンバー名用のシリアライザを取得するメソッドは明示的にJsonSerializationManager.getStringSerializer()
と分けて定義している。- Specified by:
getMemberNameSerializer
in interfaceJsonSerializationManager
- Returns:
- objectのmember nameを処理するためのシリアライザ
-
getStringSerializer
文字列をJSONのオブジェクトに処理するためのシリアライザを取得する。getSerializer("")
のショートカット。 各種シリアライザにて、文字列からJSONのオブジェクトにシリアライズする際に使用する。- Specified by:
getStringSerializer
in interfaceJsonSerializationManager
- Returns:
- 文字列をシリアライズするためのシリアライザ
-
getSerializer
オブジェクトに対応したシリアライザを取得する。- Specified by:
getSerializer
in interfaceJsonSerializationManager
- Parameters:
value
- シリアライズする値- Returns:
- 引数に渡した値をシリアライズするためのシリアライザ
-