Skip to content

Rewrite handling of JsonAutoDetect / VisibilityChecker #1463

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
cowtowncoder opened this issue Nov 26, 2016 · 2 comments
Closed

Rewrite handling of JsonAutoDetect / VisibilityChecker #1463

cowtowncoder opened this issue Nov 26, 2016 · 2 comments

Comments

@cowtowncoder
Copy link
Member

cowtowncoder commented Nov 26, 2016

Since handling of @JsonAutoDetect predates use of value objects for annotations (used with @JsonFormat for example), it uses its own variation which is unnecessarily complex and limiting: specifically it does not allow as easy merging. But while it'd be nice to rewrite this, update is bit complicated since JAXB annotation introspector uses this as well.

Given this it is perhaps best to rewrite this in 3.x, not in 2.9.

For 2.9, #1347 has added @JsonAutoDetect.Value and some of its uses for overrides. Maybe 3.x can remove need for separate VisibilityChecker, if that makes sense.

@cowtowncoder cowtowncoder added the 3.x Issues to be only tackled for Jackson 3.x, not 2.x label Nov 26, 2016
@cowtowncoder cowtowncoder changed the title (3.0) Rewrite handling of JsonAutoDetect / VisibilityChecker Rewrite handling of JsonAutoDetect / VisibilityChecker Mar 30, 2017
@cowtowncoder
Copy link
Member Author

Not 100% sure what I thought here, but if this is just about removing one intermediate class that may well make sense... working in this are now.

@cowtowncoder cowtowncoder removed 3.x Issues to be only tackled for Jackson 3.x, not 2.x ACTIVE labels Mar 1, 2018
@cowtowncoder
Copy link
Member Author

Although simplifications were possible, I think I'll leave separation as-is. Except for one thing: I changed VisibilityChecker to be a non-generic implementation, overridable; this to remove need for api/impl separation that at this point adds no value. Change is in 3.0.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant