Bug 207189 - [efs] Link remote resources into workspace
Summary: [efs] Link remote resources into workspace
Status: ASSIGNED
Alias: None
Product: Target Management
Classification: Tools
Component: RSE (show other bugs)
Version: 2.0.1   Edit
Hardware: PC Windows XP
: P3 enhancement with 3 votes (vote)
Target Milestone: ---   Edit
Assignee: dsdp.tm.rse-inbox CLA
QA Contact: Martin Oberhuber CLA
URL:
Whiteboard:
Keywords: helpwanted
Depends on: 201438
Blocks:
  Show dependency tree
 
Reported: 2007-10-23 12:07 EDT by Yaron Mazor CLA
Modified: 2008-02-05 11:48 EST (History)
8 users (show)

See Also:


Attachments
A requirement document for RSE enhancement (165.50 KB, application/octet-stream)
2007-11-01 04:43 EDT, Yaron Mazor CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Yaron Mazor CLA 2007-10-23 12:07:36 EDT
I think there should be a more elegant way to add RSE resources into
an existing project. Until now, we added a linked folder/file which is nice but requires too many steps to be performed.

Maybe right click on a folder/file in the RSE browser should show an action:
"Link into workspace" and this will activate a wizard:
1) New Project
2) Existing one

Yaron
Comment 1 Kevin Doyle CLA 2007-10-25 21:58:53 EDT
Great Idea. Vote +1.
Comment 2 David McKnight CLA 2007-10-26 16:11:44 EDT
Seems like a good idea to me.  I guess in the 2nd case we might launch the Eclipse new folder wizard with the advanced section expanded and preselected with RSE and the remote location.
Comment 3 Kevin Doyle CLA 2007-10-26 17:23:05 EDT
It would be nice to have this work when selecting multiple files/folders in which case using the New Folder/File wizard with it filled in wouldn't work.  

Selecting where to put the linked files/folders might be difficult though if we allow multiple selection and if the user wants the files to be named differently then what they are in the remote in the project as well.
Comment 4 Martin Oberhuber CLA 2007-10-29 07:23:00 EDT
Do you have a concrete use-case for supporting multi-select, which could not be accomplished otherwise?
Comment 5 Kevin Doyle CLA 2007-10-29 14:08:08 EDT
You can always link 1 file/folder at a time, but if you have a lot of files that takes way too long.  Being able to select multiple files/folders and Link into workspace would speed this up.

Currently for PHP projects I'd like to have everything right below the project, but that would take too long to do all the links so I create a folder in the project and link that folder to my remote folder.  I do this for other files as well grouping them into folders instead of manually linking each one.  I don't get the exact project structure I'd like, but it is so much faster that I can live without the project structure I'd like.  With Link to Workspace working on multiple selection I could very easily get the project structure I like.

