パッケージ jakarta.json
インターフェース JsonPointer
public interface JsonPointer
このインターフェースは、RFC 6901 で定義されている JSON ポインターの不変の実装を表します。
JSON ポインターは、ターゲット
JsonValue
に適用されると、ターゲット内の参照場所を定義します。空の JSON ポインター文字列は、ターゲット自体への参照を定義します。
JSON ポインター文字列が空でない場合、'/' プレフィックストークンのシーケンスである必要があり、ターゲットは
JsonArray
またはJsonObject
のいずれかである必要があります。ターゲットがJsonArray
の場合、ポインターは配列要素への参照を定義し、最後のトークンはインデックスを指定します。ターゲットがJsonObject
の場合、ポインターは名前と値のペアへの参照を定義し、最後のトークンは名前を指定します。メソッド
getValue()
は、参照された値を返します。メソッドadd()
、replace()
、remove()
は、RFC 6902 で指定された操作を実行します。
メソッドのサマリー
すべてのメソッド インスタンスメソッド 抽象メソッド 修飾子と型 メソッド 説明 <T extends JsonStructure>
Tadd(T target, JsonValue value)
指定されたtarget
の参照された場所の値を指定されたvalue
で追加または置換します。boolean
containsValue(JsonStructure target)
指定されたtarget
の参照された場所に値がある場合、true
を返します。JsonValue
getValue(JsonStructure target)
指定されたtarget
の参照された場所の値を返します。<T extends JsonStructure>
Tremove(T target)
指定されたtarget
の参照位置の値を削除します。<T extends JsonStructure>
Treplace(T target, JsonValue value)
指定されたtarget
内の参照された場所の値を、指定されたvalue
で置き換えます。StringSE
toString()
この JSON ポインターの文字列表現を返します。
メソッドの詳細
add
<T extends JsonStructure> T add(T target, JsonValue value)
指定されたtarget
の参照された場所の値を指定されたvalue
で追加または置換します。- 参照がターゲット(空の JSON ポインター文字列)の場合、指定された
target
と同じ型である必要がある、指定されたvalue
が返されます。 - 参照が配列要素の場合、指定された
value
が参照されたインデックスで配列に挿入されます。現在その位置にある値と後続の値は、右にシフトされます(インデックスに 1 を加えます)。インデックスは 0 から始まります。参照が "-" で指定されている場合、またはインデックスが配列のサイズと等しい場合、値は配列に追加されます。 - 参照が
JsonObject
の名前と値のペアであり、参照される値が存在する場合、値は指定されたvalue
で置き換えられます。値が存在しない場合、新しい名前と値のペアがオブジェクトに追加されます。
- 型パラメーター:
T
- ターゲット型。JsonValue
のサブ型である必要があります- パラメーター:
target
- このJsonPointer
によって参照されるターゲットvalue
- 追加する値- 戻り値:
- 値が追加された後の変換された
target
- 例外:
NullPointerExceptionSE
-target
がnull
の場合JsonException
- 参照が配列要素であり、インデックスが範囲外(index < 0 || index > array size
)である場合、またはポインターが存在しないオブジェクトまたは配列への参照を含む場合
- 参照がターゲット(空の JSON ポインター文字列)の場合、指定された
remove
<T extends JsonStructure> T remove(T target)
指定されたtarget
の参照位置の値を削除します。- 型パラメーター:
T
- ターゲット型。JsonValue
のサブ型である必要があります- パラメーター:
target
- このJsonPointer
によって参照されるターゲット- 戻り値:
- 値が削除された後の変換された
target
- 例外:
NullPointerExceptionSE
-target
がnull
の場合JsonException
- 参照される値が存在しない場合、または参照がターゲットである場合。
replace
<T extends JsonStructure> T replace(T target, JsonValue value)
指定されたtarget
内の参照された場所の値を、指定されたvalue
で置き換えます。- 型パラメーター:
T
- ターゲット型。JsonValue
のサブ型である必要があります- パラメーター:
target
- このJsonPointer
によって参照されるターゲットvalue
- 参照された場所に格納される値- 戻り値:
- 値が置き換えられた後の変換された
target
- 例外:
NullPointerExceptionSE
-target
がnull
の場合JsonException
- 参照される値が存在しない場合、または参照がターゲットである場合。
containsValue
boolean containsValue(JsonStructure target)
指定されたtarget
の参照された場所に値がある場合、true
を返します。- パラメーター:
target
- このJsonPointer
によって参照されるターゲット- 戻り値:
true
(このポインターが指定されたtarget
の値を指す場合)。
getValue
JsonValue getValue(JsonStructure target)
指定されたtarget
の参照された場所の値を返します。- パラメーター:
target
- このJsonPointer
によって参照されるターゲット- 戻り値:
- ターゲットの参照値。
- 例外:
NullPointerExceptionSE
-target
が null の場合JsonException
- 参照された値が存在しない場合