Bug 313087 - Delete deprecated IResource#isLocal API
Summary: Delete deprecated IResource#isLocal API
Status: NEW
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Resources (show other bugs)
Version: 3.6   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Platform-Resources-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords: api
Depends on:
Blocks:
 
Reported: 2010-05-17 05:19 EDT by Szymon Brandys CLA
Modified: 2019-09-06 16:09 EDT (History)
1 user (show)

See Also:
Szymon.Brandys: review? (john.arthorne)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Szymon Brandys CLA 2010-05-17 05:19:38 EDT
IResource#isLocal API was marked deprecated during 3.2, see bug 122936. It should be removed according to the deprecation policy.

The specific API to be removed includes: 

org.eclipse.core.resources.IResource#setLocal
org.eclipse.core.resources.IResource#isLocal

The specific API methods:

org.eclipse.core.resources.IFolder#create(boolean, boolean, IProgressMonitor)
org.eclipse.core.resources.IFolder#create(int, boolean, IProgressMonitor)

should be replaced with:

org.eclipse.core.resources.IFolder#create(boolean, IProgressMonitor)
org.eclipse.core.resources.IFolder#create(int, IProgressMonitor)
Comment 1 John Arthorne CLA 2010-05-17 12:02:37 EDT
To be clear, you are only talking about removing the isLocal/setLocal methods, and not the IFolder#create methods listed here?

I agree with removing isLocal/setLocal methods. That concept was used in Eclipse 0.9 but has been obsolete ever since. To me the main value in removing them is:

1) These methods do nothing today other than setting the "local" bit
2) The concept could be confused with "is in the local file system" vs some remote EFS. If anyone is using this today they are probably making this mistake.

There is some UI API that should be removed at the same time, such as org.eclipse.ui.actions.ScrubLocalAction.
Comment 2 Szymon Brandys CLA 2010-05-17 12:49:22 EDT
I think that IFolder#create should be replaced. We should remove org.eclipse.core.resources.IFolder#create(boolean, boolean, IProgressMonitor) and introduce org.eclipse.core.resources.IFolder#create(boolean, IProgressMonitor) instead. Moreover we should remove all javadoc that refer to the 'local' concept.
Comment 3 John Arthorne CLA 2010-05-17 13:12:04 EDT
(In reply to comment #2)
> I think that IFolder#create should be replaced. We should remove
> org.eclipse.core.resources.IFolder#create(boolean, boolean, IProgressMonitor)
> and introduce org.eclipse.core.resources.IFolder#create(boolean,
> IProgressMonitor) instead. Moreover we should remove all javadoc that refer to
> the 'local' concept.

Maybe eventually. But these #create methods aren't even deprecated at this point, and no replacement exists. The next step on that front would be to investigate deprecating them in 3.7 and create alternative API. I think we would only need IFolder#create(int, IProgressMonitor).
Comment 4 Szymon Brandys CLA 2010-05-17 13:49:40 EDT
(In reply to comment #3)
> Maybe eventually. But these #create methods aren't even deprecated at this
> point, and no replacement exists. The next step on that front would be to
> investigate deprecating them in 3.7 and create alternative API. I think we
> would only need IFolder#create(int, IProgressMonitor).

I see. In that case this request for removal is only about the isLocal/setLocal methods.

During 3.7, I'll add IFolder#create(int, IProgressMonitor) and mark the old #create methods deprecated. Then I'll raise a bug for removing #create methods.
Comment 5 Eclipse Webmaster CLA 2019-09-06 16:09:07 EDT
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet.

If you have further information on the current state of the bug, please add it. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant.