This is an automated email from the ASF dual-hosted git repository.
struberg pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/johnzon.git
The following commit(s) were added to refs/heads/master by this push:
new 8cd1f21 JOHNZON-218 get rid of JsonProviderDelegate
8cd1f21 is described below
commit 8cd1f21a12353758e5fc1efba6acfef3f8db80c7
Author: Mark Struberg <[email protected]>
AuthorDate: Thu Jul 25 15:08:37 2019 +0200
JOHNZON-218 get rid of JsonProviderDelegate
Not needed anymore as we expose the whole API now.
---
.../org/apache/johnzon/core/JsonProviderImpl.java | 304 +++++----------------
1 file changed, 70 insertions(+), 234 deletions(-)
diff --git
a/johnzon-core/src/main/java/org/apache/johnzon/core/JsonProviderImpl.java
b/johnzon-core/src/main/java/org/apache/johnzon/core/JsonProviderImpl.java
index aa1eb99..1a466ed 100644
--- a/johnzon-core/src/main/java/org/apache/johnzon/core/JsonProviderImpl.java
+++ b/johnzon-core/src/main/java/org/apache/johnzon/core/JsonProviderImpl.java
@@ -52,335 +52,171 @@ import javax.json.stream.JsonParser;
import javax.json.stream.JsonParserFactory;
public class JsonProviderImpl extends JsonProvider implements Serializable {
- private static final JsonProvider DELEGATE = new JsonProviderDelegate();
+ private final BufferStrategy.BufferProvider<char[]> bufferProvider =
+
BufferStrategyFactory.valueOf(System.getProperty(AbstractJsonFactory.BUFFER_STRATEGY,
"QUEUE"))
+
.newCharProvider(Integer.getInteger("org.apache.johnzon.default-char-provider.length",
1024));
+
+ private final JsonReaderFactory readerFactory = new
JsonReaderFactoryImpl(null);
+ private final JsonParserFactory parserFactory = new
JsonParserFactoryImpl(null);
+ private final JsonGeneratorFactory generatorFactory = new
JsonGeneratorFactoryImpl(null);
+ private final JsonWriterFactory writerFactory = new
JsonWriterFactoryImpl(null);
+ private final JsonBuilderFactoryImpl builderFactory = new
JsonBuilderFactoryImpl(null, bufferProvider);
@Override
- public JsonParser createParser(final Reader reader) {
- return DELEGATE.createParser(reader);
+ public JsonParser createParser(final InputStream in) {
+ return parserFactory.createParser(in);
}
@Override
- public JsonParser createParser(final InputStream inputStream) {
- return DELEGATE.createParser(inputStream);
+ public JsonParser createParser(final Reader reader) {
+ return parserFactory.createParser(reader);
}
@Override
- public JsonParserFactory createParserFactory(final Map<String, ?>
stringMap) {
- return DELEGATE.createParserFactory(stringMap);
+ public JsonReader createReader(final InputStream in) {
+ return readerFactory.createReader(in);
}
@Override
- public JsonGenerator createGenerator(final Writer writer) {
- return DELEGATE.createGenerator(writer);
+ public JsonReader createReader(final Reader reader) {
+ return readerFactory.createReader(reader);
}
@Override
- public JsonGenerator createGenerator(final OutputStream outputStream) {
- return DELEGATE.createGenerator(outputStream);
+ public JsonParserFactory createParserFactory(final Map<String, ?> config) {
+ return (config == null || config.isEmpty()) ? parserFactory : new
JsonParserFactoryImpl(config);
}
@Override
- public JsonGeneratorFactory createGeneratorFactory(final Map<String, ?>
stringMap) {
- return DELEGATE.createGeneratorFactory(stringMap);
+ public JsonReaderFactory createReaderFactory(final Map<String, ?> config) {
+ return (config == null || config.isEmpty()) ? readerFactory : new
JsonReaderFactoryImpl(config);
}
@Override
- public JsonReader createReader(final Reader reader) {
- return DELEGATE.createReader(reader);
+ public JsonGenerator createGenerator(final Writer writer) {
+ return generatorFactory.createGenerator(writer);
}
@Override
- public JsonReader createReader(final InputStream inputStream) {
- return DELEGATE.createReader(inputStream);
+ public JsonGenerator createGenerator(final OutputStream out) {
+ return generatorFactory.createGenerator(out);
}
@Override
- public JsonWriter createWriter(final Writer writer) {
- return DELEGATE.createWriter(writer);
+ public JsonGeneratorFactory createGeneratorFactory(final Map<String, ?>
config) {
+ return (config == null || config.isEmpty()) ? generatorFactory : new
JsonGeneratorFactoryImpl(config);
}
@Override
- public JsonWriter createWriter(final OutputStream outputStream) {
- return DELEGATE.createWriter(outputStream);
+ public JsonWriter createWriter(final Writer writer) {
+ return writerFactory.createWriter(writer);
}
@Override
- public JsonWriterFactory createWriterFactory(final Map<String, ?>
stringMap) {
- return DELEGATE.createWriterFactory(stringMap);
+ public JsonWriter createWriter(final OutputStream out) {
+ return writerFactory.createWriter(out);
}
@Override
- public JsonReaderFactory createReaderFactory(final Map<String, ?>
stringMap) {
- return DELEGATE.createReaderFactory(stringMap);
+ public JsonWriterFactory createWriterFactory(final Map<String, ?> config) {
+ return (config == null || config.isEmpty()) ? writerFactory : new
JsonWriterFactoryImpl(config);
}
@Override
public JsonObjectBuilder createObjectBuilder() {
- return DELEGATE.createObjectBuilder();
+ return builderFactory.createObjectBuilder();
}
@Override
- public JsonArrayBuilder createArrayBuilder() {
- return DELEGATE.createArrayBuilder();
+ public JsonObjectBuilder createObjectBuilder(JsonObject jsonObject) {
+ return builderFactory.createObjectBuilder(jsonObject);
}
@Override
- public JsonBuilderFactory createBuilderFactory(final Map<String, ?>
stringMap) {
- return DELEGATE.createBuilderFactory(stringMap);
+ public JsonObjectBuilder createObjectBuilder(Map<String, Object>
initialValues) {
+ return builderFactory.createObjectBuilder(initialValues);
}
-
+
@Override
- public JsonPatchBuilder createPatchBuilder() {
- return DELEGATE.createPatchBuilder();
+ public JsonArrayBuilder createArrayBuilder() {
+ return builderFactory.createArrayBuilder();
}
@Override
- public JsonPatchBuilder createPatchBuilder(JsonArray initialData) {
- return DELEGATE.createPatchBuilder(initialData);
+ public JsonArrayBuilder createArrayBuilder(JsonArray initialData) {
+ return builderFactory.createArrayBuilder(initialData);
}
- @Override
- public JsonObjectBuilder createObjectBuilder(JsonObject jsonObject) {
- return DELEGATE.createObjectBuilder(jsonObject);
+ public JsonArrayBuilder createArrayBuilder(Collection<?> initialData) {
+ return builderFactory.createArrayBuilder(initialData);
}
@Override
- public JsonObjectBuilder createObjectBuilder(Map<String, Object> map) {
- return DELEGATE.createObjectBuilder(map);
+ public JsonString createValue(String value) {
+ return new JsonStringImpl(value);
}
@Override
- public JsonArrayBuilder createArrayBuilder(JsonArray initialData) {
- return DELEGATE.createArrayBuilder(initialData);
+ public JsonNumber createValue(int value) {
+ return new JsonLongImpl(value);
}
@Override
- public JsonArrayBuilder createArrayBuilder(Collection<?> initialData) {
- return DELEGATE.createArrayBuilder(initialData);
+ public JsonNumber createValue(long value) {
+ return new JsonLongImpl(value);
}
@Override
- public JsonPointer createPointer(String path) {
- return DELEGATE.createPointer(path);
+ public JsonNumber createValue(double value) {
+ return new JsonDoubleImpl(value);
}
@Override
- public JsonString createValue(String value) {
- return DELEGATE.createValue(value);
+ public JsonNumber createValue(BigDecimal value) {
+ return new JsonNumberImpl(value);
}
@Override
- public JsonNumber createValue(int value) {
- return DELEGATE.createValue(value);
+ public JsonNumber createValue(BigInteger value) {
+ return new JsonLongImpl(value.longValue());
}
@Override
- public JsonNumber createValue(long value) {
- return DELEGATE.createValue(value);
+ public JsonBuilderFactory createBuilderFactory(final Map<String, ?>
config) {
+ return (config == null || config.isEmpty()) ?
+ builderFactory : new JsonBuilderFactoryImpl(config,
bufferProvider);
}
@Override
- public JsonNumber createValue(double value) {
- return DELEGATE.createValue(value);
+ public JsonPatchBuilder createPatchBuilder() {
+ return new JsonPatchBuilderImpl(this);
}
@Override
- public JsonNumber createValue(BigDecimal value) {
- return DELEGATE.createValue(value);
+ public JsonPatchBuilder createPatchBuilder(JsonArray initialData) {
+ return new JsonPatchBuilderImpl(this, initialData);
}
@Override
- public JsonNumber createValue(BigInteger value) {
- return DELEGATE.createValue(value);
+ public JsonPointer createPointer(String path) {
+ return new JsonPointerImpl(this, path);
}
- @Override
public JsonPatch createPatch(JsonArray array) {
- return DELEGATE.createPatch(array);
+ return createPatchBuilder(array).build();
}
@Override
public JsonPatch createDiff(JsonStructure source, JsonStructure target) {
- return DELEGATE.createDiff(source, target);
+ return new JsonPatchDiff(this, source, target).calculateDiff();
}
- @Override
public JsonMergePatch createMergePatch(JsonValue patch) {
- return DELEGATE.createMergePatch(patch);
+ return new JsonMergePatchImpl(patch, bufferProvider);
}
@Override
public JsonMergePatch createMergeDiff(JsonValue source, JsonValue target) {
- return DELEGATE.createMergeDiff(source, target);
- }
-
- static class JsonProviderDelegate extends JsonProvider {
- private final BufferStrategy.BufferProvider<char[]> bufferProvider =
-
BufferStrategyFactory.valueOf(System.getProperty(AbstractJsonFactory.BUFFER_STRATEGY,
"QUEUE"))
-
.newCharProvider(Integer.getInteger("org.apache.johnzon.default-char-provider.length",
1024));
-
- private final JsonReaderFactory readerFactory = new
JsonReaderFactoryImpl(null);
- private final JsonParserFactory parserFactory = new
JsonParserFactoryImpl(null);
- private final JsonGeneratorFactory generatorFactory = new
JsonGeneratorFactoryImpl(null);
- private final JsonWriterFactory writerFactory = new
JsonWriterFactoryImpl(null);
- private final JsonBuilderFactoryImpl builderFactory = new
JsonBuilderFactoryImpl(null, bufferProvider);
-
- @Override
- public JsonParser createParser(final InputStream in) {
- return parserFactory.createParser(in);
- }
-
- @Override
- public JsonParser createParser(final Reader reader) {
- return parserFactory.createParser(reader);
- }
-
- @Override
- public JsonReader createReader(final InputStream in) {
- return readerFactory.createReader(in);
- }
-
- @Override
- public JsonReader createReader(final Reader reader) {
- return readerFactory.createReader(reader);
- }
-
- @Override
- public JsonParserFactory createParserFactory(final Map<String, ?>
config) {
- return (config == null || config.isEmpty()) ? parserFactory : new
JsonParserFactoryImpl(config);
- }
-
- @Override
- public JsonReaderFactory createReaderFactory(final Map<String, ?>
config) {
- return (config == null || config.isEmpty()) ? readerFactory : new
JsonReaderFactoryImpl(config);
- }
-
- @Override
- public JsonGenerator createGenerator(final Writer writer) {
- return generatorFactory.createGenerator(writer);
- }
-
- @Override
- public JsonGenerator createGenerator(final OutputStream out) {
- return generatorFactory.createGenerator(out);
- }
-
- @Override
- public JsonGeneratorFactory createGeneratorFactory(final Map<String,
?> config) {
- return (config == null || config.isEmpty()) ? generatorFactory :
new JsonGeneratorFactoryImpl(config);
- }
-
- @Override
- public JsonWriter createWriter(final Writer writer) {
- return writerFactory.createWriter(writer);
- }
-
- @Override
- public JsonWriter createWriter(final OutputStream out) {
- return writerFactory.createWriter(out);
- }
-
- @Override
- public JsonWriterFactory createWriterFactory(final Map<String, ?>
config) {
- return (config == null || config.isEmpty()) ? writerFactory : new
JsonWriterFactoryImpl(config);
- }
-
- @Override
- public JsonObjectBuilder createObjectBuilder() {
- return builderFactory.createObjectBuilder();
- }
-
- @Override
- public JsonObjectBuilder createObjectBuilder(JsonObject jsonObject) {
- return builderFactory.createObjectBuilder(jsonObject);
- }
-
- @Override
- public JsonObjectBuilder createObjectBuilder(Map<String, Object>
initialValues) {
- return builderFactory.createObjectBuilder(initialValues);
- }
-
- @Override
- public JsonArrayBuilder createArrayBuilder() {
- return builderFactory.createArrayBuilder();
- }
-
- @Override
- public JsonArrayBuilder createArrayBuilder(JsonArray initialData) {
- return builderFactory.createArrayBuilder(initialData);
- }
-
- public JsonArrayBuilder createArrayBuilder(Collection<?> initialData) {
- return builderFactory.createArrayBuilder(initialData);
- }
-
- @Override
- public JsonString createValue(String value) {
- return new JsonStringImpl(value);
- }
-
- @Override
- public JsonNumber createValue(int value) {
- return new JsonLongImpl(value);
- }
-
- @Override
- public JsonNumber createValue(long value) {
- return new JsonLongImpl(value);
- }
-
- @Override
- public JsonNumber createValue(double value) {
- return new JsonDoubleImpl(value);
- }
-
- @Override
- public JsonNumber createValue(BigDecimal value) {
- return new JsonNumberImpl(value);
- }
-
- @Override
- public JsonNumber createValue(BigInteger value) {
- return new JsonLongImpl(value.longValue());
- }
-
- @Override
- public JsonBuilderFactory createBuilderFactory(final Map<String, ?>
config) {
- return (config == null || config.isEmpty()) ?
- builderFactory : new JsonBuilderFactoryImpl(config,
bufferProvider);
- }
-
- @Override
- public JsonPatchBuilder createPatchBuilder() {
- return new JsonPatchBuilderImpl(this);
- }
-
- @Override
- public JsonPatchBuilder createPatchBuilder(JsonArray initialData) {
- return new JsonPatchBuilderImpl(this, initialData);
- }
-
- @Override
- public JsonPointer createPointer(String path) {
- return new JsonPointerImpl(this, path);
- }
-
- public JsonPatch createPatch(JsonArray array) {
- return createPatchBuilder(array).build();
- }
-
- @Override
- public JsonPatch createDiff(JsonStructure source, JsonStructure
target) {
- return new JsonPatchDiff(this, source, target).calculateDiff();
- }
-
- public JsonMergePatch createMergePatch(JsonValue patch) {
- return new JsonMergePatchImpl(patch, bufferProvider);
- }
-
- @Override
- public JsonMergePatch createMergeDiff(JsonValue source, JsonValue
target) {
- return new JsonMergePatchDiff(source, target,
bufferProvider).calculateDiff();
- }
+ return new JsonMergePatchDiff(source, target,
bufferProvider).calculateDiff();
}
}