|Re: USS client usability [message #1802047 is a reply to message #1801930]
||Thu, 31 January 2019 10:56
|| Eike Stepper
Registered: July 2009
It's quite long ago that I was concerned with preference synchronization and at that time all the requirements (especially the higher level user workflows) were provided by the Eclipse Foundation.|
1.Why does the USS not synchronize the settings when the IDE starts, even if the user has allowed it?
I don't think that's generally true. In SetupUIPlugin.performStartup() I see the following code almost right at the beginning:
synchronizationController = SynchronizerManager.INSTANCE.startSynchronization(false, false, false);
catch (Exception ex)
Perhaps you can remote debug your startup and check whether SynchronizerManager.Availability.AVAILABLE is true and whether the returned synchronizationController is not null?
If I recall correctly all requirements of the Eclipse Foundation followed the prime directive "Never interrupt the user when she might be doing other things". In this case that means, if there are sync conflicts at startup time, don't bother the user.
2. Why does USS synchronize settings only after clicking Window -> Preferences -> Oomph -> Setup Tasks -> Preference Synchronizer -> Synchronize Now ... ?
What makes this question different from question 1?
Here's the call hierarchy of SynchronizerManager.startSynchronization():
org.eclipse.oomph.setup.ui.synchronizer.SynchronizerManager.startSynchronization(boolean, boolean, boolean)
org.eclipse.oomph.setup.ui.synchronizer.SynchronizerManager.synchronize(boolean, boolean, boolean)
As you can see, synchronization is triggered in three places:
1. Startup perform (see question 1)
2. "Synchronize Now ..." action (full sync, i.e., possibly with conflict resolution dialog)
3. "Perform Setup Tasks..." action (see question 3)
3. Why USS does not synchronize settings if there is an active Oomph task in the lower right corner of the screen?
I think it generally does. See my previous answer.
4. [...] We expect that user settings will be synchronized when you start the Eclipse IDE, when you press the Help -> Perform Setup Tasks key. But synchronization does not occur during the above described actions.
I have the feeling that your expectations are correct. It's probably best to use the (remote) debugger to find out what's going wrong in your case.
Powered by FUDForum
. Page generated in 0.01948 seconds