java.lang.Object
jakarta.json.spi.JsonProvider
Service provider for JSON processing objects.
 
All the methods in this class are safe for use by multiple concurrent threads.
- See Also:
- 
Field SummaryFieldsModifier and TypeFieldDescriptionstatic final StringThe name of the property that contains the name of the class capable of creating new JsonProvider objects.
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionabstract JsonArrayBuilderCreates a JSON array builder.createArrayBuilder(JsonArray array) Creates a JSON array builder, initialized with the specified array.createArrayBuilder(Collection<?> collection) Creates a JSON array builder, initialized with the content of specifiedcollection.abstract JsonBuilderFactorycreateBuilderFactory(Map<String, ?> config) Creates a builder factory for creatingJsonArrayBuilderandJsonObjectBuilderobjects.createDiff(JsonStructure source, JsonStructure target) Generates a JSON Patch (RFC 6902) from the source and targetJsonStructure.abstract JsonGeneratorCreates a JSON generator for writing JSON text to a byte stream.abstract JsonGeneratorcreateGenerator(Writer writer) Creates a JSON generator for writing JSON text to a character stream.abstract JsonGeneratorFactorycreateGeneratorFactory(Map<String, ?> config) Creates a generator factory for creatingJsonGeneratorinstances.createMergeDiff(JsonValue source, JsonValue target) Generates a JSON Merge Patch (RFC 7396) from the source and targetJsonValues which when applied to thesource, yields thetarget.createMergePatch(JsonValue patch) Creates JSON Merge Patch (RFC 7396) from specifiedJsonValue.abstract JsonObjectBuilderCreates a JSON object builder.createObjectBuilder(JsonObject object) Creates a JSON object builder, initialized with the specified object.createObjectBuilder(Map<String, ?> map) Creates a JSON object builder, initialized with the data from specifiedmap.abstract JsonParserCreates a JSON parser from the specified byte stream.abstract JsonParsercreateParser(Reader reader) Creates a JSON parser from a character stream.abstract JsonParserFactorycreateParserFactory(Map<String, ?> config) Creates a parser factory for creatingJsonParserinstances.createPatch(JsonArray array) Creates a JSON Patch (RFC 6902) from the specified operations.Creates a JSON Patch builder (RFC 6902).createPatchBuilder(JsonArray array) Creates a JSON Patch builder (RFC 6902), initialized with the specified operations.createPointer(String jsonPointer) Creates JSON Pointer (RFC 6901) from givenjsonPointerstring.abstract JsonReaderCreates a JSON reader from a byte stream.abstract JsonReadercreateReader(Reader reader) Creates a JSON reader from a character stream.abstract JsonReaderFactorycreateReaderFactory(Map<String, ?> config) Creates a reader factory for creatingJsonReaderobjects.createValue(double value) Creates a JsonNumber.createValue(int value) Creates a JsonNumber.createValue(long value) Creates a JsonNumber.createValue(Number number) Creates a JsonNumber.createValue(String value) Creates a JsonString.createValue(BigDecimal value) Creates a JsonNumber.createValue(BigInteger value) Creates a JsonNumber.abstract JsonWritercreateWriter(OutputStream out) abstract JsonWritercreateWriter(Writer writer) abstract JsonWriterFactorycreateWriterFactory(Map<String, ?> config) Creates a writer factory for creatingJsonWriterobjects.static JsonProviderprovider()Creates a JSON provider object.
- 
Field Details- 
JSONP_PROVIDER_FACTORYThe name of the property that contains the name of the class capable of creating new JsonProvider objects.- See Also:
 
 
- 
- 
Constructor Details- 
JsonProviderprotected JsonProvider()Default constructor.
 
