Project

General

Profile

Download (1.17 KB) Statistics
| Branch: | Tag: | Revision:
1
package eu.etaxonomy.cdm.vaadin.container;
2

    
3
import java.util.ArrayList;
4
import java.util.Collections;
5
import java.util.Comparator;
6
import java.util.List;
7

    
8
import com.vaadin.data.util.BeanItemContainer;
9

    
10
import eu.etaxonomy.cdm.model.common.TermVocabulary;
11
import eu.etaxonomy.cdm.model.location.NamedArea;
12
import eu.etaxonomy.cdm.vaadin.util.TermCacher;
13

    
14
public class NamedAreaContainer extends BeanItemContainer<NamedArea> {
15

    
16
    private static final long serialVersionUID = 9150424479597481361L;
17

    
18
	public NamedAreaContainer(TermVocabulary<NamedArea> vocabulary)
19
	        throws IllegalArgumentException {
20
	    super(NamedArea.class);
21
	    List<NamedArea> namedAreas = new ArrayList<>(vocabulary.getTerms());
22
	    Collections.sort(namedAreas, new AlphabeticallyAscendingNamedAreaComparator());
23
	    TermCacher termCacher = TermCacher.getInstance();
24
	    for (NamedArea namedArea: namedAreas) {
25
	        termCacher.addNamedArea(namedArea);
26
	        addBean(namedArea);
27
	    }
28
	}
29

    
30
	private class AlphabeticallyAscendingNamedAreaComparator implements Comparator<NamedArea>{
31

    
32
        @Override
33
        public int compare(NamedArea o1, NamedArea o2) {
34
            return o2.compareTo(o1);
35
        }
36

    
37
	}
38

    
39
}
(5-5/7)