Revision 3b17b230
Added by Andreas Kohlbecker about 6 years ago
src/main/java/eu/etaxonomy/cdm/vaadin/view/name/NameTypeDesignationPresenter.java | ||
---|---|---|
12 | 12 |
import java.util.HashSet; |
13 | 13 |
import java.util.List; |
14 | 14 |
|
15 |
import org.springframework.beans.factory.annotation.Autowired; |
|
16 |
|
|
15 | 17 |
import eu.etaxonomy.cdm.api.service.IService; |
16 | 18 |
import eu.etaxonomy.cdm.model.name.NameTypeDesignation; |
17 | 19 |
import eu.etaxonomy.cdm.model.name.NameTypeDesignationStatus; |
18 | 20 |
import eu.etaxonomy.cdm.model.name.TaxonName; |
19 | 21 |
import eu.etaxonomy.cdm.model.reference.Reference; |
20 | 22 |
import eu.etaxonomy.cdm.service.CdmFilterablePagingProvider; |
23 |
import eu.etaxonomy.cdm.service.IRegistrationWorkingSetService; |
|
21 | 24 |
import eu.etaxonomy.cdm.vaadin.component.CdmBeanItemContainerFactory; |
22 | 25 |
import eu.etaxonomy.cdm.vaadin.event.ToOneRelatedEntityButtonUpdater; |
23 | 26 |
import eu.etaxonomy.cdm.vaadin.event.ToOneRelatedEntityReloader; |
24 | 27 |
import eu.etaxonomy.cdm.vaadin.security.UserHelper; |
25 | 28 |
import eu.etaxonomy.cdm.vaadin.util.CdmTitleCacheCaptionGenerator; |
29 |
import eu.etaxonomy.cdm.vaadin.util.converter.TypeDesignationSetManager.TypeDesignationWorkingSet; |
|
30 |
import eu.etaxonomy.cdm.vaadin.view.registration.RegistrationDTO; |
|
26 | 31 |
import eu.etaxonomy.vaadin.mvp.AbstractCdmEditorPresenter; |
27 | 32 |
|
28 | 33 |
/** |
... | ... | |
33 | 38 |
public class NameTypeDesignationPresenter |
34 | 39 |
extends AbstractCdmEditorPresenter<NameTypeDesignation, NameTypeDesignationEditorView> { |
35 | 40 |
|
41 |
@Autowired |
|
42 |
private IRegistrationWorkingSetService registrationWorkingSetService; |
|
43 |
|
|
36 | 44 |
HashSet<TaxonName> typifiedNamesAsLoaded; |
37 | 45 |
|
46 |
|
|
47 |
/** |
|
48 |
* {@inheritDoc} |
|
49 |
*/ |
|
50 |
@Override |
|
51 |
protected NameTypeDesignation loadBeanById(Object identifier) { |
|
52 |
if(identifier instanceof Integer || identifier == null){ |
|
53 |
return super.loadBeanById(identifier); |
|
54 |
} else { |
|
55 |
TypeDesignationWorkingsetEditorIdSet idset = (TypeDesignationWorkingsetEditorIdSet)identifier; |
|
56 |
RegistrationDTO regDTO = registrationWorkingSetService.loadDtoById(idset.registrationId); |
|
57 |
// find the working set |
|
58 |
TypeDesignationWorkingSet typeDesignationWorkingSet = regDTO.getTypeDesignationWorkingSet(idset.workingsetId); |
|
59 |
int nameTypeDesignationId = typeDesignationWorkingSet.getBaseEntityReference().getId(); |
|
60 |
// NameTypeDesignation bameTypeDesignation = regDTO.getNameTypeDesignation(typeDesignationWorkingSet.getBaseEntityReference()); |
|
61 |
if(!typeDesignationWorkingSet.getBaseEntityReference().getType().equals(NameTypeDesignation.class)){ |
|
62 |
throw new RuntimeException("TypeDesignationWorkingsetEditorIdSet references not a NameTypeDesignation"); |
|
63 |
} |
|
64 |
return super.loadBeanById(nameTypeDesignationId); |
|
65 |
} |
|
66 |
} |
|
67 |
|
|
68 |
|
|
38 | 69 |
/** |
39 | 70 |
* {@inheritDoc} |
40 | 71 |
*/ |
Also available in: Unified diff
ref #6740 service methods to load NameTypeDesignations for Registrations