Computing the transitive hull of dependant resources [message #720802] |
Wed, 31 August 2011 09:17 |
fadjmp Messages: 6 Registered: August 2011 |
Junior Member |
|
|
Hi,
I need help to deal with the following problem. In the language I develop, modifying a resource x can lead to affect another resource y (which has thus to be re-build) even if the EObjectDescriptions of x are unchanged.
I use my own isAffected functions (by overriding the ones of resource.impl.DefaultResourceDescriptionManager). The problem is that isAffected is not called by builder.clustering.ClusteringBuilderState.doUpdate when the EObjectDescriptions of the modified resource are unchanged. Thus, isAffected doesn't have the opportunity to reply that the resource y is affected by the modification of x (if it is the case).
I see 2 bad solutions:
1. Putting in the description of the resource an EObjectDescription containing a hash of the content of the resource. This EObjectDescription will change as soon as the resource changes, so isAffected will be always called by doUpdate. This solution seems very unefficient.
2. Overriding doUpdate to always call isAffected. I don't like this solution because it implies copying and pasting this complex method of more than 100 lines, to change only one argument in a method call (i.e. to use the variable newDeltas instead of changedDeltas in the last call to queueAffectedResources).
Does someone has an idea on how to solve my problem ?
Thank you very much in advance,
Florence
|
|
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.02817 seconds