Class Threader

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

public class Threader extends Object
  • Constructor Details

    • Threader

      public Threader()
  • Method Details

    • buildContainer

      private void buildContainer(Threadable threadable, HashMap<String,ThreadContainer> idTable)
      Parameters:
      threadable -
      idTable -
    • findRootSet

      private ThreadContainer findRootSet(HashMap<String,ThreadContainer> idTable)
      Find the root set of all existing ThreadContainers
      Parameters:
      idTable -
      Returns:
      root the ThreadContainer representing the root node
    • gatherSubjects

      private void gatherSubjects(ThreadContainer root)
      If any two members of the root set have the same subject, merge them. This is to attempt to accomodate messages without References: headers.
      Parameters:
      root -
    • pruneEmptyContainers

      private void pruneEmptyContainers(ThreadContainer parent)
      Delete any empty or dummy ThreadContainers
      Parameters:
      parent -
    • 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