Skip to content

fix: merge property descriptors when getter and setter come from different interfaces#23939

Merged
mcollovati merged 2 commits intomainfrom
fix-introspect
Mar 18, 2026
Merged

fix: merge property descriptors when getter and setter come from different interfaces#23939
mcollovati merged 2 commits intomainfrom
fix-introspect

Conversation

@Artur-
Copy link
Copy Markdown
Member

@Artur- Artur- commented Mar 18, 2026

BeanUtil's dedup loop was replacing a read-only descriptor with a write-only one (or vice versa) instead of merging them. This caused BeanPropertySet to lose the getter when a parent interface provided it and a child interface provided the setter.

Fixes #20814

…erent interfaces

BeanUtil's dedup loop was replacing a read-only descriptor with a
write-only one (or vice versa) instead of merging them. This caused
BeanPropertySet to lose the getter when a parent interface provided it
and a child interface provided the setter.
@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 18, 2026

Test Results

 1 388 files  ±0   1 388 suites  ±0   1h 27m 15s ⏱️ + 1m 16s
 9 931 tests +4   9 860 ✅ +4  71 💤 ±0  0 ❌ ±0 
10 404 runs  +4  10 324 ✅ +4  80 💤 ±0  0 ❌ ±0 

Results for commit aa759c6. ± Comparison against base commit 718a053.

♻️ This comment has been updated with latest results.

@mcollovati
Copy link
Copy Markdown
Collaborator

Would this also fix #20814?

Add tests for setter in child interface both with and without getter
override. Remove unused MeasurementBean class.

Fixes #20814
@Artur-
Copy link
Copy Markdown
Member Author

Artur- commented Mar 18, 2026

Would this also fix #20814?

Seems to do that, added the test from there

@sonarqubecloud
Copy link
Copy Markdown

@mcollovati mcollovati merged commit e1dd8c3 into main Mar 18, 2026
32 checks passed
@mcollovati mcollovati deleted the fix-introspect branch March 18, 2026 15:19
vaadin-bot pushed a commit that referenced this pull request Mar 18, 2026
…erent interfaces (#23939)

BeanUtil's dedup loop was replacing a read-only descriptor with a
write-only one (or vice versa) instead of merging them. This caused
BeanPropertySet to lose the getter when a parent interface provided it
and a child interface provided the setter.

Fixes #20814
vaadin-bot pushed a commit that referenced this pull request Mar 18, 2026
…erent interfaces (#23939)

BeanUtil's dedup loop was replacing a read-only descriptor with a
write-only one (or vice versa) instead of merging them. This caused
BeanPropertySet to lose the getter when a parent interface provided it
and a child interface provided the setter.

Fixes #20814
vaadin-bot pushed a commit that referenced this pull request Mar 18, 2026
…erent interfaces (#23939)

BeanUtil's dedup loop was replacing a read-only descriptor with a
write-only one (or vice versa) instead of merging them. This caused
BeanPropertySet to lose the getter when a parent interface provided it
and a child interface provided the setter.

Fixes #20814
vaadin-bot added a commit that referenced this pull request Mar 18, 2026
…erent interfaces (#23939) (#23940)

BeanUtil's dedup loop was replacing a read-only descriptor with a
write-only one (or vice versa) instead of merging them. This caused
BeanPropertySet to lose the getter when a parent interface provided it
and a child interface provided the setter.

Fixes #20814

Co-authored-by: Artur Signell <artur@vaadin.com>
mcollovati pushed a commit that referenced this pull request Mar 18, 2026
…erent interfaces (#23939)

BeanUtil's dedup loop was replacing a read-only descriptor with a
write-only one (or vice versa) instead of merging them. This caused
BeanPropertySet to lose the getter when a parent interface provided it
and a child interface provided the setter.

Fixes #20814
mcollovati pushed a commit that referenced this pull request Mar 18, 2026
…erent interfaces (#23939)

BeanUtil's dedup loop was replacing a read-only descriptor with a
write-only one (or vice versa) instead of merging them. This caused
BeanPropertySet to lose the getter when a parent interface provided it
and a child interface provided the setter.

Fixes #20814
vaadin-bot added a commit that referenced this pull request Mar 18, 2026
…erent interfaces (#23939) (#23942)

BeanUtil's dedup loop was replacing a read-only descriptor with a
write-only one (or vice versa) instead of merging them. This caused
BeanPropertySet to lose the getter when a parent interface provided it
and a child interface provided the setter.

Fixes #20814

Co-authored-by: Artur Signell <artur@vaadin.com>
vaadin-bot added a commit that referenced this pull request Mar 18, 2026
…erent interfaces (#23939) (#23941)

BeanUtil's dedup loop was replacing a read-only descriptor with a
write-only one (or vice versa) instead of merging them. This caused
BeanPropertySet to lose the getter when a parent interface provided it
and a child interface provided the setter.

Fixes #20814

Co-authored-by: Artur Signell <artur@vaadin.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Binder / BeanPropertySet does not find setter in nested interface

3 participants