Class OrderUtil


  • public class OrderUtil
    extends java.lang.Object
    Apply the Ordered interface to lists or arrays.
    Since:
    1.0
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.util.Comparator<java.lang.Object> COMPARATOR
      Provide a comparator for collections.
      static java.util.Comparator<java.lang.Object> REVERSE_COMPARATOR
      Provide a comparator, in reversed order, for collections.
    • Constructor Summary

      Constructors 
      Constructor Description
      OrderUtil()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static int getOrder​(AnnotationMetadata annotationMetadata)
      Get the order for the given annotation metadata.
      static int getOrder​(AnnotationMetadata annotationMetadata, java.lang.Object o)
      Get the order of the given object.
      static int getOrder​(Ordered o)
      Get the order for the given Ordered object.
      static int getOrder​(java.lang.Object o)
      Get the order for the given object.
      static void reverseSort​(java.lang.Object[] array)
      Sort the given array in reverse order.
      static void reverseSort​(java.util.List<?> list)
      Sort the given list.
      static void sort​(Ordered... objects)
      Sort the given array.
      static void sort​(java.lang.Object[] objects)
      Sort the given array.
      static void sort​(java.util.List<?> list)
      Sort the given list.
      static <T> java.util.stream.Stream<T> sort​(java.util.stream.Stream<T> list)
      Sort the given list.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • COMPARATOR

        public static final java.util.Comparator<java.lang.Object> COMPARATOR
        Provide a comparator for collections.
      • REVERSE_COMPARATOR

        public static final java.util.Comparator<java.lang.Object> REVERSE_COMPARATOR
        Provide a comparator, in reversed order, for collections.
    • Constructor Detail

      • OrderUtil

        public OrderUtil()
    • Method Detail

      • sort

        public static void sort​(java.util.List<?> list)
        Sort the given list.
        Parameters:
        list - The list to sort
      • sort

        public static <T> java.util.stream.Stream<T> sort​(java.util.stream.Stream<T> list)
        Sort the given list.
        Type Parameters:
        T - The stream generic type
        Parameters:
        list - The list to sort
        Returns:
        The sorted stream
      • reverseSort

        public static void reverseSort​(java.util.List<?> list)
        Sort the given list.
        Parameters:
        list - The list to sort
      • reverseSort

        public static void reverseSort​(java.lang.Object[] array)
        Sort the given array in reverse order.
        Parameters:
        array - The array to sort
      • sort

        public static void sort​(Ordered... objects)
        Sort the given array.
        Parameters:
        objects - The array to sort
      • sort

        public static void sort​(java.lang.Object[] objects)
        Sort the given array.
        Parameters:
        objects - The array to sort
      • getOrder

        public static int getOrder​(java.lang.Object o)
        Get the order for the given object.
        Parameters:
        o - The object
        Returns:
        Ordered.getOrder() when object is instance of Ordered otherwise Ordered.LOWEST_PRECEDENCE
      • getOrder

        public static int getOrder​(AnnotationMetadata annotationMetadata,
                                   java.lang.Object o)
        Get the order of the given object. Objects implementing Ordered have precedence over annotation metadata with Order.
        Parameters:
        annotationMetadata - The annotation metadata
        o - The object
        Returns:
        The order of the object. If no order is found, Ordered.LOWEST_PRECEDENCE is returned.
      • getOrder

        public static int getOrder​(@NonNull
                                   AnnotationMetadata annotationMetadata)
        Get the order for the given annotation metadata.
        Parameters:
        annotationMetadata - The metadata
        Returns:
        The order
        Since:
        3.0.0
      • getOrder

        public static int getOrder​(Ordered o)
        Get the order for the given Ordered object.
        Parameters:
        o - The ordered object
        Returns:
        the order