benchmark was more or less the same. but i improved generator perf (a
bit) with this commit
https://github.com/apache/incubator-johnzon/commit/5724036ca648cf1d57626f8c7f054f18a62d86b1

maybe you can have a look (sorry, contains also formatting changes)

On Wed, Oct 14, 2015 at 3:00 PM, Romain Manni-Bucau
<[email protected]> wrote:
> merged and pushed, thanks!
>
>
> Romain Manni-Bucau
> @rmannibucau <https://twitter.com/rmannibucau> |  Blog
> <http://rmannibucau.wordpress.com> | Github <https://github.com/rmannibucau> |
> LinkedIn <https://www.linkedin.com/in/rmannibucau> | Tomitriber
> <http://www.tomitribe.com>
>
> 2015-10-13 8:34 GMT+02:00 Romain Manni-Bucau <[email protected]>:
>
>> Hi Hendrik,
>>
>> Did you bench it? If faster or equal as before you can merge it. My worry
>> was about the stack which was slowing down the processing in the 1st impl I
>> did. If not an issue in your impl - or if the jvm fixed this drawback - I
>> see no reason to not merge it :).
>>
>> Thks a lot to have taken this issue!
>> Le 13 oct. 2015 07:47, "Hendrik Dev" <[email protected]> a écrit :
>>
>>> fixed on separate branch
>>>
>>> https://github.com/apache/incubator-johnzon/commit/f1392c2f02b0aeba2b41aed19e3b8625005ea9a1
>>> i took the chance and rewrote the generator, it was too complex imho
>>> can someone review and merge this into master if ok?
>>>
>>> On Mon, Oct 12, 2015 at 10:49 AM, Hendrik Dev <[email protected]>
>>> wrote:
>>> > ok, with that i can reproduce, will have a look today ....
>>> >
>>> > @Test
>>> >     public void prettySimpleStructure() {
>>> >
>>> >         final JsonWriterFactory writerFactory =
>>> > Json.createWriterFactory(new HashMap<String, Object>() {
>>> >             {
>>> >                 put(JsonGenerator.PRETTY_PRINTING, true);
>>> >             }
>>> >         });
>>> >
>>> >         StringWriter buffer = new StringWriter();
>>> >
>>> >             try (final JsonWriter writer =
>>> writerFactory.createWriter(buffer)) {
>>> >
>>> >
>>> > writer.write(Json.createObjectBuilder().add("firstName",
>>> > "John").build());
>>> >
>>> >             }
>>> >         assertEquals("{\n" + "  \"firstName\":\"John\"\n" + "}",
>>> > buffer.toString());
>>> >     }
>>> >
>>> > On Mon, Oct 12, 2015 at 10:20 AM, Romain Manni-Bucau
>>> > <[email protected]> wrote:
>>> >> I used:
>>> >>
>>> >> try (final JsonReader reader = readerFactory.createReader(new
>>> >> ByteArrayInputStream(someString.getBytes()))) {
>>> >>     try (final JsonWriter writer = writerFactory.createWriter(buffer))
>>> >> { // buffer is a StringWriter
>>> >>         writer.write(reader.read());
>>> >>     }
>>> >> }
>>> >>
>>> >>
>>> >>
>>> >> Romain Manni-Bucau
>>> >> @rmannibucau <https://twitter.com/rmannibucau> |  Blog
>>> >> <http://rmannibucau.wordpress.com> | Github <
>>> https://github.com/rmannibucau> |
>>> >> LinkedIn <https://www.linkedin.com/in/rmannibucau> | Tomitriber
>>> >> <http://www.tomitribe.com>
>>> >>
>>> >> 2015-10-12 10:18 GMT+02:00 Hendrik Dev <[email protected]>:
>>> >>
>>> >>> i can look into this but cannot reproduce
>>> >>>
>>> >>> @Test
>>> >>>     public void prettySimple() {
>>> >>>         final ByteArrayOutputStream baos = new
>>> ByteArrayOutputStream();
>>> >>>         final JsonGenerator generator =
>>> >>> Json.createGeneratorFactory(new HashMap<String, Object>() {{
>>> >>>             put(JsonGenerator.PRETTY_PRINTING, true);
>>> >>>         }}).createGenerator(baos);
>>> >>>
>>> >>>         generator.writeStartObject().write("firstName",
>>> >>> "John").writeEnd().close();
>>> >>>         assertEquals("{\n" +
>>> >>>
>>> >>>                         "  \"firstName\":\"John\"\n" +
>>> >>>
>>> >>>                         "}", new String(baos.toByteArray()));
>>> >>>
>>> >>>     }
>>> >>>
>>> >>> Can you provide a failing test?
>>> >>>
>>> >>> On Sun, Oct 11, 2015 at 9:33 PM, Romain Manni-Bucau
>>> >>> <[email protected]> wrote:
>>> >>> > Hi guys,
>>> >>> >
>>> >>> > prettifying a json with johnzon leads to empty lines, what do you
>>> think
>>> >>> > about it? I'm tempted t get rid of them.
>>> >>> >
>>> >>> > Here is a sample:
>>> >>> >
>>> >>> > ----
>>> >>> > {"foo":"bar"}
>>> >>> > ----
>>> >>> >
>>> >>> > -> with johnzon
>>> >>> >
>>> >>> > -----
>>> >>> >
>>> >>> > {
>>> >>> >
>>> >>> >   "foo":"bar"
>>> >>> > }
>>> >>> > ----
>>> >>> >
>>> >>> >
>>> >>> > -> expected
>>> >>> >
>>> >>> > -----
>>> >>> > {
>>> >>> >   "foo":"bar"
>>> >>> > }
>>> >>> > ----
>>> >>> >
>>> >>> > If anyone wants to work on it happy to let you hack or I will
>>> tackle it
>>> >>> > next week probably.
>>> >>> >
>>> >>> > Romain Manni-Bucau
>>> >>> > @rmannibucau <https://twitter.com/rmannibucau> |  Blog
>>> >>> > <http://rmannibucau.wordpress.com> | Github <
>>> >>> https://github.com/rmannibucau> |
>>> >>> > LinkedIn <https://www.linkedin.com/in/rmannibucau> | Tomitriber
>>> >>> > <http://www.tomitribe.com>
>>> >>>
>>> >>>
>>> >>>
>>> >>> --
>>> >>> Hendrik Saly (salyh, hendrikdev22)
>>> >>> @hendrikdev22
>>> >>> PGP: 0x22D7F6EC
>>> >>>
>>> >
>>> >
>>> >
>>> > --
>>> > Hendrik Saly (salyh, hendrikdev22)
>>> > @hendrikdev22
>>> > PGP: 0x22D7F6EC
>>>
>>>
>>>
>>> --
>>> Hendrik Saly (salyh, hendrikdev22)
>>> @hendrikdev22
>>> PGP: 0x22D7F6EC
>>>
>>



-- 
Hendrik Saly (salyh, hendrikdev22)
@hendrikdev22
PGP: 0x22D7F6EC

Reply via email to