Statistics
| Revision:

gvsig-tools / org.gvsig.tools / library / trunk / org.gvsig.tools / org.gvsig.tools.lib / src / main / java / org / gvsig / tools / util / LabeledValueImpl.java @ 1980

History | View | Annotate | Download (1.01 KB)

1
package org.gvsig.tools.util;
2

    
3
public class LabeledValueImpl<T> implements LabeledValue<T> , Comparable {
4

    
5
    protected String label;
6
    protected T value;
7

    
8
    public LabeledValueImpl(String label, T value) {
9
        this.label = label;
10
        this.value = value;
11
    }
12

    
13
    @Override
14
    public String toString() {
15
        return this.getLabel();
16
    }
17

    
18
    @Override
19
    public T getValue() {
20
        return this.value;
21
    }
22
    
23
    @Override
24
    public String getLabel() {
25
        return this.label;
26
    }
27

    
28
    @Override
29
    @SuppressWarnings("StringEquality")
30
    public int compareTo(Object other) {
31
        String otherLabel = null;
32
        if( other!=null ) {
33
            otherLabel = other.toString();
34
        }
35
        String thisLabel = this.getLabel();
36
        if (thisLabel== otherLabel) {
37
            return 0;
38
        } else if (thisLabel== null) {
39
            return -1;
40
        } else if (otherLabel == null) {
41
            return 1;
42
        }
43
        return thisLabel.compareTo(otherLabel);        
44
    }
45
    
46
}