[MDSAL-578] Refactor DataObjectCodecContext augmentation handling Created: 20/Jul/20  Updated: 30/Sep/20  Resolved: 30/Sep/20

Status: Resolved
Project: mdsal
Component/s: Binding runtime
Affects Version/s: None
Fix Version/s: 7.0.0

Type: Improvement Priority: High
Reporter: Robert Varga Assignee: Robert Varga
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Epic Link: Make class loading predictable

 Description   

ClassLoadingStrategy is now integrated into BindingRuntimeContext, which means we can load all augmentations that are reachable for a particular SchemaContext.

This is a key simplification, as now we do not have to worry about the set of possible classes expanding based on the invocation context (such as would be possible with Thread context class loading strategy).

The benefit is that we can simplify augmentations fields in DataObjectCodecContext and make them pure caches. Most notably we should have enough knowledge so that we run reloadAllAugmentations() exactly once and also should not fiddle with a Class's ClassLoader in augmentationByClass().


Generated at Wed Feb 07 20:10:09 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.