What's Eclipse USS

I would like to introduce a new service available for the user community: Eclipse User Storage, aka the USS. It is an API for projects to store data on Eclipse Foundation servers, linked to a user account.

A few plugins are currently using it and are available in Eclipse Neon: the Marketplace Client and Oomph Preferences Synchronizer.

The Marketplace Client

Its intent is to help users share their favorite plugins between many installations or workstations: the Marketplace Client.

Available since Neon M7, the Marketplace Client or “MPC” is very useful to install and share your favorite Eclipse plugins. By sharing, I mean that if you are using the same Eclipse account on many workstations, you are able to retrieve your favorites through the MPC, and install them. Life made easy, in a sense, no?

So, where to find this wonderful tool? Just open the “Help” menu, and look for “Eclipse Marketplace”.

It opens a new window, dedicated to the MPC. Your workbench is still available while you’re browsing and installing packages.

php support   php support


Now, let’s see how you can use the sharing feature. Go to the “Favorites” tab. The first time you use the MPC, this tab will be empty. Just click on “Log in to view your favorites” and fill the form with your Eclipse account information.

php support


If you have the “Secure Storage” service activated in Eclipse, you might have to configure that too.

To add a package as a favorite, just click on the star button below a project’s logo. You can do that on any tab of the MPC. Of course, you can search some packages on the “Search” tab. However, I would recommend that you go in the “Installed” tab, and add your favorites from there.

Of course, you can also go to the Eclipse Marketplace website and manage your favorites there. And if you already have favorites there, they will be automatically imported in the MPC.

Go back to the “Favorites” tab:

php support


You can also click on “Import Favorites List…” and copy paste the link of the favorites of a user. You can try this feature right now with my very own favourite link: https://marketplace.eclipse.org/user/athomaseh2/favorites

If you are using Eclipse on many devices, just repeat the same thing. You can install your favorite packages across multiple Eclipse installations using the MPC. Just click on the “Install” button of a package. Of course, you might have to restart Eclipse once you’re done.

The MPC is available in Eclipse Neon. And if you find a bug, please report it here. Feedback will allow us to make it even better!

Oomph Preference Synchronizer

The other Eclipse plugin using the USS is allowing to synchronize your preferences between many Eclipse installations: on one workstation, or between several workstations.

Just open the Eclipse Preferences window. You will find at the bottom left a red circle, just click on it, it becomes red. The Preference Synchronizer is now activated.

php support


Now, when you will change a setting in the preferences, it will be recorded. The first time a preference is recorded, a new window will open: you will be able to select whether you want to store the setting locally or online. This is available because sometime, you might not want to share something.

php support


It will then remember your choice. I tested it between my Mac and my Ubuntu laptops. And this is working well. If you want to force the synchronisation, one way is to go in the menu, “Help / Perform Setup Tasks” and it’s done.

How It Works

One last point to explain: where are your favorites and preferences being stored? As explained at the beginning of this article, the Marketplace Client and Oomph Preference Synchronizer are using the USS (User Storage Service). So your favorites are saved with your Eclipse user account.

At the moment, only MPC and Oomph are using the USS. But of course, this it can be used by any Eclipse project. The USS SDK is actually part of the Oomph project, and will be soon taken outside as an independant Eclipse project.

So, if you want to play with test the api, here are some interesting resources:

To conclude, I would like to thank a lot Eike Stepper, Carsten Reckord, Brian de Alwis, and Christopher Guindon for the great work they have done and the help they gave me.

About the Authors