I do this because create remote project doesn't have the php nature.  I know I could create a .project file and add the php nature, but an average user is not going to know how to add the nature.  
Comment 6 Yaron Mazor CLA 2007-10-30 03:36:00 EDT
Creating Remote Project with nature is also important. Shall I open a specific enhancement request for it ?
Comment 7 Kevin Doyle CLA 2007-10-31 17:00:39 EDT
(In reply to comment #6)
> Creating Remote Project with nature is also important. Shall I open a specific
> enhancement request for it ?
> 

Since creating a remote project would be part of this new action I think discussions about project nature should stay with this bug.

Yaron/Yossi, if it's possible could you post the feedback you have been getting for RSE?  What do you want to see for this action?

Somethings I have noticed hanging in #eclipse irc channel is that user's don't know how to link files.  They create a local project then try to do Import to Project thinking that will link resources.  I haven't heard about anyone using the Create Remote Project action.

I've marked this bug helpwanted.
Comment 8 Yaron Mazor CLA 2007-11-01 04:43:17 EDT
Created attachment 81843 [details]
A requirement document for RSE enhancement
Comment 9 Yaron Mazor CLA 2007-11-01 04:44:20 EDT
I've attached a requirement document which summarizes 3 topics that we are currently discussing about.
1. Create a remote folder (to RSE) from File-->New
2. Added RSE resources into project/workspace
3. Create remote project

See attached.
Comment 10 Yaron Mazor CLA 2007-11-15 07:22:17 EST
Hi all.

Did anyone see the attached requirement ?
Please provide your feedback.
Thank's,
Yaron
Comment 11 Martin Oberhuber CLA 2007-11-21 13:54:51 EST
I finally got to reading the requirements docs, and here are some comments. Over all, it looks great from a user's perspective, and I'm sure it will simplify user experience. Here are some implementation notes though:

Requirement 1: Add remote folder
- Though the document talks about "FTP" only, this requirement is not at all
  specific to FTP or even RSE -- it would work the same with any EFS provider.
  Consequently, I'm not 100% sure if this action should be contributed through
  RSE, through the Platform, or other 3rd party.
  Basically, functionality is the same as New > Folder > Link... but just kind
  of a shortcut to simplify user experience. Also, the kind of EFS provider is
  not being specified, do you want to hard-code it to RSE? I'd like to get
  DaveM's and KevinD's opinion on this.
  Though I like the way how the same dialog is being re-used for Req 1 and 
  Req 2, so I could imagine adding this to RSE (even with RSE hard-coded as
  EFS provider; or, perhaps, adding an "EFS Provider" dropdown to the UI only
  in case an additional EFS provider is being detected).

Requirement 2: Add to project
- looks great to me. Note that conflicts need to be dealt with (e.g. target
  project already has folder "foo" and user wants to add new remote folder
  "foo" -- what should the dialog do?

Requirement 3: Create Remote project 
- This requirement is being tracked separately through bug 201438. In terms of
  your question regarding implementation, I think that the ".project" file 
  should be created locally because of bug 181460 -- fully remote projects 
  with the ".project" file on the remote still cannot open automatically on
  Workbench startup. Due to the way the Resources plugin works, I'm not sure if
  this can be resolved in the RSE 3.0 time frame.
  Also, creating the .project file locally has the advantage that it will also
  work when the remote is fully read-only.

I'd recommend dealing with Req 1 and 2 only in this bug, and moving all discussions regarding Req 3 to bug 201438.
Comment 12 David Dykstal CLA 2007-11-21 14:24:45 EST
I've read the requirements doc and think Martin has addressed the issues nicely.

Requirement 2: "Add to project". The intent is to be able to add to any project, not just PHP projects. Correct?

Requirement 3: "Create Remote Project". It sounds like what Martin is suggesting (due to bug 181460) is to create a local project and link in the remote folder. Am I understanding this correctly? If so, we might want to not consider this a "remote project" but a local project with remote resources. I'm not sure what sort of terminology to use in the "create" action.
Comment 13 Martin Oberhuber CLA 2007-11-21 14:27:06 EST
(In reply to comment #12)
> Requirement 3: "Create Remote Project". It sounds like what Martin is
Continued on bug 201438

Comment 14 Kevin Doyle CLA 2007-11-21 17:53:51 EST
My thoughts:

Requirement 1:
I like the idea, but don't think RSE is the right place for it.  I think the Platform is the right place for providing/updating actions to make using EFS implementations simpler.  Bug #116414 is open on the Platform for creating a new Dialog for making it easier to access external EFS systems.  I think this is the bug to follow for fixing up the various actions like New Folder.  

Bug #116414 when fixed will help make the user experience using EFS implementations much easier.  Though other areas of the Platform will need updating to take advantage of EFS implementations.  Another issue is with saving of files.  The Save As dialog is specific to the workspace.  Bug #93562 is open for saving to external file systems.  I think these 2 platform bugs will make the user experience using EFS simpler, but the additional actions mentioned in RSE can make it even better when using the RSE EFS implementation.

This sounds like it's specific to your product though as you mention for the "PHP Explorer".

Requirement 2:
As previously stated I really like this idea.  It should work for more then just PHP projects as Dave mentioned.  In addition to Martin's comments we also need to be careful if we allow multiple selecting files/folders to validate none of the names clash with each other or within the project.  If the dialog used is like the one in the requirements doc then we should bring up a rename dialog when the user clicks Finish if we have any conflicts.  This dialog should allow the user to rename the files/folders in conflict.  Only downside is the user thinks everything is okay when clicking Finish in the original dialog.  

We could also have a 1(2) step wizard.  First wizard page you select the destination to add the files to.  Next is only enabled if any name conflicts have been detected.  If so Finish is disabled and the user clicks Next to clean up the naming conflicts.  Otherwise Next is disabled and Finish is enabled.

Requirement 3:
I'll add my thoughts to Bug #201438.
Comment 15 Martin Oberhuber CLA 2007-11-21 18:15:45 EST
I think I'd prefer avoiding complex conflict resolutions, and allow a single resource to be imported into the workspace at a time only.
Comment 16 Kevin Doyle CLA 2007-11-21 19:48:49 EST
(In reply to comment #15)
> I think I'd prefer avoiding complex conflict resolutions, and allow a single
> resource to be imported into the workspace at a time only.
> 

Understandable.  Would be nice to have it work on multiple selection, but makes it more complicated.  Just having it work on single selection is a great improvement.  Maybe future enhancement could be to add multiple selection if enough user's request it.
Comment 17 Martin Oberhuber CLA 2008-01-21 09:14:31 EST
Here is an interesting idea (from a different EFS provider) that links in remote folders via a "New > General > Remote Folder" wizard:

https://ssl.tschirpke.org/wsefs/trac/wiki/WSEFSUi-Plugin
Comment 18 Yaron Mazor CLA 2008-01-22 04:05:49 EST
(In reply to comment #17)
> Here is an interesting idea (from a different EFS provider) that links in
> remote folders via a "New > General > Remote Folder" wizard:
> 
> https://ssl.tschirpke.org/wsefs/trac/wiki/WSEFSUi-Plugin
> 

It looks like the other way around, i.e create a new folder which is linked to a remote file system.
This issue is more focused on taking the remote folder and create a link to it
from either an existing project OR a new one.
Nevertheless, I do agree that adding a NEW-->Remote Folder feature will make the process easier as well.
Comment 19 Martin Oberhuber CLA 2008-02-05 11:48:27 EST
So, here we've got a requirements doc and some feedback:

* Req 1 - not RSE specific, but comes with Req 2; 
          also being partially addressed by Platform bug 116414;
          --> postpone for now
* Req 2 - looks good, allow single selection only first;
          please add details on how conflicts should be resolved;
* Req 3 - tracked separately in bug 201438;

* Idea 4 - "New > General > Remote Folder" approach;
           --> not to be considered for now

How would the requirements submitters like to go forward? The bug is marked "helpwanted" and I can't currently see any committer investment so we're waiting for patches. Thus assigning to Inbox for now.