diff --git a/source/java/org/alfresco/repo/preference/PreferenceServiceImpl.java b/source/java/org/alfresco/repo/preference/PreferenceServiceImpl.java index 0f96cfb925..ed9399918d 100644 --- a/source/java/org/alfresco/repo/preference/PreferenceServiceImpl.java +++ b/source/java/org/alfresco/repo/preference/PreferenceServiceImpl.java @@ -132,6 +132,7 @@ public class PreferenceServiceImpl implements PreferenceService /** * @see org.alfresco.repo.person.PersonService#getPreferences(java.lang.String, java.lang.String) */ + @SuppressWarnings("unchecked") public Map getPreferences(String userName, String preferenceFilter) { Map preferences = new HashMap(20); diff --git a/source/java/org/alfresco/repo/preference/script/ScriptPreferenceService.java b/source/java/org/alfresco/repo/preference/script/ScriptPreferenceService.java index 55b7fd74bd..410c777b0b 100644 --- a/source/java/org/alfresco/repo/preference/script/ScriptPreferenceService.java +++ b/source/java/org/alfresco/repo/preference/script/ScriptPreferenceService.java @@ -31,7 +31,6 @@ import java.util.Map; import org.alfresco.repo.jscript.BaseScopableProcessorExtension; import org.alfresco.service.ServiceRegistry; import org.alfresco.service.cmr.preference.PreferenceService; -import org.mozilla.javascript.IdScriptableObject; import org.mozilla.javascript.NativeObject; /** @@ -39,6 +38,7 @@ import org.mozilla.javascript.NativeObject; */ public class ScriptPreferenceService extends BaseScopableProcessorExtension { + @SuppressWarnings("unused") private ServiceRegistry services; /** Preference Service */ @@ -129,6 +129,23 @@ public class ScriptPreferenceService extends BaseScopableProcessorExtension } } + public void clearPreferences(String userName) + { + this.preferenceService.clearPreferences(userName, null); + } + + + /** + * Clear the preference values + * + * @param userName + * @param preferenceFilter + */ + public void clearPreferences(String userName, String preferenceFilter) + { + this.preferenceService.clearPreferences(userName, preferenceFilter); + } + private String getAppendedKey(String currentKey, String key) { StringBuffer buffer = new StringBuffer(64); diff --git a/source/java/org/alfresco/repo/preference/script/test_preferenceService.js b/source/java/org/alfresco/repo/preference/script/test_preferenceService.js index 4b8d10ef29..47d52ec163 100644 --- a/source/java/org/alfresco/repo/preference/script/test_preferenceService.js +++ b/source/java/org/alfresco/repo/preference/script/test_preferenceService.js @@ -25,14 +25,31 @@ function testPreferences() preferenceService.setPreferences("userOne", preferences); - result = preferenceService.getPreferences("userOne"); - + result = preferenceService.getPreferences("userOne"); test.assertNotNull(result); test.assertEquals("myValue", result.myValue); test.assertEquals("changed", result.comp1.value1); test.assertEquals(1001, result.comp1.value2); test.assertEquals("value1", result.comp2.value1); test.assertEquals(3.142, result.comp2.value2); + + preferenceService.clearPreferences("userOne", "comp1"); + + result = preferenceService.getPreferences("userOne"); + test.assertNotNull(result); + test.assertEquals("myValue", result.myValue); + test.assertEquals("undefined", result.comp1); + test.assertEquals("value1", result.comp2.value1); + test.assertEquals(3.142, result.comp2.value2); + + preferenceService.clearPreferences("userOne"); + + result = preferenceService.getPreferences("userOne"); + test.assertNotNull(result); + test.assertEquals("undefined", result.myValue); + test.assertEquals("undefined", result.comp1); + test.assertEquals("undefined", result.comp2); + } // Execute test's