Bug 242155 - [UI] Importing multiple inter-dependant resources
Summary: [UI] Importing multiple inter-dependant resources
Status: NEW
Alias: None
Product: EMF
Classification: Modeling
Component: cdo.ui (show other bugs)
Version: 4.13   Edit
Hardware: PC Windows XP
: P3 enhancement (vote)
Target Milestone: ---   Edit
Assignee: Victor Roldan Betancort CLA
QA Contact:
URL:
Whiteboard: Power to the People
Keywords: helpwanted
Depends on:
Blocks:
 
Reported: 2008-07-26 15:25 EDT by Victor Roldan Betancort CLA
Modified: 2020-12-11 10:42 EST (History)
4 users (show)

See Also:
stepper: galileo-


Attachments
Sketch depicting the dialog for inter-dependant resource import (257.43 KB, image/jpeg)
2008-12-11 14:37 EST, Victor Roldan Betancort CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Victor Roldan Betancort CLA 2008-07-26 15:25:54 EDT
Build ID: Eclipse 3.4

We could have multiple resources (here talking about XMIResource) with depencies between them, this means, elements from one resource might reference elements from another resource.

Being this the case, the import wizard does not take into account this situation, ignoring these external references while importing the resource into a repository, leaving data inconsistent in the repository.

Some of the requirements on this new import wizard are:
- Check for external dependencies in a resource
- Determine the dependency graph
- Analyze graph: transitive dependencies, recursive dependencies, ... ?
- Import a close-set of inter-dependant resources into a single repository 
- Scatter resources among different repos. Depends on Bug 213402
- Leave the imported resource referencing external elements. Depends on Bug 213402

A possible workflow could be:

1. User decides to import a local resource
2. The import logic detects that there are external references and offers to
import automatically those into the repository. These dependant resources could be:
2.a) imported into the same repository 
2.b) scattered among different repositories (Bug 213402 needs to be solved first)
2.c) references to them will be kept: Bug 213402 will allow references other than CDO repositories, in this case, an element within the CDO repository could reference an external XMIResource.
2.d) Not imported. References to elements in the former resource to import will be left empty/unset (and therefore, incosistent). The user must be warned about the inconsistent situation.

- special situations must be take into account: recursive dependencies (resource "a" depends on "b", and viceversa) or transitive (a depends on b, b on c, c on .....)

Looking forward for your comments on this enhacement.
/Victor
Comment 1 Eike Stepper CLA 2008-07-26 15:58:12 EDT
Hi Vik, Good description!

I guess you still intend to make an initial contribution? So I will wait for that ;-)

Btw. I can't remember that we talked about multiple repositories as import targets. Don't you mean multiple resources in one repository?

If you really mean multiple repositories I wouldn't start with this particular requirement. Usually Simon is really fast but anyway I'd suggest to move this requirement to a different enhancement request which then gets the "depends-on".
Comment 2 Victor Roldan Betancort CLA 2008-07-26 16:35:03 EDT
(In reply to comment #1)
> Hi Vik, Good description!

thanks Eike!

> 
> I guess you still intend to make an initial contribution? So I will wait for
> that ;-)
> 

Yes, I hope this could be an initial contribution :D

> Btw. I can't remember that we talked about multiple repositories as import
> targets. Don't you mean multiple resources in one repository?

Yes, we agreed that the target should be a single repository, but since 213402 will support references to other repositories, we could also give this option (is not top priorty, of course ;)). 

> 
> If you really mean multiple repositories I wouldn't start with this particular
> requirement. Usually Simon is really fast but anyway I'd suggest to move this
> requirement to a different enhancement request which then gets the
> "depends-on".
> 

Yes, I agree with you. First a single target repository. Lets leave multiple target repositories for the future :)
Comment 3 Simon Mc Duff CLA 2008-11-11 08:30:52 EST
Vic did you do some works in the Editor that you could shared ? I planned to improve UI and don't want to duplicate effort!
Comment 4 Victor Roldan Betancort CLA 2008-11-17 09:53:00 EST
Simon,

excuse me for my delay answering here, I took one week off :)

I haven't done any effort for this bug, since it was not really critical for our product.

I've worked in the CDO enhanced editor generator, which is a bit abandoned right now :( , and also I did some work on a repository resource explorer, and also got to modify our editors to allow loading a resource on demand, by using "Load Resource..." action in the context menu (accessible through right click). If those are of interest for you, I could try to factor out my code and share it :)
Comment 5 Simon Mc Duff CLA 2008-11-17 09:55:08 EST
(In reply to comment #4)
> Simon,
> 
> excuse me for my delay answering here, I took one week off :)
> 
> I haven't done any effort for this bug, since it was not really critical for
> our product.
> 
> I've worked in the CDO enhanced editor generator, which is a bit abandoned
> right now :( , and also I did some work on a repository resource explorer, and
> also got to modify our editors to allow loading a resource on demand, by using
> "Load Resource..." action in the context menu (accessible through right click).
> If those are of interest for you, I could try to factor out my code and share
> it :)
> 

Hi Victor,

Yes I would like to reuse everything you could have done.

As you notice with all the news bugzilla (from the UI) I planned (already did some of them) to improve the UI.
If you have any request please let me know!

Simon
Comment 6 Eike Stepper CLA 2008-12-01 08:35:35 EST
Re-assigning to Vik in preparation of his new committer state...
Comment 7 Victor Roldan Betancort CLA 2008-12-11 14:37:01 EST
Created attachment 120239 [details]
Sketch depicting the dialog for inter-dependant resource import

- Ignore action should be "unset"
- The title message should be something like "The resource you are about to import reference objects from other resources
Comment 8 Eike Stepper CLA 2009-11-01 05:58:26 EST
Rebasing all unresolved enhancement requests to 3.0
Comment 9 Eike Stepper CLA 2010-06-29 04:50:06 EDT
Rebasing all outstanding enhancements requests to version 4.0
Comment 10 Eike Stepper CLA 2011-06-23 03:57:00 EDT
Moving all open enhancement requests to 4.1
Comment 11 Eike Stepper CLA 2012-08-14 22:55:07 EDT
Moving all open issues to 4.2. Open bugs can be ported to 4.1 maintenance after they've been fixed in master.
Comment 12 Eike Stepper CLA 2013-06-27 04:05:55 EDT
Moving all outstanding enhancements to 4.3
Comment 13 Eike Stepper CLA 2014-08-19 09:22:56 EDT
Moving all open enhancement requests to 4.4
Comment 14 Eike Stepper CLA 2014-08-19 09:34:56 EDT
Moving all open enhancement requests to 4.4
Comment 15 Eike Stepper CLA 2015-07-14 02:17:56 EDT
Moving all open bugzillas to 4.5.
Comment 16 Eike Stepper CLA 2016-07-31 01:00:49 EDT
Moving all unaddressed bugzillas to 4.6.
Comment 17 Eike Stepper CLA 2017-12-28 01:12:03 EST
Moving all open bugs to 4.7
Comment 18 Eike Stepper CLA 2019-11-08 02:08:20 EST
Moving all unresolved issues to version 4.8-
Comment 19 Eike Stepper CLA 2019-12-13 12:51:18 EST
Moving all unresolved issues to version 4.9
Comment 20 Eike Stepper CLA 2020-12-11 10:42:24 EST
Moving to 4.13.