Class PeriodFormatterBuilder.Composite

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

static class PeriodFormatterBuilder.Composite extends Object implements PeriodPrinter, PeriodParser
Composite implementation that merges other fields to create a full pattern.
  • Field Details

  • 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
    • decompose

      private void decompose(List<Object> elementPairs, List<Object> printerList, List<Object> parserList)
    • addArrayToList

      private void addArrayToList(List<Object> list, Object[] array)