Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 342092 - Extending AbstractAllContainerState requries copying of resourceChanged
Summary: Extending AbstractAllContainerState requries copying of resourceChanged
Status: CLOSED FIXED
Alias: None
Product: TMF
Classification: Modeling
Component: Xtext (show other bugs)
Version: 2.0.0   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: M7   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-04-06 19:39 EDT by Henrik Lindberg CLA
Modified: 2017-09-19 18:15 EDT (History)
1 user (show)

See Also:
sebastian.zarnekow: juno+


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Henrik Lindberg CLA 2011-04-06 19:39:59 EDT
When extending WorkspaceProjectState to include visibility of other projects based on manifest files (these are specific to the domain language) I found that I have to make a copy of the AbstractAllContainerState#resourceChanged method to be able to hook it with a check if a manifest file has been modified. (If I do not override, I need to interpret the same change again, and even perform an initialization even if the logic in AbstractAllContainerState has done so already.

Adding a method such as:
protected boolean doesThisDeltaRequireClear(IResourceDelta delta) { return false; }
and hooking it on line 217, after a check has been made if the delta is a Project description change, would be an improvement. It would do something like:

if(doesThisDeltaRequireClear(delta)) { clear.set(Boolean.TRUE); return false; }
Comment 1 Sebastian Zarnekow CLA 2012-04-03 17:56:26 EDT
Introduced #isAffectingContainerState(IResourceDelta) which may be overwritten by clients.
Comment 2 Karsten Thoms CLA 2017-09-19 18:05:32 EDT
Closing all bugs that were set to RESOLVED before Neon.0
Comment 3 Karsten Thoms CLA 2017-09-19 18:15:24 EDT
Closing all bugs that were set to RESOLVED before Neon.0