Class 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:
    1.0
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method 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 java.lang.Object

        equals, 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