Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 341574 - Proxy resolution problem during reflective deserialization
Summary: Proxy resolution problem during reflective deserialization
Status: CLOSED FIXED
Alias: None
Product: EMF
Classification: Modeling
Component: Core (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows 7
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Ed Merks CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-04-01 00:59 EDT by Markus Herrmannsdoerfer CLA
Modified: 2011-05-10 11:57 EDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Markus Herrmannsdoerfer CLA 2011-04-01 00:59:54 EDT
When reflectively loading an Ecore instance, proxies of single-valued, unsettable references do not get resolved, even though resolve proxies is true. The following code snippet in EStructuralFeatureImpl shows the problem:

2815     public static class InternalSettingDelegateSingleEObjectResolvingUnsettable extends InternalSettingDelegateSingleEObject
2816     {
2817     public InternalSettingDelegateSingleEObjectResolvingUnsettable(EClass eClass, EStructuralFeature feature)
2818     {
2819     super(eClass, feature);
2820     }
2821    
2822     @Override
2823     protected boolean isUnsettable()
2824     {
2825     return true;
2826     }
2827     }

Must the class InternalSettingDelegateSingleEObjectResolvingUnsettable not inherit from InternalSettingDelegateSingleEObjectResolving instead of InternalSettingDelegateSingleEObject? It seems that this only affects reflective deserialization.
Comment 1 Ed Merks CLA 2011-04-01 11:52:00 EDT
The fix is committed to CVS for 2.7.
Comment 2 Ed Merks CLA 2011-05-10 11:57:53 EDT
The changes are available in EMF 2.7 M7 or an earlier build.