Project

General

Profile

« Previous | Next » 

Revision 7ffc533f

Added by Katja Luther over 5 years ago

ref #7856: fix allow override for namedArea vocabulary selection for distributions

View differences:

eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/PreferencesUtil.java
110 110
	    return name + "_"+  ((CdmRemoteSource)CdmStore.getActiveCdmSource()).toString();
111 111
	}
112 112

  
113
	static String prefOverrideKey(String name) {
113
	public static String prefOverrideKey(String name) {
114 114
        return name + "_OVERRIDE_"+ ((CdmRemoteSource)CdmStore.getActiveCdmSource()).toString();
115 115
    }
116 116

  
......
182 182

  
183 183
    /**
184 184
     * <p>
185
     * setStringValue
185
     * getStringValue
186 186
     * </p>
187 187
     *
188 188
     *
189 189
     **/
190
    public static String getStringValue(String name) {
190
    public static String getStringValue(String name, boolean local) {
191

  
191 192
        String prefValue = getDBPreferenceValue(name);
192
        if (prefValue == null){
193
        if (prefValue == null || local){
193 194
            String dbSpecific = prefKey(name);
194 195
            if (getPreferenceStore().contains(dbSpecific)){
195 196
                prefValue = getPreferenceStore().getString(dbSpecific);
......
202 203

  
203 204
    }
204 205

  
206
    public static String getStringValue(String name){
207
        return getStringValue(name, false);
208
    }
209

  
205 210
    private static String getDBPreferenceValue(String name) {
206 211
        CdmPreferenceCache cache = CdmPreferenceCache.instance();
207 212
        if (cache.get(name) != null){
......
459 464
	    String preferredCode;
460 465
	    if(pref == null){
461 466
	    	preferredCode = getStringValue(
462
					PREFERRED_NOMENCLATURAL_CODE_KEY);
467
					PREFERRED_NOMENCLATURAL_CODE_KEY, true);
463 468

  
464 469
	    }else{
465 470
	    	preferredCode = pref.getValue();
......
1819 1824
 * @param b
1820 1825
 */
1821 1826
public static void setPreferredVocabulariesForDistributionEditor(String saveCheckedElements,
1822
        boolean local) {
1827
        boolean local, boolean isOverride) {
1823 1828
    if (local){
1824 1829
      setStringValue(PreferencePredicate.AvailableDistributionAreaVocabularies.getKey(), saveCheckedElements);
1825
      setBooleanValue(prefOverrideKey(PreferencePredicate.AvailableDistributionAreaVocabularies.getKey()), true);
1830
      setBooleanValue(prefOverrideKey(PreferencePredicate.AvailableDistributionAreaVocabularies.getKey()), isOverride);
1826 1831
    }
1827 1832
    else{
1828 1833
        ICdmRepository controller;
......
1837 1842
                setStringValue(PreferencePredicate.AvailableDistributionAreaVocabularies.getKey(),
1838 1843
                        saveCheckedElements);
1839 1844
                preference = CdmPreference.NewInstance(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.AvailableDistributionAreaVocabularies, saveCheckedElements);
1845
                preference.setAllowOverride(isOverride);
1840 1846
                setPreferenceToDB(preference);
1841 1847
            }
1842 1848
        } else{
1843 1849
            preference = CdmPreference.NewInstance(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.AvailableDistributionAreaVocabularies, saveCheckedElements);
1850
            preference.setAllowOverride(isOverride);
1844 1851
            setPreferenceToDB(preference);
1845 1852
            setStringValue(PreferencePredicate.AvailableDistributionAreaVocabularies.getKey(),
1846 1853
                    saveCheckedElements);
......
1860 1867
public static String getPreferredVocabulariesForDistributionEditor(boolean local) {
1861 1868
    if (local){
1862 1869

  
1863
        String pref = getStringValue(PreferencePredicate.AvailableDistributionAreaVocabularies.getKey());
1870
        String pref = getStringValue(PreferencePredicate.AvailableDistributionAreaVocabularies.getKey(), local);
1864 1871
        return pref;
1865 1872
    }
1866 1873
    else{

Also available in: Unified diff