johnzon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Hendrik Dev <hendrikde...@gmail.com>
Subject Johnzon Feature List
Date Thu, 15 Jan 2015 16:57:24 GMT
I think we need a list of features and configuration options to
include this in our documentation.

I started with that with the following outcome:

Core:
- Full JSR 353 compatible, but not yet certified
- Speed is comparable to Jackson and the reference implementation. In
general we are a little bit faster.
- Testcoverage 75%
- Supported config options:
-- JsonGeneratorFactoryImpl
--- org.apache.johnzon.default-char-buffer-generator (default 64k)
--- javax.json.stream.JsonGenerator.prettyPrinting (default false)
--- org.apache.johnzon.buffer-strategy (default QUEUE)

-- JsonParserFactoryImpl
--- org.apache.johnzon.max-string-length (default 10MB)
--- org.apache.johnzon.default-char-buffer (default 64k)
--- org.apache.johnzon.supports-comments (default false)
--- org.apache.johnzon.buffer-strategy (default QUEUE)

-- JsonReaderFactoryImpl
--- org.apache.johnzon.max-string-length (default 10MB)
--- org.apache.johnzon.default-char-buffer (default 64k)
--- org.apache.johnzon.supports-comments (default false)
--- org.apache.johnzon.buffer-strategy (default QUEUE)

-- JsonWriterFactoryImpl
--- org.apache.johnzon.default-char-buffer-generator (default 64k)
--- javax.json.stream.JsonGenerator.prettyPrinting (default false)
--- org.apache.johnzon.buffer-strategy (default QUEUE)

org.apache.johnzon.buffer-strategy controls the reusing strategy of
char[] buffers.
QUEUE - char[] are reused by ConcurrentLinkedQueue
BY_INSTANCE - char[] are not reused
SINGLETON - char[] are reused by only one global char[]
THREAD_LOCAL - char[] are reused by thread (every thread does have its
char[] buffer bound to a thread local)

Mapper:
- Default de/serializers for BigDecimal, BigInteger, Class, Date, Enum
+ all primitves/wrappers and String
- custom de/serializers are possible
- proper handling of collections and generics
- works with fields, getter/setter or both
- subclass handling??? i guess we support inheritance, do we?
- @JohnzonConverter and @JohnzonIgnore annotations
- version handling
- attribute ordering
- configurable null/empty handling
- configurable byte[] handling
- all features or the Core

Jax-RS
- WADL support ???
- all features of the Mapper and Core

I want to ask for additions and feedback (and also for new features we
may want to introduce).

My features wishes:

Mapper:
- additional de/serializers for Joda Time, URL, URI, XML DOM/Node, ...
- handle classes without default constructor
- speed improvements especially for deserialization

Johnzon in general:
- improve overall testcoverage from 72% to 90%+
- implement jsr 367 and 374 when they are finished

KR
Hendrik

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

Mime
View raw message