Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 466340

Summary: Ensure *Support classes have similar contract w.r.t. to clients.
Product: [Tools] GEF Reporter: Alexander Nyßen <nyssen>
Component: GEF CommonAssignee: Alexander Nyßen <nyssen>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P3    
Version: unspecified   
Target Milestone: 3.10.0 (Mars) M7   
Hardware: All   
OS: All   
Whiteboard:

Description Alexander Nyßen CLA 2015-05-04 13:32:21 EDT
Up to now, ActivatableSupport and AdaptableSupport do not implement IActivatable and IAdaptable, while PropertyStoreSupport implements IPropertyStore. Also, PropertyStoreSupport contains a local PropertyChangeSupport, while the other support classes expect one in their constructor. We should unify the contract for the support classes w.r.t. this. 

Further, ActivatableSupport takes a generic parameter, which is not used at all. We should thus remove it, leaving it only within AdaptableSupport, where it makes sense.
Comment 1 Alexander Nyßen CLA 2015-05-04 13:55:31 EDT
As I want to include this into the Mars release (because of consistency reasons), I have just implemented the following changes and pushed them to origin master:

- Ensured PropertyStoreSupport does not implement IPropertyStore.
- Ensured PropertyStoreSupport does not create a local PropertyChangeSupport but expects one being passed into the constructor.
- Ensured ActivatableSupport does not provide an unused generic parameter.

I will re-spin our M7 contribution to include them, as changes of the 'provisional' API are involved (which I do not want to perform after M7).
Comment 2 Alexander Nyßen CLA 2015-05-04 15:32:44 EDT
Resolving as fixed in 3.10.0M7.