*
*/
public void reset() throws IOException
{
PrefsPreferenceSetImpl preferenceSet = (PrefsPreferenceSetImpl) perPrincipalPrefs.get(getPrincipal());
try
{
if (originalValues != null && preferenceSet != null)
{
Iterator prefs = preferenceSet.iterator();
while (prefs.hasNext())
{
PrefsPreference pref = (PrefsPreference) prefs.next();
if (originalValues.containsKey(pref.getName()))
{
pref.setValues((String[]) originalValues.get(pref.getName()));
}
else
{
preferenceSet.remove(pref);
}
preferenceSet.flush();
}
Iterator keys = originalValues.keySet().iterator();
while (keys.hasNext())
{
String key = (String) keys.next();
if (preferenceSet.get(key) == null)
{
preferenceSet.add(key, Arrays.asList((String[]) originalValues.get(key)));
}
}
}
dirty = false;
backupValues(preferenceSet);