public class HandlerOrder implements Comparable { private final int priority; private HandlerOrder(int priority) { this.priority = priority; } public int compareTo(Object o) { if (o instanceof HandlerOrder) { HandlerOrder order = (HandlerOrder)o; if (this.priority < order.priority) return -1; else if (this.priority > order.priority) return 1; else return 0; } else throw new ClassCastException(); } public static final HandlerOrder EARLY = new HandlerOrder(0); public static final HandlerOrder NO_PREFERENCE = new HandlerOrder(1); public static final HandlerOrder LATE = new HandlerOrder(2); }