You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@johnzon.apache.org by Romain Manni-Bucau <rm...@gmail.com> on 2020/07/10 07:42:29 UTC

[DISCUSS] default adapters rework?

Hi everyone,

Wonder if we should change a bit our converter (in our mapper)/adapter
(jsonb) handling.

Currently we have a static map of converters and in jsonb layer we create a
map we then merge with mapper converter map.
The part I care particularly right now is the java8 default converters.
They can belong to mapper now we are java 8 based so we should probably
move the ones we can (think maybe Date one can't for backward compatibility
reasons).
However I'd also like to avoid to instantiate them all OOTB, to be concrete
maybe 1 or 2 are useful in apps compared to all the ones we create to be
spec compliant.
My first thought is about creating a lazy map (we only use get or entrySet
I think - to refine but idea is to only override the API we use) behaving
as a standard map but on miss we can lookup the fallback (a but like a
linked list of map in terms of design).
Challenge can be to also lazy load part of the constants - but a "LazyInit"
class with static constant should do the trick there (constant are the
ZoneId for ex).

Wdyt? Do you see alternatives?

Idea is really to boot very fast if you don't use anything from that part.

Romain Manni-Bucau
@rmannibucau <https://twitter.com/rmannibucau> |  Blog
<https://rmannibucau.metawerx.net/> | Old Blog
<http://rmannibucau.wordpress.com> | Github <https://github.com/rmannibucau> |
LinkedIn <https://www.linkedin.com/in/rmannibucau> | Book
<https://www.packtpub.com/application-development/java-ee-8-high-performance>

Re: [DISCUSS] default adapters rework?

Posted by Romain Manni-Bucau <rm...@gmail.com>.
Done with https://issues.apache.org/jira/browse/JOHNZON-317

Would be great if you can test your apps too since it changes a bit the way
converters are typed and therefore wired in (de)serialization process.

Romain Manni-Bucau
@rmannibucau <https://twitter.com/rmannibucau> |  Blog
<https://rmannibucau.metawerx.net/> | Old Blog
<http://rmannibucau.wordpress.com> | Github <https://github.com/rmannibucau> |
LinkedIn <https://www.linkedin.com/in/rmannibucau> | Book
<https://www.packtpub.com/application-development/java-ee-8-high-performance>


Le lun. 13 juil. 2020 à 10:18, Mark Struberg <st...@yahoo.de.invalid> a
écrit :

> +1, should also make things faster a bit.
>
> LieGrue,
> strub
>
>
> > Am 10.07.2020 um 09:42 schrieb Romain Manni-Bucau <rmannibucau@gmail.com
> >:
> >
> > Hi everyone,
> >
> > Wonder if we should change a bit our converter (in our mapper)/adapter
> > (jsonb) handling.
> >
> > Currently we have a static map of converters and in jsonb layer we
> create a
> > map we then merge with mapper converter map.
> > The part I care particularly right now is the java8 default converters.
> > They can belong to mapper now we are java 8 based so we should probably
> > move the ones we can (think maybe Date one can't for backward
> compatibility
> > reasons).
> > However I'd also like to avoid to instantiate them all OOTB, to be
> concrete
> > maybe 1 or 2 are useful in apps compared to all the ones we create to be
> > spec compliant.
> > My first thought is about creating a lazy map (we only use get or
> entrySet
> > I think - to refine but idea is to only override the API we use) behaving
> > as a standard map but on miss we can lookup the fallback (a but like a
> > linked list of map in terms of design).
> > Challenge can be to also lazy load part of the constants - but a
> "LazyInit"
> > class with static constant should do the trick there (constant are the
> > ZoneId for ex).
> >
> > Wdyt? Do you see alternatives?
> >
> > Idea is really to boot very fast if you don't use anything from that
> part.
> >
> > Romain Manni-Bucau
> > @rmannibucau <https://twitter.com/rmannibucau> |  Blog
> > <https://rmannibucau.metawerx.net/> | Old Blog
> > <http://rmannibucau.wordpress.com> | Github <
> https://github.com/rmannibucau> |
> > LinkedIn <https://www.linkedin.com/in/rmannibucau> | Book
> > <
> https://www.packtpub.com/application-development/java-ee-8-high-performance
> >
>
>

Re: [DISCUSS] default adapters rework?

Posted by Mark Struberg <st...@yahoo.de.INVALID>.
+1, should also make things faster a bit.

LieGrue,
strub


> Am 10.07.2020 um 09:42 schrieb Romain Manni-Bucau <rm...@gmail.com>:
> 
> Hi everyone,
> 
> Wonder if we should change a bit our converter (in our mapper)/adapter
> (jsonb) handling.
> 
> Currently we have a static map of converters and in jsonb layer we create a
> map we then merge with mapper converter map.
> The part I care particularly right now is the java8 default converters.
> They can belong to mapper now we are java 8 based so we should probably
> move the ones we can (think maybe Date one can't for backward compatibility
> reasons).
> However I'd also like to avoid to instantiate them all OOTB, to be concrete
> maybe 1 or 2 are useful in apps compared to all the ones we create to be
> spec compliant.
> My first thought is about creating a lazy map (we only use get or entrySet
> I think - to refine but idea is to only override the API we use) behaving
> as a standard map but on miss we can lookup the fallback (a but like a
> linked list of map in terms of design).
> Challenge can be to also lazy load part of the constants - but a "LazyInit"
> class with static constant should do the trick there (constant are the
> ZoneId for ex).
> 
> Wdyt? Do you see alternatives?
> 
> Idea is really to boot very fast if you don't use anything from that part.
> 
> Romain Manni-Bucau
> @rmannibucau <https://twitter.com/rmannibucau> |  Blog
> <https://rmannibucau.metawerx.net/> | Old Blog
> <http://rmannibucau.wordpress.com> | Github <https://github.com/rmannibucau> |
> LinkedIn <https://www.linkedin.com/in/rmannibucau> | Book
> <https://www.packtpub.com/application-development/java-ee-8-high-performance>