jakartaee / jakartaee/jsonb-api

Add default visibility implementations

Open
#164 5 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Java
Stars
95
Forks
41
Avg merge
1d 6h
Merged PRs (30d)
35

Description

It would reduce boilerplate if JSON-B implementations were required to ship with some often-needed visibility strategies, such as (up for discussion):
- `PropertyNamingStrategy.PUBLIC_PROPERTY`: Use public getters / setters, or public fields (if no corresponding getter / setter) for (de-)serialization. Default behavior.
- `PropertyNamingStrategy.PUBLIC_GETTER_SETTER`: Use public getters / setters for (de-)serialization.
- `PropertyNamingStrategy.PUBLIC_FIELDS`: Use public fields for (de-)serialization. Corresponding getters / setters that exist for the fields must be used.
- `PropertyNamingStrategy.FIELDS`: Use fields (of any visibility) for (de-)serialization. Corresponding getters / setters that exist for the fields must be used.

Maybe add others as well.

For convenience, these constants should be added to the `PropertyNamingStrategy` interface.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the PropertyNamingStrategy interface and the five existing comments to determine which visibility strategies and semantics are agreed. The issue is complete when the accepted constants and their behavior are defined and added to the interface, with verification covering the resulting visibility rules.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
api
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.