Revision aab82329
Added by Patrick Plitzner over 7 years ago
src/main/java/eu/etaxonomy/cdm/vaadin/view/dbstatus/DistributionTableView.java | ||
---|---|---|
29 | 29 |
import eu.etaxonomy.cdm.api.conversation.ConversationHolder; |
30 | 30 |
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper; |
31 | 31 |
import eu.etaxonomy.cdm.model.description.DescriptionElementBase; |
32 |
import eu.etaxonomy.cdm.model.description.PresenceAbsenceTerm; |
|
33 | 32 |
import eu.etaxonomy.cdm.model.taxon.Taxon; |
34 | 33 |
import eu.etaxonomy.cdm.vaadin.component.DetailWindow; |
35 | 34 |
import eu.etaxonomy.cdm.vaadin.component.HorizontalToolbar; |
36 | 35 |
import eu.etaxonomy.cdm.vaadin.container.CdmSQLContainer; |
36 |
import eu.etaxonomy.cdm.vaadin.container.PresenceAbsenceTermContainer; |
|
37 | 37 |
import eu.etaxonomy.cdm.vaadin.util.CdmQueryFactory; |
38 | 38 |
|
39 |
public class DistributionTableView<E> extends CustomComponent implements IDistributionTableComponent, View{
|
|
39 |
public class DistributionTableView extends CustomComponent implements IDistributionTableComponent, View{ |
|
40 | 40 |
|
41 | 41 |
private final class AreaColumnGenerator implements ColumnGenerator { |
42 | 42 |
private static final long serialVersionUID = 1L; |
43 | 43 |
|
44 | 44 |
@Override |
45 | 45 |
public Object generateCell(Table source, Object itemId, Object columnId) { |
46 |
Property containerProperty = source.getContainerProperty(itemId, columnId); |
|
46 |
Property<?> containerProperty = source.getContainerProperty(itemId, columnId);
|
|
47 | 47 |
Object value = null; |
48 | 48 |
if(containerProperty != null){ |
49 | 49 |
value = containerProperty.getValue(); |
50 | 50 |
} |
51 | 51 |
final UUID uuid = UUID.fromString(table.getItem(itemId).getItemProperty("uuid").getValue().toString()); |
52 |
final ComboBox box = new ComboBox("Occurrence Status: ", listener.getPresenceAbsenceContainer());
|
|
52 |
final ComboBox box = new ComboBox("Occurrence Status: ", PresenceAbsenceTermContainer.getInstance());
|
|
53 | 53 |
final String area = columnId.toString(); |
54 | 54 |
box.setImmediate(true); |
55 | 55 |
box.setBuffered(true); |
56 |
box.setValue(compareObjectToPAT(value));
|
|
56 |
box.setValue(PresenceAbsenceTermContainer.titleToTermMap.get(value));
|
|
57 | 57 |
box.addValueChangeListener(new ValueChangeListener() { |
58 |
@Override |
|
58 |
private static final long serialVersionUID = 6221534597911674067L; |
|
59 |
|
|
60 |
@Override |
|
59 | 61 |
public void valueChange(ValueChangeEvent event) { |
60 | 62 |
Taxon taxon = HibernateProxyHelper.deproxy(listener.getTaxonService().load(uuid), Taxon.class); |
61 | 63 |
listener.updateDistributionField(area, box.getValue(), taxon); |
... | ... | |
158 | 160 |
detailButton.setCaption("Detail View"); |
159 | 161 |
detailButton.addClickListener(new ClickListener() { |
160 | 162 |
|
163 |
private static final long serialVersionUID = 1479133195403139547L; |
|
164 |
|
|
161 | 165 |
@Override |
162 | 166 |
public void buttonClick(ClickEvent event) { |
163 | 167 |
try{ |
... | ... | |
177 | 181 |
Button settingsButton = toolbar.getSettingsButton(); |
178 | 182 |
settingsButton.addClickListener(new ClickListener() { |
179 | 183 |
|
180 |
@Override |
|
184 |
private static final long serialVersionUID = 3834048719431837966L; |
|
185 |
|
|
186 |
@Override |
|
181 | 187 |
public void buttonClick(ClickEvent event) { |
182 | 188 |
SettingsConfigWindow cw = new SettingsConfigWindow(); |
183 | 189 |
Window window = cw.createWindow(); |
... | ... | |
205 | 211 |
|
206 | 212 |
} |
207 | 213 |
|
208 |
private PresenceAbsenceTerm compareObjectToPAT(Object object){ |
|
209 |
List<PresenceAbsenceTerm> presenceAbsenceTerms = listener.getPresenceAbsenceTerms(); |
|
210 |
for(PresenceAbsenceTerm term:presenceAbsenceTerms){ |
|
211 |
if(term.getTitleCache().equals(object)){ |
|
212 |
return term; |
|
213 |
} |
|
214 |
} |
|
215 |
return null; |
|
216 |
} |
|
217 |
|
|
218 | 214 |
} |
Also available in: Unified diff
ref #5458 Major performance increase