1 package org.simantics.maps.prefs;
3 import java.util.Arrays;
6 import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
7 import org.osgi.service.prefs.BackingStoreException;
8 import org.osgi.service.prefs.Preferences;
9 import org.slf4j.Logger;
10 import org.slf4j.LoggerFactory;
12 public class MapsClientPreferenceInitializer extends AbstractPreferenceInitializer {
14 private static final Logger LOGGER = LoggerFactory.getLogger(MapsClientPreferenceInitializer.class);
16 public MapsClientPreferenceInitializer() {
20 public void initializeDefaultPreferences() {
21 Preferences node = MapsClientPreferences.getPreferences();
24 String[] keys = node.keys();
25 List<String> keyss = Arrays.asList(keys);
26 if (!keyss.contains(MapsClientPreferences.P_TILESERVER_URL) && node.get(MapsClientPreferences.P_TILESERVER_URL, "").isEmpty()) {
27 String possibleBuiltin = MapsClientPreferences.possibleBuiltinServerURL();
28 if (possibleBuiltin == null)
30 node.put(MapsClientPreferences.P_TILESERVER_URL, possibleBuiltin);
32 } catch (BackingStoreException e) {
33 LOGGER.error("Could not get keys for node {}", node, e);