Package org.apache.commons.net.nntp

# Class Threader

java.lang.Object
org.apache.commons.net.nntp.Threader

public class Threader extends Object
This is an implementation of a message threading algorithm, as originally devised by Zamie Zawinski. See http://www.jwz.org/doc/threading.html for details. For his Java implementation, see https://lxr.mozilla.org/mozilla/source/grendel/sources/grendel/view/Threader.java

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Threader()`
  Constructs a new instance.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Threadable`
  `thread(Iterable<? extends Threadable> messages)`
  The client passes in a list of Iterable objects, and the Threader constructs a connected 'graph' of messages
  `Threadable`
  `thread(List<? extends Threadable> messages)`
  The client passes in a list of Threadable objects, and the Threader constructs a connected 'graph' of messages
  `Threadable`
  `thread(Threadable[] messages)`
  Deprecated.
  (2.2) prefer `thread(List)`

  ### Methods inherited from class java.lang.Object

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

- ## Constructor Details

  - ### Threader

    public Threader()
    Constructs a new instance.

- ## Method Details

  - ### thread

    public Threadable thread(Iterable<? extends Threadable> messages)
    The client passes in a list of Iterable objects, and the Threader constructs a connected 'graph' of messages
    Parameters:
      `messages` - iterable of messages to thread, must not be empty
    Returns:
      null if messages == null or root.child == null or messages list is empty
    Since:
      3.0

  - ### thread

    public Threadable thread(List<? extends Threadable> messages)
    The client passes in a list of Threadable objects, and the Threader constructs a connected 'graph' of messages
    Parameters:
      `messages` - list of messages to thread, must not be empty
    Returns:
      null if messages == null or root.child == null or messages list is empty
    Since:
      2.2

  - ### thread

    @Deprecated public Threadable thread(Threadable[] messages)
    Deprecated.
    (2.2) prefer `thread(List)`
    The client passes in an array of Threadable objects, and the Threader constructs a connected 'graph' of messages
    Parameters:
      `messages` - array of messages to thread, must not be empty
    Returns:
      null if messages == null or root.child == null or messages array is empty