offer a choice to "cancel" from any save
when a user choose to save a data package, there is usually not an option to cancel out of the operation.
1. For example, when there is a docid collision in Metacat, the user has to choose to increment the revision or let morpho choose a new docid. The user should also be able to cancel out altogether if s/he does not know which to choose.
2. if the log-in fails, the local doc is still saved. this should be optional.
#1 Updated by ben leinfelder over 8 years ago
There is now a "Cancel" button on the id conflict screen. If you choose to cancel at that point you can. I agree it is somewhat confusing having both local and network options in one screen and then hitting "cancel" at some point after and not really knowing what you are canceling. Perhaps we should even consider going so far as to make the two actions completely separate.
Morpho 2.0.0 will treat Local and Network saves somewhat independently. First, if selected, the network save will be attempted. Then, if that is successful, the local save will be done (potentially with updated IDs from the network). but I do not believe canceling the network save will also cancel the local save. Perhaps it should, just to be on the safe side.
#2 Updated by Jing Tao over 8 years ago
I opened a local package and edited the title. The location of the data package is blank. Then I chose "save to local". It showed the docid collision dialog. If I clicked the cancel button, it doesn't go back to the original state - the location changed to "local". It should be blank.
#3 Updated by Jing Tao over 8 years ago
In the LocalDataStoreService and DataONEStoreService class, if the user clicks cancel button on the id collision dialog, the flag vairables which indicate the success of the saving will be set to false. This change fixed the bug described in the previous comment.
#4 Updated by ben leinfelder over 8 years ago
We allow you to cancel if/when the identifier conflict screen shows. If the save is canceled at this stage, neither the local or network save will continue.
If you fail to login during the local+network save, however, the local save will complete (if no errors) and the network save will just fail - no harm there. I think this is okay given that the network save can be attempted again once the login is sorted out.