*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
*/
-package org.altusmetrum.altoslib_11;
+package org.altusmetrum.altoslib_12;
import java.io.*;
import java.util.*;
static int map_type;
public static AltosFrequency[] load_common_frequencies() {
-
AltosFrequency[] frequencies = null;
- AltosHashSet[] sets = AltosHashSet.array(backend.getString(frequenciesPreference,null));
- if (sets != null) {
- ArrayList<AltosFrequency> freqs = new ArrayList<AltosFrequency>();
-
- for (int i = 0; i < sets.length; i++) {
- AltosFrequency f = AltosFrequency.fromHashSet(sets[i], null);
- if (f != null)
- freqs.add(f);
- }
- frequencies = freqs.toArray(new AltosFrequency[0]);
+ try {
+ AltosJson json = AltosJson.fromString(backend.getString(frequenciesPreference,
+ null));
+ frequencies = (AltosFrequency[]) json.make((new AltosFrequency[1]).getClass());
+ } catch (Exception e) {
}
if (frequencies == null) {
}
public static void save_common_frequencies() {
- AltosHashSet[] sets = new AltosHashSet[common_frequencies.length];
- for (int i = 0; i < sets.length; i++)
- sets[i] = common_frequencies[i].hashSet();
- backend.putString(frequenciesPreference, AltosHashSet.toString(sets));
+ AltosJson json = new AltosJson(common_frequencies);
+ backend.putString(frequenciesPreference, json.toString());
flush_preferences();
}
}
}
- public static void set_state(AltosState state) {
+ public static void set_state(AltosState state, int serial) {
synchronized(backend) {
- backend.putHashSet(String.format(statePreferenceFormat, state.serial), state.hashSet());
- backend.putInt(statePreferenceLatest, state.serial);
+ backend.putJson(String.format(statePreferenceFormat, serial), new AltosJson(state));
+ backend.putInt(statePreferenceLatest, serial);
flush_preferences();
}
}
public static AltosState state(int serial) {
synchronized(backend) {
try {
- return AltosState.fromHashSet(backend.getHashSet(String.format(statePreferenceFormat, serial)));
+ AltosJson json = backend.getJson(String.format(statePreferenceFormat, serial));
+ if (json != null)
+ return (AltosState) (json.make(AltosState.class));
} catch (Exception e) {
- return null;
}
+ return null;
}
}