- 
- 
Method Details- 
providerCreates a JSON provider object. Implementation discovery consists of following steps:- If the system property "jakarta.json.provider" exists, then its value is assumed to be the provider factory class. This phase of the look up enables per-JVM override of the JsonProvider implementation.
- The provider is loaded using the ServiceLoader.load(Class)method.
- If all the steps above fail, then the rest of the look up is unspecified. That said, the recommended behavior is to simply look for some hard-coded platform default Jakarta JSON Processing implementation. This phase of the look up is so that a platform can have its own Jakarta JSON Processing implementation as the last resort.
 - Returns:
- a JSON provider
- See Also:
 
- 
createParserCreates a JSON parser from a character stream.- Parameters:
- reader- i/o reader from which JSON is to be read
- Returns:
- a JSON parser
 
- 
createParserCreates a JSON parser from the specified byte stream. The character encoding of the stream is determined as defined in RFC 7159 .- Parameters:
- in- i/o stream from which JSON is to be read
- Returns:
- a JSON parser
- Throws:
- JsonException- if encoding cannot be determined or i/o error (IOException would be cause of JsonException)
 
- 
createParserFactoryCreates a parser factory for creatingJsonParserinstances. The factory is configured with the specified map of provider specific configuration properties. Provider implementations should ignore any unsupported configuration properties specified in the map.- Parameters:
- config- a map of provider specific properties to configure the JSON parsers. The map may be empty or null
- Returns:
- a JSON parser factory
 
- 
createGeneratorCreates a JSON generator for writing JSON text to a character stream.- Parameters:
- writer- a i/o writer to which JSON is written
- Returns:
- a JSON generator
 
- 
createGeneratorCreates a JSON generator for writing JSON text to a byte stream.- Parameters:
- out- i/o stream to which JSON is written
- Returns:
- a JSON generator
 
- 
createGeneratorFactoryCreates a generator factory for creatingJsonGeneratorinstances. The factory is configured with the specified map of provider specific configuration properties. Provider implementations should ignore any unsupported configuration properties specified in the map.- Parameters:
- config- a map of provider specific properties to configure the JSON generators. The map may be empty or null
- Returns:
- a JSON generator factory
 
- 
createReaderCreates a JSON reader from a character stream.- Parameters:
- reader- a reader from which JSON is to be read
- Returns:
- a JSON reader
 
- 
createReaderCreates a JSON reader from a byte stream. The character encoding of the stream is determined as described in RFC 7159.- Parameters:
- in- a byte stream from which JSON is to be read
- Returns:
- a JSON reader
 
- 
createWriter- Parameters:
- writer- to which JSON object or array is written
- Returns:
- a JSON writer
 
- 
createWriter
- 
createWriterFactoryCreates a writer factory for creatingJsonWriterobjects. The factory is configured with the specified map of provider specific configuration properties. Provider implementations should ignore any unsupported configuration properties specified in the map.- Parameters:
- config- a map of provider specific properties to configure the JSON writers. The map may be empty or null
- Returns:
- a JSON writer factory
 
- 
createReaderFactoryCreates a reader factory for creatingJsonReaderobjects. The factory is configured with the specified map of provider specific configuration properties. Provider implementations should ignore any unsupported configuration properties specified in the map.- Parameters:
- config- a map of provider specific properties to configure the JSON readers. The map may be empty or null
- Returns:
- a JSON reader factory
 
- 
createObjectBuilderCreates a JSON object builder.- Returns:
- a JSON object builder
 
- 
createObjectBuilderCreates a JSON object builder, initialized with the specified object.- Parameters:
- object- the initial JSON object in the builder
- Returns:
- a JSON object builder
- Since:
- 1.1
 
- 
createObjectBuilderCreates a JSON object builder, initialized with the data from specifiedmap. If the @{code map} containsOptionals then resulting JSON object builder contains the key from themaponly if theOptionalis not empty.- Parameters:
- map- the initial object in the builder
- Returns:
- a JSON object builder
- Throws:
- IllegalArgumentException- if the value from the- mapcannot be converted to the corresponding- JsonValue
- Since:
- 1.1
 
- 
createArrayBuilderCreates a JSON array builder.- Returns:
- a JSON array builder
 
