-
Notifications
You must be signed in to change notification settings - Fork 259
Extract findExistingProject from isExistingProject #4222
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
deepika-u
wants to merge
1
commit into
eclipse-platform:master
Choose a base branch
from
deepika-u:find_existing_project
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+8
−3
Open
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If the new
findExistingProjectis only called by the oldisExistingProjectmethod, what is the purpose of such a new method that is only called in one place and could be in-lined at that location? The fact it's protected suggests that you might want to use it somewhere in a derived class...There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fair point, and you're right to question it in isolation - as it stands in this PR alone, there's no second caller, so the split doesn't pay for itself yet.
The motivation is forward-looking: this was split out of the discussion on #4170, which is exploring letting users act on an already-imported project (open it if closed, etc.), and that would need the actual
IProject, not just the booleanisExistingProjectreturns today. Since that follow-up direction is still being worked out there, I wanted to land the lookup itself separately rather than bundle it with a still-undecided UI change.That said, I take the concern seriously - if it's not going to be used elsewhere in the near term, inlining it back into
isExistingProjectand reintroducing it later (alongside whatever change actually needs it) is a perfectly reasonable alternative, and probably cleaner than speculative API surface sitting unused. Happy to go either way - do you have a preference, or would you rather see this land together with its first real caller instead of ahead of it?On
protected: that was just matching the existing visibility ofisExistingProjectandisExistingProjectNamein the same class, not a signal that subclassing was the intent - no derived class uses it today, so I don't think that reasoning holds up either. If we do keep the split,privateis more honest until there's an actual external/derived caller.