Revision 8822b122
Added by Andreas Kohlbecker about 3 years ago
src/main/java/eu/etaxonomy/cdm/service/CdmBeanItemContainerFactory.java | ||
---|---|---|
11 | 11 |
import java.util.ArrayList; |
12 | 12 |
import java.util.Arrays; |
13 | 13 |
import java.util.List; |
14 |
import java.util.Optional; |
|
14 | 15 |
import java.util.UUID; |
15 | 16 |
import java.util.stream.Collectors; |
16 | 17 |
|
... | ... | |
24 | 25 |
import eu.etaxonomy.cdm.api.application.CdmRepository; |
25 | 26 |
import eu.etaxonomy.cdm.api.service.pager.Pager; |
26 | 27 |
import eu.etaxonomy.cdm.model.common.CdmBase; |
28 |
import eu.etaxonomy.cdm.model.name.TypeDesignationStatusBase; |
|
27 | 29 |
import eu.etaxonomy.cdm.model.term.DefinedTermBase; |
28 | 30 |
import eu.etaxonomy.cdm.model.term.IEnumTerm; |
29 | 31 |
import eu.etaxonomy.cdm.model.term.TermBase; |
... | ... | |
102 | 104 |
return termItemContainer; |
103 | 105 |
} |
104 | 106 |
|
107 |
public BeanItemContainer<TypeDesignationStatusBase> buildTypeDesignationStatusBaseItemContainer(List<UUID> termsUuids, |
|
108 |
Optional<Boolean> withHasDesignationSource) { |
|
109 |
clearSession(); |
|
110 |
List<DefinedTermBase> terms = repo.getTermService().load(termsUuids, INIT_STRATEGY); |
|
111 |
BeanItemContainer<TypeDesignationStatusBase> termItemContainer = new BeanItemContainer<>(DefinedTermBase.class); |
|
112 |
termItemContainer.addAll(terms.stream() |
|
113 |
.filter(t -> t instanceof TypeDesignationStatusBase) |
|
114 |
.map(t -> (TypeDesignationStatusBase)t) |
|
115 |
.filter(tsb -> |
|
116 |
!withHasDesignationSource.isPresent() |
|
117 |
|| withHasDesignationSource.get().equals(false) |
|
118 |
|| tsb.hasDesignationSource() == true |
|
119 |
) |
|
120 |
.collect(Collectors.toList()) |
|
121 |
); |
|
122 |
return termItemContainer; |
|
123 |
} |
|
124 |
|
|
105 | 125 |
@Transactional(readOnly=true) |
106 | 126 |
public <T extends CdmBase> BeanItemContainer<T> buildBeanItemContainer(Class<T> type, List<OrderHint> orderHints) { |
107 | 127 |
|
Also available in: Unified diff
ref #9290 limiting available designation status types for nom acts without a name - SpecimenTypeDesignationEditor