Community
Participate
Working Groups
In Package Explorer there is always dirty marker on the first package in plugin if in this plugin there are dirty markers on other packages in the same plugin. This first package may have no one dirty class at all, but it still keeps dirty marker.
It should now be possible for the CVS decorator to address the "logical to physical" problem by using IContainmentAdapter. Not sure whether the CVS decorator is first passed the Java element or the adapted resource though. If it's the latter, it's too late.
It is passed the adapted resource as it is an IResource that it asks for. However there is no reason that they couldn't change it to ask for the IJavaElement and go from there.
The CVS has no knowledge of JDT so we can't ask for IJavaElement. If the decorator were given the original object instead of an IResource we could then have logic that said "if this adapts to IContainmentAdapter do A, otherwise adapt to IResource and do B". Even if the above were true, I don't think this is enough. To use IContainmentAdapter, you must have a set of objects to pass to the IContainmentAdapter to determine if they are descendants. The only objects CVS knows about are IResource so we can only ask about the children of the IResource the IContainmentAdapter adapts to. There are two possible pitfalss. First, if an IResource is passed to the IContainmentAdapter, the adapter would need to map the passed IResource back to the logical view object in order to properly determine containment? Also, if the IContainmentAdapter contains objects that adapt to IResources that are not children of the IResource the adapter adapts to, then the CVS decorator would have no way of knowing how to link these. Unless I'm missing something, IContainmentAdapter is not sufficient for this purpose.
Adding Nick so that he can respond to Mikes comments.
Michael and I discussed this. This is a non-trivial manifestation of the "logical to physical" problem.
I believe this has been addressed in 3.2. Moving to Michael to confirm.
It is indeed fixed. *** This bug has been marked as a duplicate of 3979 ***