- 
createArrayBuilderCreates a JSON array builder, initialized with the specified array.- Parameters:
- array- the initial JSON array in the builder
- Returns:
- a JSON array builder
- Since:
- 1.1
 
- 
createPointerCreates JSON Pointer (RFC 6901) from givenjsonPointerstring.- An empty jsonPointerstring defines a reference to the target itself.
- If the jsonPointerstring is non-empty, it must be a sequence of '/' prefixed tokens.
 - Parameters:
- jsonPointer- the JSON Pointer string
- Returns:
- a JSON Pointer
- Throws:
- NullPointerException- if- jsonPointeris- null
- JsonException- if- jsonPointeris not a valid JSON Pointer
- Since:
- 1.1
 
- An empty 
- 
createPatchBuilderCreates a JSON Patch builder (RFC 6902).- Returns:
- a JSON Patch builder
- Since:
- 1.1
 
- 
createPatchBuilderCreates a JSON Patch builder (RFC 6902), initialized with the specified operations.- Parameters:
- array- the initial patch operations
- Returns:
- a JSON Patch builder
- Since:
- 1.1
 
- 
createPatch
- 
createDiffGenerates a JSON Patch (RFC 6902) from the source and targetJsonStructure. The generated JSON Patch need not be unique.- Parameters:
- source- the source
- target- the target, must be the same type as the source
- Returns:
- a JSON Patch which when applied to the source, yields the target
- Since:
- 1.1
 
- 
createMergePatchCreates JSON Merge Patch (RFC 7396) from specifiedJsonValue.- Parameters:
- patch- the patch
- Returns:
- a JSON Merge Patch
- Since:
- 1.1
 
- 
createMergeDiffGenerates a JSON Merge Patch (RFC 7396) from the source and targetJsonValues which when applied to thesource, yields thetarget.- Parameters:
- source- the source
- target- the target
- Returns:
- a JSON Merge Patch
- Since:
- 1.1
 
- 
createArrayBuilderCreates a JSON array builder, initialized with the content of specifiedcollection. If the @{code collection} containsOptionals then resulting JSON array builder contains the value from thecollectiononly if theOptionalis not empty.- Parameters:
- collection- the initial data for the builder
- Returns:
- a JSON array builder
- Throws:
- IllegalArgumentException- if the value from the- collectioncannot be converted to the corresponding- JsonValue
- Since:
- 1.1
 
- 
createBuilderFactoryCreates a builder factory for creatingJsonArrayBuilderandJsonObjectBuilderobjects. The factory is configured with the specified map of provider specific configuration properties. Provider implementations should ignore any unsupported configuration properties specified in the map.- Parameters:
- config- a map of provider specific properties to configure the JSON builders. The map may be empty or null
- Returns:
- a JSON builder factory
 
- 
createValueCreates a JsonString.- Parameters:
- value- a JSON string
- Returns:
- the JsonString for the string
- Since:
- 1.1
 
- 
createValueCreates a JsonNumber.- Parameters:
- value- a JSON number
- Returns:
- the JsonNumber for the number
- Since:
- 1.1
 
- 
createValueCreates a JsonNumber.- Parameters:
- value- a JSON number
- Returns:
- the JsonNumber for the number
- Since:
- 1.1
 
- 
createValueCreates a JsonNumber.- Parameters:
- value- a JSON number
- Returns:
- the JsonNumber for the number
- Since:
- 1.1
 
- 
createValueCreates a JsonNumber.- Parameters:
- value- a JSON number
- Returns:
- the JsonNumber for the number
- Since:
- 1.1
 
- 
createValueCreates a JsonNumber.- Parameters:
- value- a JSON number
- Returns:
- the JsonNumber for the number
- Since:
- 1.1
 
- 
createValueCreates a JsonNumber. When it is not implemented it checks the type and delegates to an existing method that already handles that type. It throws UnsupportedOperationException in case the type is not known.- Parameters:
- number- a JSON number
- Returns:
- the JsonNumber for the number
- Since:
- 2.1
 
 
-