# Class DefaultServlet.SortManager

java.lang.Object
org.apache.catalina.servlets.DefaultServlet.SortManager

Enclosing class:
  `DefaultServlet`

protected static class DefaultServlet.SortManager extends Object
A class encapsulating the sorting of resources.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static class`
  `DefaultServlet.SortManager.Order`
  Order specification for directory listing sorting.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected Comparator<WebResource>`
  `defaultResourceComparator`
  The default sort.
  `protected Comparator<WebResource>`
  `resourceLastModifiedComparator`
  Comparator to use when sorting resources by last-modified date.
  `protected Comparator<WebResource>`
  `resourceLastModifiedComparatorAsc`
  Comparator to use when sorting files by last-modified date, ascending (reverse).
  `protected Comparator<WebResource>`
  `resourceNameComparator`
  Comparator to use when sorting resources by name.
  `protected Comparator<WebResource>`
  `resourceNameComparatorAsc`
  Comparator to use when sorting files by name, ascending (reverse).
  `protected Comparator<WebResource>`
  `resourceSizeComparator`
  Comparator to use when sorting resources by size.
  `protected Comparator<WebResource>`
  `resourceSizeComparatorAsc`
  Comparator to use when sorting files by size, ascending (reverse).

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Comparator<WebResource>`
  `getComparator(String order)`
  Get the comparator for the given order string.
  `Comparator<WebResource>`
  `getComparator(DefaultServlet.SortManager.Order order)`
  Get the comparator for the given order.
  `DefaultServlet.SortManager.Order`
  `getOrder(String order)`
  Gets the Order to apply given an ordering-string.
  `void`
  `sort(WebResource[] resources, String order)`
  Sorts an array of resources according to an ordering string.

  ### Methods inherited from class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### defaultResourceComparator

    protected Comparator<WebResource> defaultResourceComparator
    The default sort.

  - ### resourceNameComparator

    protected Comparator<WebResource> resourceNameComparator
    Comparator to use when sorting resources by name.

  - ### resourceNameComparatorAsc

    protected Comparator<WebResource> resourceNameComparatorAsc
    Comparator to use when sorting files by name, ascending (reverse).

  - ### resourceSizeComparator

    protected Comparator<WebResource> resourceSizeComparator
    Comparator to use when sorting resources by size.

  - ### resourceSizeComparatorAsc

    protected Comparator<WebResource> resourceSizeComparatorAsc
    Comparator to use when sorting files by size, ascending (reverse).

  - ### resourceLastModifiedComparator

    protected Comparator<WebResource> resourceLastModifiedComparator
    Comparator to use when sorting resources by last-modified date.

  - ### resourceLastModifiedComparatorAsc

    protected Comparator<WebResource> resourceLastModifiedComparatorAsc
    Comparator to use when sorting files by last-modified date, ascending (reverse).

- ## Method Details

  - ### sort

    public void sort(WebResource[] resources, String order)
    Sorts an array of resources according to an ordering string.
    Parameters:
      `resources` - The array to sort.
      `order` - The ordering string.
    See Also:
      - `getOrder(String)`

  - ### getComparator

    public Comparator<WebResource> getComparator(String order)
    Get the comparator for the given order string.
    Parameters:
      `order` - The order string
    Returns:
      the comparator

  - ### getComparator

    public Comparator<WebResource> getComparator(DefaultServlet.SortManager.Order order)
    Get the comparator for the given order.
    Parameters:
      `order` - The order specification
    Returns:
      the comparator

  - ### getOrder

    public DefaultServlet.SortManager.Order getOrder(String order)
    Gets the Order to apply given an ordering-string. This ordering-string matches a subset of the ordering-strings supported by Apache httpd.
    Parameters:
      `order` - The ordering-string provided by the client.
    Returns:
      An Order specifying the column and ascending/descending to be applied to resources.