Revision 8a925e42
Added by Katja Luther over 4 years ago
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/CdmPreferenceCache.java | ||
---|---|---|
25 | 25 |
import eu.etaxonomy.cdm.model.metadata.PreferenceSubject; |
26 | 26 |
import eu.etaxonomy.cdm.model.term.DefinedTermBase; |
27 | 27 |
import eu.etaxonomy.cdm.model.term.TermType; |
28 |
import eu.etaxonomy.cdm.persistence.dto.TermDto; |
|
28 | 29 |
import eu.etaxonomy.taxeditor.store.CdmStore; |
29 | 30 |
|
30 | 31 |
/** |
... | ... | |
145 | 146 |
} |
146 | 147 |
|
147 | 148 |
List<DefinedTermBase> definedTermBases = termService.load(uuidList, null); |
148 |
CdmStore.getTermManager().setPreferredTermsByType(definedTermBases, TermType.PresenceAbsenceTerm); |
|
149 |
List<TermDto> dtos = new ArrayList<>(); |
|
150 |
for (DefinedTermBase term: definedTermBases){ |
|
151 |
dtos.add(TermDto.fromTerm(term)); |
|
152 |
} |
|
153 |
CdmStore.getTermManager().setPreferredTermsByType(dtos, TermType.PresenceAbsenceTerm); |
|
149 | 154 |
} |
150 | 155 |
} |
151 | 156 |
key = CdmPreference.NewKey(PreferenceSubject.NewTaxEditorInstance(), PreferencePredicate.AvailableRanks); |
... | ... | |
167 | 172 |
} |
168 | 173 |
|
169 | 174 |
List<DefinedTermBase> definedTermBases = termService.load(uuidList, null); |
170 |
CdmStore.getTermManager().setPreferredTermsByType(definedTermBases, TermType.Rank); |
|
175 |
List<TermDto> dtos = new ArrayList(); |
|
176 |
for (DefinedTermBase term: definedTermBases){ |
|
177 |
dtos.add(TermDto.fromTerm(term)); |
|
178 |
} |
|
179 |
CdmStore.getTermManager().setPreferredTermsByType(dtos, TermType.Rank); |
|
171 | 180 |
} |
172 | 181 |
} |
173 | 182 |
|
... | ... | |
190 | 199 |
} |
191 | 200 |
|
192 | 201 |
List<DefinedTermBase> definedTermBases = termService.load(uuidList, null); |
193 |
CdmStore.getTermManager().setPreferredTermsByType(definedTermBases, TermType.NomenclaturalStatusType); |
|
202 |
List<TermDto> dtos = new ArrayList(); |
|
203 |
for (DefinedTermBase term: definedTermBases){ |
|
204 |
dtos.add(TermDto.fromTerm(term)); |
|
205 |
} |
|
206 |
CdmStore.getTermManager().setPreferredTermsByType(dtos, TermType.NomenclaturalStatusType); |
|
194 | 207 |
} |
195 | 208 |
} |
196 | 209 |
} |
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/GeneralTermPreference.java | ||
---|---|---|
322 | 322 |
}else if (text.equals(LocalOrDefaultEnum.Local.getLabel())){ |
323 | 323 |
PreferencesUtil.setBooleanValue(PreferencesUtil.createOverridePreferenceString(predicate.getKey()), true); |
324 | 324 |
} |
325 |
if (vocabularies.size() == 1){
|
|
325 |
if (type == null){
|
|
326 | 326 |
CdmStore.getTermManager().setPreferredTermsByDto(preferredTermDtos, vocabularies.get(0)); |
327 | 327 |
}else{ |
328 |
CdmStore.getTermManager().setPreferredTermsByType(preferredTerms, type); |
|
328 |
CdmStore.getTermManager().setPreferredTermsByType(preferredTermDtos, type);
|
|
329 | 329 |
} |
330 | 330 |
PreferencesUtil.firePreferencesChanged(this.getClass()); |
331 | 331 |
return true; |
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/RankPreference.java | ||
---|---|---|
14 | 14 |
|
15 | 15 |
import org.apache.commons.lang.StringUtils; |
16 | 16 |
|
17 |
import eu.etaxonomy.cdm.api.service.ITermService; |
|
18 | 17 |
import eu.etaxonomy.cdm.api.service.IVocabularyService; |
19 | 18 |
import eu.etaxonomy.cdm.model.metadata.PreferencePredicate; |
20 |
import eu.etaxonomy.cdm.model.term.DefinedTermBase; |
|
21 | 19 |
import eu.etaxonomy.cdm.model.term.TermType; |
22 | 20 |
import eu.etaxonomy.cdm.persistence.dto.TermDto; |
23 | 21 |
import eu.etaxonomy.cdm.persistence.dto.TermVocabularyDto; |
... | ... | |
68 | 66 |
} |
69 | 67 |
Object[] checkedElements = treeComposite.getViewer().getCheckedElements(); |
70 | 68 |
List<UUID> listUIIDChecked = new ArrayList<>(); |
71 |
List<DefinedTermBase> preferredTerms = new ArrayList<>();
|
|
69 |
List<TermDto> preferredTerms = new ArrayList<>();
|
|
72 | 70 |
for (Object o : checkedElements) { |
73 | 71 |
if(o instanceof TermDto){ |
74 | 72 |
TermDto termDto = (TermDto) o; |
75 | 73 |
listUIIDChecked.add(termDto.getUuid()); |
76 |
preferredTerms.add(CdmStore.getService(ITermService.class).load(termDto.getUuid()));
|
|
74 |
preferredTerms.add(termDto);
|
|
77 | 75 |
} |
78 | 76 |
} |
79 | 77 |
String saveCheckedElements = StringUtils.join(listUIIDChecked, ";"); //$NON-NLS-1$ |
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/menu/SpecimenTypeDesignationStatusMenuPreferences.java | ||
---|---|---|
15 | 15 |
|
16 | 16 |
import org.apache.commons.lang.StringUtils; |
17 | 17 |
|
18 |
import eu.etaxonomy.cdm.api.service.ITermService; |
|
19 | 18 |
import eu.etaxonomy.cdm.model.metadata.PreferencePredicate; |
20 |
import eu.etaxonomy.cdm.model.term.DefinedTermBase; |
|
21 | 19 |
import eu.etaxonomy.cdm.model.term.TermType; |
22 | 20 |
import eu.etaxonomy.cdm.persistence.dto.TermDto; |
23 | 21 |
import eu.etaxonomy.cdm.persistence.dto.TermVocabularyDto; |
... | ... | |
64 | 62 |
} |
65 | 63 |
Object[] checkedElements = treeComposite.getViewer().getCheckedElements(); |
66 | 64 |
List<UUID> listUIIDChecked = new ArrayList<>(); |
67 |
List<DefinedTermBase> preferredTerms = new ArrayList<>();
|
|
65 |
List<TermDto> preferredTerms = new ArrayList<>();
|
|
68 | 66 |
for (Object o : checkedElements) { |
69 | 67 |
if(o instanceof TermDto){ |
70 | 68 |
TermDto termDto = (TermDto) o; |
71 | 69 |
listUIIDChecked.add(termDto.getUuid()); |
72 |
preferredTerms.add(CdmStore.getService(ITermService.class).load(termDto.getUuid()));
|
|
70 |
preferredTerms.add(termDto);
|
|
73 | 71 |
} |
74 | 72 |
} |
75 | 73 |
String saveCheckedElements = StringUtils.join(listUIIDChecked, ";"); //$NON-NLS-1$ |
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/store/TermManager.java | ||
---|---|---|
265 | 265 |
* @param initialTerms a {@link java.util.List} object. |
266 | 266 |
* @param <T> a T object. |
267 | 267 |
*/ |
268 |
public <T extends DefinedTermBase> void setPreferredTermsByType(Collection<T> preferredTerms, TermType type){ |
|
269 |
|
|
270 |
|
|
271 |
|
|
272 |
List<DefinedTermBase> oldValues = getPreferredTerms(type); |
|
273 |
for (DefinedTermBase term: oldValues){ |
|
274 |
PreferencesUtil.setBooleanValue(getPrefName(term), false); |
|
268 |
public void setPreferredTermsByType(Collection<TermDto> preferredTerms, TermType type){ |
|
269 |
List<?> oldValues = getPreferredTerms(type); |
|
270 |
for (Object term: oldValues){ |
|
271 |
if (term instanceof TermDto){ |
|
272 |
PreferencesUtil.setBooleanValue(getPrefNameByDto((TermDto)term), false); |
|
273 |
}else{ |
|
274 |
PreferencesUtil.setBooleanValue(getPrefName((DefinedTermBase)term), false); |
|
275 |
} |
|
275 | 276 |
} |
276 |
for(TermBase term : preferredTerms){
|
|
277 |
PreferencesUtil.setBooleanValue(getPrefName(term), true); |
|
277 |
for(TermDto term : preferredTerms){
|
|
278 |
PreferencesUtil.setBooleanValue(getPrefNameByDto(term), true);
|
|
278 | 279 |
|
279 | 280 |
} |
280 | 281 |
|
281 | 282 |
clearTermMapForTermType(type); |
282 |
List<DefinedTermBase> list = new ArrayList<>(preferredTerms);
|
|
283 |
List<TermDto> list = new ArrayList<>(preferredTerms);
|
|
283 | 284 |
cachedTermMap.put(type.getUuid(), list); |
284 | 285 |
|
285 | 286 |
|
Also available in: Unified diff
ref #8389: adapt term preference handling