Project

General

Profile

« Previous | Next » 

Revision 0bf51b59

Added by Katja Luther about 5 years ago

ref #8058: fix common name language preference and save emtpy string if all terms are selected

View differences:

eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/menu/CommonNameLanguagePreferences.java
104 104
        String[] prefArray = prefValue.split(";");
105 105
        List<UUID> uuids = new ArrayList();
106 106
        for (String uuid: prefArray){
107
            uuids.add(UUID.fromString(uuid));
107
            if(!StringUtils.isBlank(uuid)){
108
                uuids.add(UUID.fromString(uuid));
109
            }
108 110
        }
109 111
        List<Language> preferedTerms = CdmStore.getTermManager().getTerms(uuids, Language.class);
110 112

  
......
127 129

  
128 130
        if(tableViewer!=null){
129 131
            List<UUID> preferredTermUuids = new ArrayList<UUID>();
130
            for (Object element : tableViewer.getCheckedElements()){
131
                preferredTermUuids.add(((Language)element).getUuid());
132
            if (tableViewer.getCheckedElements().length == tableViewer.getTable().getItemCount()){
133
                PreferencesUtil.setStringValue(PreferencePredicate.CommonNameLanguages.getKey(), "");
134
            }else{
135
                for (Object element : tableViewer.getCheckedElements()){
136
                    preferredTermUuids.add(((Language)element).getUuid());
137
                }
138

  
139
                String preferredLanguagesString = StringUtils.join(preferredTermUuids, ";");
140
                PreferencesUtil.setStringValue(PreferencePredicate.CommonNameLanguages.getKey(), preferredLanguagesString);
132 141
            }
133 142

  
134
            String preferredLanguagesString = StringUtils.join(preferredTermUuids, ";");
135
            PreferencesUtil.setStringValue(PreferencePredicate.CommonNameLanguages.getKey(), preferredLanguagesString);
136

  
137

  
138 143
            PreferencesUtil.firePreferencesChanged(this.getClass());
139 144
        }
140 145

  
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/store/TermManager.java
177 177

  
178 178
        List<T> filteredTerms = new ArrayList<T>();
179 179
        List<T> terms = TermStore.getTerms(clazz);
180
        if (uuidList.isEmpty()){
181
            return terms;
182
        }
180 183
        for (T term : terms){
181 184
            if(uuidList.contains(term.getUuid())){
182 185
                filteredTerms.add(term);

Also available in: Unified diff