AggregateTranslator
Date: 2017-02-08

org.apache.commons.lang3.text.translate

## Class AggregateTranslator

- java.lang.Object
- - org.apache.commons.lang3.text.translate.CharSequenceTranslator
  - - org.apache.commons.lang3.text.translate.AggregateTranslator

-     public class AggregateTranslator
      extends CharSequenceTranslator

  Executes a sequence of translators one after the other. Execution ends whenever the first translator consumes codepoints from the input.
  Since:
    3.0

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `AggregateTranslator(CharSequenceTranslator... translators)` Specify the translators to be used at creation time.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `translate(java.lang.CharSequence input, int index, java.io.Writer out)` The first translator to consume codepoints from the input is the 'winner'.

    - ### Methods inherited from class org.apache.commons.lang3.text.translate.CharSequenceTranslator

      `hex, translate, translate, with`

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

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

- - ### Constructor Detail

    - #### AggregateTranslator

          public AggregateTranslator(CharSequenceTranslator... translators)

      Specify the translators to be used at creation time.
      Parameters:
        `translators` - CharSequenceTranslator array to aggregate

  - ### Method Detail

    - #### translate

          public int translate(java.lang.CharSequence input,
                      int index,
                      java.io.Writer out)
                        throws java.io.IOException

      The first translator to consume codepoints from the input is the 'winner'. Execution stops with the number of consumed codepoints being returned. Translate a set of codepoints, represented by an int index into a CharSequence, into another set of codepoints. The number of codepoints consumed must be returned, and the only IOExceptions thrown must be from interacting with the Writer so that the top level API may reliably ignore StringWriter IOExceptions.
      Specified by:
        `translate` in class `CharSequenceTranslator`
      Parameters:
        `input` - CharSequence that is being translated
        `index` - int representing the current point of translation
        `out` - Writer to translate the text to
      Returns:
        int count of codepoints consumed
      Throws:
        `java.io.IOException` - if and only if the Writer produces an IOException