Community
Participate
Working Groups
The default implementations of IBuilderParticipant should store the information about generated files between workbench sessions.
Sebastian had the idea to attach special markers to the resources. This will attach the information about which file was generated by what participant directly to the lifecycle of the resource.
I don't know about Eclipse markers as that's also a UI concept. But how about persistent properties? From IResource: public Map<QualifiedName,String> getPersistentProperties() throws CoreException; public String getPersistentProperty(QualifiedName key) throws CoreException; public void setPersistentProperty(QualifiedName key, String value) throws CoreException;
Don't know about persistent properties but markers don't seem to introduce dependencies to ui concepts: org.eclipse.core.resources.IResource.findMarker(long) At a first glance, persistent properties may be a good fit, too, e.g. Eclipse uses them to store the last editor type that was used to open a file. Markers have the advantage that one can search for all markers in a file system hierarchy by means of IResource#findMarkers() and each marker allows to navigate to the containing resource. We should try to find a solution that allows to share the builder information across workspaces, e.g. as soon as devA commits generated code to the repo, the builder on devB's machine should know about that when the code is pulled from the repo.
What I meant was that markers typically apear in views, but I suppose that that can be controlled using the marker type. If the information is to be committed to the VCS repository I suppose project preferences would be another interesting fit.
AFAIK markers are a UI-independent concept from the resources API. What you see in the UI are just representations of them (e.g. Annotations).
*** Bug 354938 has been marked as a duplicate of this bug. ***
Sven pushed a solution for this one to master.
Closing all bugs that were set to RESOLVED before Neon.0