パッケージ jakarta.json.spi

クラス JsonProvider

java.lang.ObjectSE
jakarta.json.spi.JsonProvider

public abstract class JsonProvider extends ObjectSE
JSON 処理オブジェクトのサービスプロバイダー。

このクラスのすべてのメソッドは、複数の並行スレッドで安全に使用できます。

関連事項:
  • フィールドの詳細

    • JSONP_PROVIDER_FACTORY

      public static final StringSE JSONP_PROVIDER_FACTORY
      新しい JsonProvider オブジェクトを作成できるクラスの名前を含むプロパティの名前。
      関連事項:
  • コンストラクターの詳細

    • JsonProvider

      protected JsonProvider()
      デフォルトコンストラクター。
  • メソッドの詳細

    • provider

      public static JsonProvider provider()
      JSON プロバイダーオブジェクトを作成します。実装の検出は次の手順で構成されます。
      1. システムプロパティ "jakarta.json.provider" が存在する場合、その値はプロバイダーファクトリクラスであると見なされます。ルックアップのこのフェーズでは、JsonProvider 実装の JVM ごとのオーバーライドを有効にします。
      2. プロバイダーは ServiceLoader.load(Class)SE メソッドを使用してロードされます。
      3. 上記のすべての手順が失敗した場合、残りの検索は指定されません。そうは言っても、推奨される動作は、ハードコードされたプラットフォームのデフォルトの Jakarta JSON Processing 実装を単純に探すことです。ルックアップのこのフェーズは、プラットフォームが最後の手段として独自の Jakarta JSON Processing 実装を行えるようにするためのものです。
      このメソッドの結果をキャッシュすることをお勧めします。
      戻り値:
      JSON プロバイダー
      関連事項:
    • createParser

      public abstract JsonParser createParser(ReaderSE reader)
      文字ストリームから JSON パーサーを作成します。
      パラメーター:
      reader - JSON を読み取る i/o リーダー
      戻り値:
      JSON パーサー
    • createParser

      public abstract JsonParser createParser(InputStreamSE in)
      指定されたバイトストリームから JSON パーサーを作成します。ストリームの文字エンコードは、RFC 7159 で定義されているように決定されます。
      パラメーター:
      in - JSON が読み取られる I/O ストリーム
      戻り値:
      JSON パーサー
      例外:
      JsonException - エンコードを判別できない場合、または入出力エラーの場合 (IOException は JsonException の原因となる)
    • createParserFactory

      public abstract JsonParserFactory createParserFactory(MapSE<StringSE,?> config)
      JsonParser インスタンスを作成するためのパーサーファクトリを作成します。ファクトリは、プロバイダー固有の構成プロパティの指定されたマップで構成されます。プロバイダーの実装では、マップで指定されているサポートされていない構成プロパティを無視する必要があります。
      パラメーター:
      config - JSON パーサーを構成するためのプロバイダー固有のプロパティのマップ。マップは空または null の可能性があります
      戻り値:
      JSON パーサーファクトリ
    • createGenerator

      public abstract JsonGenerator createGenerator(WriterSE writer)
      JSON テキストを文字ストリームに書き込むための JSON ジェネレーターを作成します。
      パラメーター:
      writer - JSON が書き込まれる I/O ライター
      戻り値:
      JSON ジェネレーター
    • createGenerator

      public abstract JsonGenerator createGenerator(OutputStreamSE out)
      JSON テキストをバイトストリームに書き込むための JSON ジェネレーターを作成します。
      パラメーター:
      out - JSON が書き込まれる I/O ストリーム
      戻り値:
      JSON ジェネレーター
    • createGeneratorFactory

      public abstract JsonGeneratorFactory createGeneratorFactory(MapSE<StringSE,?> config)
      JsonGenerator インスタンスを作成するためのジェネレーターファクトリを作成します。ファクトリは、プロバイダー固有の構成プロパティの指定されたマップで構成されます。プロバイダーの実装では、マップで指定されているサポートされていない構成プロパティを無視する必要があります。
      パラメーター:
      config - JSON ジェネレーターを構成するためのプロバイダー固有のプロパティのマップ。マップは空または null の可能性があります
      戻り値:
      JSON ジェネレーターファクトリ
    • createReader

      public abstract JsonReader createReader(ReaderSE reader)
      文字ストリームから JSON リーダーを作成します。
      パラメーター:
      reader - JSON を読み取るリーダー
      戻り値:
      JSON リーダー
    • createReader

      public abstract JsonReader createReader(InputStreamSE in)
      バイトストリームから JSON リーダーを作成します。ストリームの文字エンコーディングは、RFC 7159 に従って決定されます。
      パラメーター:
      in - JSON を読み取るバイトストリーム
      戻り値:
      JSON リーダー
    • createWriter

      public abstract JsonWriter createWriter(WriterSE writer)
      指定された文字ストリームに JSON object または array 構造を書き込む JSON ライターを作成します。
      パラメーター:
      writer - JSON オブジェクトまたは配列が書き込まれる
      戻り値:
      JSON ライター
    • createWriter

      public abstract JsonWriter createWriter(OutputStreamSE out)
      JSON ライターを作成して、JSON object または array 構造を指定されたバイトストリームに書き込みます。ストリームに書き込まれた文字は、UTF-8 エンコーディングを使用してバイトにエンコードされます。
      パラメーター:
      out - JSON オブジェクトまたは配列が書き込まれる
      戻り値:
      JSON ライター
    • createWriterFactory

      public abstract JsonWriterFactory createWriterFactory(MapSE<StringSE,?> config)
      JsonWriter オブジェクトを作成するためのライターファクトリを作成します。ファクトリは、プロバイダー固有の構成プロパティの指定されたマップで構成されます。プロバイダーの実装では、マップで指定されているサポートされていない構成プロパティを無視する必要があります。
      パラメーター:
      config - JSON ライターを構成するためのプロバイダー固有のプロパティのマップ。マップは空または null の可能性があります
      戻り値:
      JSON ライターファクトリ
    • createReaderFactory

      public abstract JsonReaderFactory createReaderFactory(MapSE<StringSE,?> config)
      JsonReader オブジェクトを作成するためのリーダーファクトリを作成します。ファクトリは、プロバイダー固有の構成プロパティの指定されたマップで構成されます。プロバイダーの実装では、マップで指定されているサポートされていない構成プロパティを無視する必要があります。
      パラメーター:
      config - JSON リーダーを構成するためのプロバイダー固有のプロパティのマップ。マップは空または null の可能性があります
      戻り値:
      JSON リーダーファクトリ
    • createObjectBuilder

      public abstract JsonObjectBuilder createObjectBuilder()
      JSON オブジェクトビルダーを作成します。
      戻り値:
      JSON オブジェクトビルダー
    • createObjectBuilder

      public JsonObjectBuilder createObjectBuilder(JsonObject object)
      指定されたオブジェクトで初期化された JSON オブジェクトビルダーを作成します。
      パラメーター:
      object - ビルダーの最初の JSON オブジェクト
      戻り値:
      JSON オブジェクトビルダー
      導入:
      1.1
    • createObjectBuilder

      public JsonObjectBuilder createObjectBuilder(MapSE<StringSE,?> map)
      指定された map からのデータで初期化された JSON オブジェクトビルダーを作成します。@{code map} に OptionalSE が含まれている場合、結果の JSON オブジェクトビルダーには、OptionalSE が空でない場合にのみ、map からのキーが含まれます。
      パラメーター:
      map - ビルダーの初期オブジェクト
      戻り値:
      JSON オブジェクトビルダー
      例外:
      IllegalArgumentExceptionSE - map からの値を対応する JsonValue に変換できない場合
      導入:
      1.1
    • createArrayBuilder

      public abstract JsonArrayBuilder createArrayBuilder()
      JSON 配列ビルダーを作成します。
      戻り値:
      JSON 配列ビルダー
    • createArrayBuilder

      public JsonArrayBuilder createArrayBuilder(JsonArray array)
      指定された配列で初期化された JSON 配列ビルダーを作成します。
      パラメーター:
      array - ビルダーの最初の JSON 配列
      戻り値:
      JSON 配列ビルダー
      導入:
      1.1
    • createPointer

      public JsonPointer createPointer(StringSE jsonPointer)
      指定された jsonPointer 文字列から JSON ポインター(RFC 6901)を作成します。
      • 空の jsonPointer 文字列は、ターゲット自体への参照を定義します。
      • jsonPointer 文字列が空でない場合、'/' 接頭辞付きトークンのシーケンスでなければなりません。
      パラメーター:
      jsonPointer - JSON ポインタ文字列
      戻り値:
      JSON ポインター
      例外:
      NullPointerExceptionSE - jsonPointer が null の場合
      JsonException - jsonPointer が有効な JSON ポインターでない場合
      導入:
      1.1
    • createPatchBuilder

      public JsonPatchBuilder createPatchBuilder()
      JSON Patch Builder(RFC 6902)を作成します。
      戻り値:
      JSON Patch Builder
      導入:
      1.1
    • createPatchBuilder

      public JsonPatchBuilder createPatchBuilder(JsonArray array)
      指定された操作で初期化された JSON パッチビルダー(RFC 6902)を作成します。
      パラメーター:
      array - 初期パッチ操作
      戻り値:
      JSON Patch Builder
      導入:
      1.1
    • createPatch

      public JsonPatch createPatch(JsonArray array)
      指定された操作から JSON パッチ(RFC 6902)を作成します。
      パラメーター:
      array - パッチ操作
      戻り値:
      JSON パッチ
      導入:
      1.1
    • createDiff

      public JsonPatch createDiff(JsonStructure source, JsonStructure target)
      ソースおよびターゲット JsonStructure から JSON パッチ(RFC 6902)を生成します。生成された JSON パッチは一意である必要はありません。
      パラメーター:
      source - ソース
      target - ターゲット、ソースと同じ型である必要があります
      戻り値:
      ソースに適用するとターゲットを生成する JSON パッチ
      導入:
      1.1
    • createMergePatch

      public JsonMergePatch createMergePatch(JsonValue patch)
      指定された JsonValue から JSON マージパッチ(RFC 7396)を作成します。
      パラメーター:
      patch - パッチ
      戻り値:
      JSON マージパッチ
      導入:
      1.1
    • createMergeDiff

      public JsonMergePatch createMergeDiff(JsonValue source, JsonValue target)
      ソースとターゲットの JsonValue から JSON マージパッチ(RFC 7396)を生成します。source に適用すると、target が生成されます。
      パラメーター:
      source - ソース
      target - ターゲット
      戻り値:
      JSON マージパッチ
      導入:
      1.1
    • createArrayBuilder

      public JsonArrayBuilder createArrayBuilder(CollectionSE<?> collection)
      指定された collection のコンテンツで初期化された JSON 配列ビルダーを作成します。@{code collection} に OptionalSE が含まれている場合、OptionalSE が空でない場合にのみ、結果の JSON 配列ビルダーに collection からの値が含まれます。
      パラメーター:
      collection - ビルダーの初期データ
      戻り値:
      JSON 配列ビルダー
      例外:
      IllegalArgumentExceptionSE - collection からの値を対応する JsonValue に変換できない場合
      導入:
      1.1
    • createBuilderFactory

      public abstract JsonBuilderFactory createBuilderFactory(MapSE<StringSE,?> config)
      JsonArrayBuilder および JsonObjectBuilder オブジェクトを作成するためのビルダーファクトリを作成します。ファクトリは、プロバイダー固有の構成プロパティの指定されたマップで構成されます。プロバイダーの実装では、マップで指定されているサポートされていない構成プロパティを無視する必要があります。
      パラメーター:
      config - JSON ビルダーを構成するためのプロバイダー固有のプロパティのマップ。地図は空または null
      戻り値:
      JSON ビルダーファクトリ
    • createValue

      public JsonString createValue(StringSE value)
      JsonString を作成します。
      パラメーター:
      value - JSON 文字列
      戻り値:
      文字列の JsonString
      導入:
      1.1
    • createValue

      public JsonNumber createValue(int value)
      JsonNumber を作成します。
      パラメーター:
      value - JSON 番号
      戻り値:
      番号の JsonNumber
      導入:
      1.1
    • createValue

      public JsonNumber createValue(long value)
      JsonNumber を作成します。
      パラメーター:
      value - JSON 番号
      戻り値:
      番号の JsonNumber
      導入:
      1.1
    • createValue

      public JsonNumber createValue(double value)
      JsonNumber を作成します。
      パラメーター:
      value - JSON 番号
      戻り値:
      番号の JsonNumber
      導入:
      1.1
    • createValue

      public JsonNumber createValue(BigDecimalSE value)
      JsonNumber を作成します。
      パラメーター:
      value - JSON 番号
      戻り値:
      番号の JsonNumber
      導入:
      1.1
    • createValue

      public JsonNumber createValue(BigIntegerSE value)
      JsonNumber を作成します。
      パラメーター:
      value - JSON 番号
      戻り値:
      番号の JsonNumber
      導入:
      1.1
    • createValue

      public JsonNumber createValue(NumberSE number)
      JsonNumber を作成します。実装されていない場合は、型をチェックし、その型をすでに処理している既存のメソッドに委譲します。型が不明な場合は、UnsupportedOperationException をスローします。
      パラメーター:
      number - JSON 番号
      戻り値:
      番号の JsonNumber
      導入:
      2.1