public class MailStatus implements Comparable
1:
2: package mail;
3:
4: /*
5: * An enumeration type
6: */
7: public class MailStatus implements Comparable {
8:
9: public static final MailStatus NEW = new MailStatus("New");
10: public static final MailStatus READ = new MailStatus("Read");
11: public static final MailStatus REPLIED = new MailStatus("Replied");
12: public static final MailStatus FORWARDED = new MailStatus("Forwarded");
13:
14: public String toString() {
15: return name;
16: }
17:
18: public int getOrdinal() {
19: return ordinal;
20: }
21:
22: public int compareTo(Object o) {
23: if (o instanceof MailStatus) {
24: return ordinal - ((MailStatus) o).getOrdinal();
25: }
26: return 0;
27: }
28:
29: private MailStatus(String name) {
30: this.name = name;
31: }
32:
33: private static int nextOrdinal = 0;
34: private final String name;
35: private final int ordinal = nextOrdinal++;
36:
37: }