Project

General

Profile

« Previous | Next » 

Revision cc1302bd

Added by Katja Luther almost 5 years ago

ref #8045: check whether all db preferences are deleted from DB if value is default value

View differences:

eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/preferencePage/NomenclaturalCodePreferences.java
45 45
 */
46 46
public class NomenclaturalCodePreferences extends CdmPreferencePage implements IE4AdminPreferencePage{
47 47

  
48
    String actualCode = null;
49
    Map<String, String>  labelAndValues;
50
    Map<String, Integer> keyAndIndex;
48
    NomenclaturalCode actualCode = null;
49
    Map<NomenclaturalCode, String>  labelAndValues;
50
    Map<NomenclaturalCode, Integer> keyAndIndex;
51 51
    Combo nomenclaturalCode;
52 52
    Button allowOverrideButton;
53 53
    boolean allowOverride;
......
62 62
            PrefKey key = CdmPreference.NewKey(PreferenceSubject.NewDatabaseInstance(), PreferencePredicate.NomenclaturalCode);
63 63
            CdmPreference pref = service.find(key);
64 64
            if (pref != null){
65
                actualCode = pref.getValue();
65
                actualCode = NomenclaturalCode.fromString(pref.getValue());
66 66
                allowOverride = pref.isAllowOverride();
67 67
            }else{
68
                actualCode = PreferencesUtil.getPreferenceKey(PreferencesUtil.getPreferredNomenclaturalCode());
68
                actualCode = NomenclaturalCode.fromString(PreferencePredicate.NomenclaturalCode.getDefaultValue().toString());
69 69
                allowOverride = true;
70 70
            }
71 71

  
......
85 85
        getLabelAndValues();
86 86
        keyAndIndex = new HashMap<>();
87 87
        Integer index = 0;
88
        for (String key: labelAndValues.keySet()) {
88
        for (NomenclaturalCode key: labelAndValues.keySet()) {
89 89
            nomenclaturalCode.add(labelAndValues.get(key));
90 90
            keyAndIndex.put(key, index);
91 91
            index++;
......
100 100
            public void widgetSelected(SelectionEvent evt) {
101 101
                setApply(true);
102 102
                String name = nomenclaturalCode.getText();
103
                for (Entry<String, String> label:labelAndValues.entrySet()){
103
                for (Entry<NomenclaturalCode, String> label:labelAndValues.entrySet()){
104 104
                    if (label.getValue().equals(name)){
105 105
                        actualCode = label.getKey();
106 106
                    }
......
125 125
	/**
126 126
	 * @return
127 127
	 */
128
	private Map<String, String> getLabelAndValues() {
128
	private Map<NomenclaturalCode, String> getLabelAndValues() {
129 129
		List<NomenclaturalCode> supportedCodes = NomenclaturalCodeHelper
130 130
				.getSupportedCodes();
131 131
		labelAndValues = new HashMap<>();
132 132
		for (int i = 0; i < supportedCodes.size(); i++) {
133
			labelAndValues.put(PreferencesUtil.getPreferenceKey(supportedCodes.get(i)), NomenclaturalCodeHelper
133
			labelAndValues.put(supportedCodes.get(i), NomenclaturalCodeHelper
134 134
                    .getDescription(supportedCodes.get(i))) ;
135 135

  
136 136
		}
......
156 156
	@Override
157 157
	 public boolean performOk() {
158 158
	    if (actualCode != null){
159
	        CdmPreference pref = CdmPreference.NewDatabaseInstance(PreferencePredicate.NomenclaturalCode, actualCode);
159
	        CdmPreference pref = CdmPreference.NewDatabaseInstance(PreferencePredicate.NomenclaturalCode, actualCode.toString());
160 160
	        pref.setAllowOverride(allowOverride);
161 161
	        PreferencesUtil.setPreferredNomenclaturalCode(pref);
162 162
	    }
......
165 165

  
166 166
	@Override
167 167
	protected void performDefaults() {
168
	    actualCode = PreferencePredicate.NomenclaturalCode.getDefaultValue().toString();
168
	    actualCode = (NomenclaturalCode)PreferencePredicate.NomenclaturalCode.getDefaultValue();
169 169
	    allowOverride = true;
170 170
	    Integer index = keyAndIndex.get(actualCode);
171 171
        if(index!=null){

Also available in: Unified diff