Revision 6d636c9e
Added by Andreas Kohlbecker over 5 years ago
src/main/java/eu/etaxonomy/cdm/vaadin/view/reference/ReferenceEditorPresenter.java | ||
---|---|---|
37 | 37 |
import eu.etaxonomy.cdm.vaadin.event.ToOneRelatedEntityReloader; |
38 | 38 |
import eu.etaxonomy.vaadin.component.ToOneRelatedEntityField; |
39 | 39 |
import eu.etaxonomy.vaadin.mvp.AbstractCdmEditorPresenter; |
40 |
import eu.etaxonomy.vaadin.mvp.BeanInstantiator; |
|
40 | 41 |
|
41 | 42 |
/** |
42 | 43 |
* @author a.kohlbecker |
... | ... | |
89 | 90 |
AnnotationType.EDITORIAL().getUuid(), AnnotationType.TECHNICAL().getUuid())); |
90 | 91 |
} |
91 | 92 |
|
93 |
|
|
94 |
protected static BeanInstantiator<Reference> defaultBeanInstantiator = new BeanInstantiator<Reference>() { |
|
95 |
|
|
96 |
@Override |
|
97 |
public Reference createNewBean() { |
|
98 |
return ReferenceFactory.newGeneric(); |
|
99 |
} |
|
100 |
}; |
|
101 |
|
|
102 |
|
|
103 |
@Override |
|
104 |
protected BeanInstantiator<Reference> defaultBeanInstantiator(){ |
|
105 |
return defaultBeanInstantiator; |
|
106 |
} |
|
107 |
|
|
108 |
|
|
92 | 109 |
/** |
93 | 110 |
* {@inheritDoc} |
94 | 111 |
*/ |
... | ... | |
106 | 123 |
if(identifier != null){ |
107 | 124 |
reference = getRepo().getReferenceService().load(identifier, initStrategy); |
108 | 125 |
} else { |
109 |
reference = createNewReference();
|
|
126 |
reference = createNewBean();
|
|
110 | 127 |
} |
111 | 128 |
return reference; |
112 | 129 |
} |
113 | 130 |
|
114 |
/** |
|
115 |
* TODO this should better go into {@link AbstractCdmEditorPresenter} |
|
116 |
* |
|
117 |
* @return |
|
118 |
*/ |
|
119 |
protected Reference createNewReference() { |
|
120 |
if(this.beanInstantiator != null){ |
|
121 |
return beanInstantiator.createNewBean(); |
|
122 |
} |
|
123 |
return ReferenceFactory.newGeneric(); |
|
124 |
} |
|
125 | 131 |
|
126 | 132 |
/** |
127 | 133 |
* {@inheritDoc} |
Also available in: Unified diff
ref #7648 generalizing bean instantiation in cdm presenters