Package io.microsphere.util
Class PriorityComparator
- java.lang.Object
-
- io.microsphere.util.PriorityComparator
-
- All Implemented Interfaces:
java.util.Comparator<java.lang.Object>
public class PriorityComparator extends java.lang.Object implements java.util.Comparator<java.lang.Object>
AComparator
implementation that sorts objects based on the value of thePriority
annotation.If an object does not have the
Priority
annotation, it is treated as having a default priority value of -1. If both objects lack the annotation, they are considered equal in priority.Example Usage
List<Object> list = new ArrayList<>(); list.add(new HighPriorityService()); list.add(new LowPriorityService()); Collections.sort(list, PriorityComparator.INSTANCE);
Note: The comparison is consistent with equals only if the compared objects are of the same class or both lack the Priority annotation.
- Since:
- 1.0.0
- Author:
- Mercy
- See Also:
Priority
-
-
Field Summary
Fields Modifier and Type Field Description static PriorityComparator
INSTANCE
Singleton instance ofPriorityComparator
-
Constructor Summary
Constructors Constructor Description PriorityComparator()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static int
compare(java.lang.Class<?> type1, java.lang.Class<?> type2)
int
compare(java.lang.Object o1, java.lang.Object o2)
-
-
-
Field Detail
-
INSTANCE
public static final PriorityComparator INSTANCE
Singleton instance ofPriorityComparator
-
-