Class PeriodFormatterBuilder.Separator

java.lang.Object
org.joda.time.format.PeriodFormatterBuilder.Separator
All Implemented Interfaces:
PeriodParser, PeriodPrinter
Enclosing class:
PeriodFormatterBuilder

static class PeriodFormatterBuilder.Separator extends Object implements PeriodPrinter, PeriodParser
Handles a separator, that splits the fields into multiple parts. For example, the 'T' in the ISO8601 standard.
  • Field Details

    • iText

      private final String iText
    • iFinalText

      private final String iFinalText
    • iParsedForms

      private final String[] iParsedForms
    • iUseBefore

      private final boolean iUseBefore
    • iUseAfter

      private final boolean iUseAfter
    • iBeforePrinter

      private final PeriodPrinter iBeforePrinter
    • iAfterPrinter

      private volatile PeriodPrinter iAfterPrinter
    • iBeforeParser

      private final PeriodParser iBeforeParser
    • iAfterParser

      private volatile PeriodParser iAfterParser
  • Constructor Details

  • Method Details

    • countFieldsToPrint

      public int countFieldsToPrint(ReadablePeriod period, int stopAt, Locale locale)
      Description copied from interface: PeriodPrinter
      Returns the amount of fields from the given period that this printer will print.
      Specified by:
      countFieldsToPrint in interface PeriodPrinter
      Parameters:
      period - the period to use
      stopAt - stop counting at this value, enter a number ≥ 256 to count all
      locale - the locale to use
      Returns:
      amount of fields printed
    • calculatePrintedLength

      public int calculatePrintedLength(ReadablePeriod period, Locale locale)
      Description copied from interface: PeriodPrinter
      Returns the exact number of characters produced for the given period.
      Specified by:
      calculatePrintedLength in interface PeriodPrinter
      Parameters:
      period - the period to use
      locale - the locale to use
      Returns:
      the estimated length
    • printTo

      public void printTo(StringBuffer buf, ReadablePeriod period, Locale locale)
      Description copied from interface: PeriodPrinter
      Prints a ReadablePeriod to a StringBuffer.
      Specified by:
      printTo in interface PeriodPrinter
      Parameters:
      buf - the formatted period is appended to this buffer
      period - the period to format
      locale - the locale to use
    • printTo

      public void printTo(Writer out, ReadablePeriod period, Locale locale) throws IOException
      Description copied from interface: PeriodPrinter
      Prints a ReadablePeriod to a Writer.
      Specified by:
      printTo in interface PeriodPrinter
      Parameters:
      out - the formatted period is written out
      period - the period to format
      locale - the locale to use
      Throws:
      IOException - if an IO error occurs
    • parseInto

      public int parseInto(ReadWritablePeriod period, String periodStr, int position, Locale locale)
      Description copied from interface: PeriodParser
      Parses a period from the given text, at the given position, saving the result into the fields of the given ReadWritablePeriod. If the parse succeeds, the return value is the new text position. Note that the parse may succeed without fully reading the text.

      If it fails, the return value is negative, but the period may still be modified. To determine the position where the parse failed, apply the one's complement operator (~) on the return value.

      Specified by:
      parseInto in interface PeriodParser
      Parameters:
      period - a period that will be modified
      periodStr - text to parse
      position - position to start parsing from
      locale - the locale to use for parsing
      Returns:
      new position, if negative, parse failed. Apply complement operator (~) to get position of failure
    • finish

      PeriodFormatterBuilder.Separator finish(PeriodPrinter afterPrinter, PeriodParser afterParser)