Package org.joda.time.format
Class PeriodFormat.DynamicWordBased
- java.lang.Object
-
- org.joda.time.format.PeriodFormat.DynamicWordBased
-
- All Implemented Interfaces:
PeriodParser,PeriodPrinter
- Enclosing class:
- PeriodFormat
static class PeriodFormat.DynamicWordBased extends java.lang.Object implements PeriodPrinter, PeriodParser
Printer/parser that reacts to the locale and changes the word-based pattern if necessary.
-
-
Field Summary
Fields Modifier and Type Field Description private PeriodFormatteriFormatterThe formatter with the locale selected at construction time.
-
Constructor Summary
Constructors Constructor Description DynamicWordBased(PeriodFormatter formatter)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intcalculatePrintedLength(ReadablePeriod period, java.util.Locale locale)Returns the exact number of characters produced for the given period.intcountFieldsToPrint(ReadablePeriod period, int stopAt, java.util.Locale locale)Returns the amount of fields from the given period that this printer will print.private PeriodParsergetParser(java.util.Locale locale)private PeriodPrintergetPrinter(java.util.Locale locale)intparseInto(ReadWritablePeriod period, java.lang.String periodStr, int position, java.util.Locale locale)Parses a period from the given text, at the given position, saving the result into the fields of the given ReadWritablePeriod.voidprintTo(java.io.Writer out, ReadablePeriod period, java.util.Locale locale)Prints a ReadablePeriod to a Writer.voidprintTo(java.lang.StringBuffer buf, ReadablePeriod period, java.util.Locale locale)Prints a ReadablePeriod to a StringBuffer.
-
-
-
Field Detail
-
iFormatter
private final PeriodFormatter iFormatter
The formatter with the locale selected at construction time.
-
-
Constructor Detail
-
DynamicWordBased
DynamicWordBased(PeriodFormatter formatter)
-
-
Method Detail
-
countFieldsToPrint
public int countFieldsToPrint(ReadablePeriod period, int stopAt, java.util.Locale locale)
Description copied from interface:PeriodPrinterReturns the amount of fields from the given period that this printer will print.- Specified by:
countFieldsToPrintin interfacePeriodPrinter- Parameters:
period- the period to usestopAt- stop counting at this value, enter a number ≥ 256 to count alllocale- the locale to use- Returns:
- amount of fields printed
-
calculatePrintedLength
public int calculatePrintedLength(ReadablePeriod period, java.util.Locale locale)
Description copied from interface:PeriodPrinterReturns the exact number of characters produced for the given period.- Specified by:
calculatePrintedLengthin interfacePeriodPrinter- Parameters:
period- the period to uselocale- the locale to use- Returns:
- the estimated length
-
printTo
public void printTo(java.lang.StringBuffer buf, ReadablePeriod period, java.util.Locale locale)Description copied from interface:PeriodPrinterPrints a ReadablePeriod to a StringBuffer.- Specified by:
printToin interfacePeriodPrinter- Parameters:
buf- the formatted period is appended to this bufferperiod- the period to formatlocale- the locale to use
-
printTo
public void printTo(java.io.Writer out, ReadablePeriod period, java.util.Locale locale) throws java.io.IOExceptionDescription copied from interface:PeriodPrinterPrints a ReadablePeriod to a Writer.- Specified by:
printToin interfacePeriodPrinter- Parameters:
out- the formatted period is written outperiod- the period to formatlocale- the locale to use- Throws:
java.io.IOException
-
getPrinter
private PeriodPrinter getPrinter(java.util.Locale locale)
-
parseInto
public int parseInto(ReadWritablePeriod period, java.lang.String periodStr, int position, java.util.Locale locale)
Description copied from interface:PeriodParserParses 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:
parseIntoin interfacePeriodParser- Parameters:
period- a period that will be modifiedperiodStr- text to parseposition- position to start parsing fromlocale- the locale to use for parsing- Returns:
- new position, if negative, parse failed. Apply complement operator (~) to get position of failure
-
getParser
private PeriodParser getParser(java.util.Locale locale)
-
-