package org.simantics.maps.prefs;
+import java.util.Arrays;
+import java.util.List;
+
import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
-import org.eclipse.core.runtime.preferences.DefaultScope;
+import org.osgi.service.prefs.BackingStoreException;
import org.osgi.service.prefs.Preferences;
public class MapsClientPreferenceInitializer extends AbstractPreferenceInitializer {
@Override
public void initializeDefaultPreferences() {
- Preferences node = DefaultScope.INSTANCE.getNode(MapsClientPreferences.P_NODE);
- node.put(MapsClientPreferences.P_TILESERVER_URL, "http://localhost:8088");
+ Preferences node = MapsClientPreferences.getPreferences();
+
+ try {
+ String[] keys = node.keys();
+ List<String> keyss = Arrays.asList(keys);
+ if (!keyss.contains(MapsClientPreferences.P_TILESERVER_URL) && node.get(MapsClientPreferences.P_TILESERVER_URL, "").isEmpty()) {
+ String possibleBuiltin = MapsClientPreferences.possibleBuiltinServerURL();
+ if (possibleBuiltin == null)
+ possibleBuiltin = "";
+ node.put(MapsClientPreferences.P_TILESERVER_URL, possibleBuiltin);
+ }
+ } catch (BackingStoreException e) {
+ e.printStackTrace();
+ }
}
}