Class CharSequenceTranslator

java.lang.Object
org.apache.commons.text.translate.CharSequenceTranslator
Direct Known Subclasses:
AggregateTranslator, CodePointTranslator, CsvTranslators.CsvEscaper, CsvTranslators.CsvUnescaper, LookupTranslator, NumericEntityUnescaper, OctalUnescaper, UnicodeUnescaper

public abstract class CharSequenceTranslator extends Object
An API for translating text. Its core use is to escape and unescape text. Because escaping and unescaping is completely contextual, the API does not present two separate signatures.
Since:
1.0
  • Constructor Details

  • Method Details

    • hex

      public static String hex(int codePoint)
      Returns an upper case hexadecimal String for the given character.
      Parameters:
      codePoint - The code point to convert.
      Returns:
      An upper case hexadecimal String
    • translate

      public final String translate(CharSequence input)
      Helper for non-Writer usage.
      Parameters:
      input - CharSequence to be translated
      Returns:
      String output of translation
    • translate

      public abstract int translate(CharSequence input, int index, Writer writer) throws IOException
      Translate a set of code points, represented by an int index into a CharSequence, into another set of code points. The number of code points 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.
      Parameters:
      input - CharSequence that is being translated
      index - int representing the current point of translation
      writer - Writer to translate the text to
      Returns:
      int count of code points consumed
      Throws:
      IOException - if and only if the Writer produces an IOException
    • translate

      public final void translate(CharSequence input, Writer writer) throws IOException
      Translate an input onto a Writer. This is intentionally final as its algorithm is tightly coupled with the abstract method of this class.
      Parameters:
      input - CharSequence that is being translated
      writer - Writer to translate the text to
      Throws:
      IOException - if and only if the Writer produces an IOException
    • with

      public final CharSequenceTranslator with(CharSequenceTranslator... translators)
      Helper method to create a merger of this translator with another set of translators. Useful in customizing the standard functionality.
      Parameters:
      translators - CharSequenceTranslator array of translators to merge with this one
      Returns:
      CharSequenceTranslator merging this translator with the others