Skip to content
This repository has been archived by the owner on Feb 29, 2020. It is now read-only.

Summary dialog and detailed log #6

Open
jbsarrodie opened this issue Dec 19, 2019 · 2 comments
Open

Summary dialog and detailed log #6

jbsarrodie opened this issue Dec 19, 2019 · 2 comments

Comments

@jbsarrodie
Copy link
Member

Edge case 1

  • Model B as already been imported into A
  • Some relationship's ends has been changed
  • Let's assume these relationships were used in a view "V" coming from B, but remove since
  • We merge again B into A with "update" option not set
  • "V" should be restored (because this is a merge and "V" no more exist), but "V" contains a relationhip whose ends have changed, so this relationiship can no more exist in "V"
  • So in fact we can't restore "V"

What do we do? Either we abort the whole merge operation because we can't merge/restore "V" exactly as it was in B, or we raise a warning?

From my tests, as of now, running this tests end up with the view being imported and the relationship ends moved back to their original elements (ie. relationship has been updated while update mode is off). I can confirm that relationship is not updated if no views from B contain it (expected behavior).

My thoughts:

  • This behavior is somewhat aligned with what we have in coArchi (ie. restore some deleted object after a merge if this is needed to keep the model coherent).
  • This should be logged as "Some relationships were forced-updated during the import of some views" and shown in a small dialog box at the end of the import operation
  • In an ideal world, this "summary" dialog box should allow me to see the detailed log (which relationships' type, name and ends)

Edge case 2

  • Model B as already been imported into A
  • Some relationship's ends has been changed
  • Let's assume these relationships were used in a view "V" which does not come from B (ie. created after the first merge)
  • We merge again B into A with "update" option set
  • Because "update" option is set, the relationship is restored to its original ends.
  • "V" is impacted because now the relationship is no more valid in the context of the view

What do we do? Warning?

Tested, and of course, "V" is impacted as expected.

My thoughts:

  • This should be logged as "Some local views were updated during the import of some relationships" and shown in a small dialog box at the end of the import operation
  • In an ideal world, this "summary" dialog box should allow me to see the detailed log (which views and why)

In addition:

  • A "summary" dialog could provide the number of elements, relationships, views and folders imported, updated...
  • A detailed log could also provide the full list of elements, relationships, views and folders imported, updated... and whether they were existing or not.

Originally posted by @jbsarrodie in #1 (comment)

@jbsarrodie
Copy link
Member Author

Copying comment from @Phillipus from #2 (comment)

But perhaps what might be useful after the import is a "WTF just happened?" status report. So we could throw up a dialog something like:

Import successful
No changes
Import successful
12 Elements added, 5 updated
1 Folder updated
2 Views added, 1 updated
2 Connections deleted, 1 re-connected

And maybe go into more detail with names of concepts, folders, views.

I don't know if one would want more detail than that?

@Phillipus
Copy link
Member

The status dialog and status framework is in place now. Just need to agree the messages to display.

staus dialog

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants