Project

General

Profile

Download (2.96 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
* Copyright (C) 2019 EDIT
3
* European Distributed Institute of Taxonomy
4
* http://www.e-taxonomy.eu
5
*
6
* The contents of this file are subject to the Mozilla Public License Version 1.1
7
* See LICENSE.TXT at the top of this package for the full license terms.
8
*/
9
package eu.etaxonomy.taxeditor.databaseAdmin.preferencePage;
10

    
11
import eu.etaxonomy.cdm.model.metadata.CdmPreference;
12
import eu.etaxonomy.cdm.model.metadata.PreferencePredicate;
13
import eu.etaxonomy.taxeditor.preference.CdmPreferenceCache;
14
import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
15
import eu.etaxonomy.taxeditor.preference.SupplementalDataPreferences;
16

    
17
/**
18
 * @author k.luther
19
 * @since 28.06.2019
20
 *
21
 */
22
public class SupplementalDataAdminPreference extends SupplementalDataPreferences {
23

    
24
    CdmPreference prefShowIdNamespace;
25
    CdmPreference prefShowNamespace;
26

    
27

    
28
    @Override
29
    public boolean performOk() {
30
        if (!isApply()){
31
            return true;
32
        }
33
        boolean setToDefault = false;
34
        if (isShowIDNamspace == null){
35
           setToDefault = true;
36
           isShowIDNamspace = true;
37
        }
38
        CdmPreference pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowIdInSource, Boolean.toString(this.isShowIDNamspace));
39
        pref.setAllowOverride(isAllowOverrideShowIDNamspace);
40
        PreferencesUtil.setPreferencesToDB(pref, setToDefault);
41

    
42
        if (isShowIDSource == null){
43
            setToDefault = true;
44
            isShowIDSource = true;
45
         }
46
        pref = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowNamespaceInSource, Boolean.toString(this.isShowIDSource));
47
        pref.setAllowOverride(isAllowOverrideShowIDSource);
48
        PreferencesUtil.setPreferencesToDB(pref, setToDefault);
49

    
50
        PreferencesUtil.updateDBPreferences();
51

    
52

    
53
       return true;
54
   }
55
    @Override
56
    protected void getValues(){
57
        isAdminPreference = true;
58

    
59
        CdmPreferenceCache cache = CdmPreferenceCache.instance();
60

    
61
        prefShowIdNamespace = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.ShowIdInSource);
62
        if (prefShowIdNamespace == null){
63
            prefShowIdNamespace = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowIdInSource, null);
64
            prefShowIdNamespace.setAllowOverride(true);
65
        }
66
        isShowIDNamspace = prefShowIdNamespace.getValue()!= null? Boolean.parseBoolean(prefShowIdNamespace.getValue()): null;
67
        isAllowOverrideShowIDNamspace = prefShowIdNamespace.isAllowOverride();
68

    
69

    
70
        prefShowNamespace = PreferencesUtil.getPreferenceFromDB(PreferencePredicate.ShowNamespaceInSource);
71
        if (prefShowNamespace == null){
72
            prefShowNamespace = CdmPreference.NewTaxEditorInstance(PreferencePredicate.ShowNamespaceInSource, null);
73
            prefShowNamespace.setAllowOverride(true);
74
        }
75
        isShowIDSource = prefShowNamespace.getValue()!= null? Boolean.parseBoolean(prefShowNamespace.getValue()): null;
76
        isAllowOverrideShowIDSource = prefShowNamespace.isAllowOverride();
77
    }
78
}
(16-16/17)