Class MonetaryAmountFormatter
- java.lang.Object
- org.springframework.format.number.money.MonetaryAmountFormatter
- All Implemented Interfaces:
Formatter<javax.money.MonetaryAmount>,Parser<javax.money.MonetaryAmount>,Printer<javax.money.MonetaryAmount>
public class MonetaryAmountFormatter extends Object implements Formatter<javax.money.MonetaryAmount>
Formatter for JSR-354MonetaryAmountvalues, delegating toMonetaryAmountFormat.format(javax.money.MonetaryAmount)andMonetaryAmountFormat.parse(java.lang.CharSequence).- Since:
- 4.2
- Author:
- Juergen Hoeller
- See Also:
getMonetaryAmountFormat(java.util.Locale)
Constructor Summary
Constructors Constructor Description MonetaryAmountFormatter()Create a locale-driven MonetaryAmountFormatter.MonetaryAmountFormatter(String formatName)Create a new MonetaryAmountFormatter for the given format name.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected javax.money.format.MonetaryAmountFormatgetMonetaryAmountFormat(Locale locale)Obtain a MonetaryAmountFormat for the given locale.javax.money.MonetaryAmountparse(String text, Locale locale)Parse a text String to produce a T.Stringprint(javax.money.MonetaryAmount object, Locale locale)Print the object of type T for display.voidsetFormatName(String formatName)Specify the format name, to be resolved by the JSR-354 provider at runtime.
Constructor Detail
MonetaryAmountFormatter
public MonetaryAmountFormatter()
Create a locale-driven MonetaryAmountFormatter.
MonetaryAmountFormatter
public MonetaryAmountFormatter(String formatName)
Create a new MonetaryAmountFormatter for the given format name.- Parameters:
formatName- the format name, to be resolved by the JSR-354 provider at runtime
Method Detail
setFormatName
public void setFormatName(String formatName)
Specify the format name, to be resolved by the JSR-354 provider at runtime.Default is none, obtaining a
MonetaryAmountFormatbased on the current locale.
print
public String print(javax.money.MonetaryAmount object, Locale locale)
Description copied from interface:PrinterPrint the object of type T for display.
parse
public javax.money.MonetaryAmount parse(String text, Locale locale)
Description copied from interface:ParserParse a text String to produce a T.
getMonetaryAmountFormat
protected javax.money.format.MonetaryAmountFormat getMonetaryAmountFormat(Locale locale)
Obtain a MonetaryAmountFormat for the given locale.The default implementation simply calls
MonetaryFormats.getAmountFormat(java.util.Locale, java.lang.String...)with either the configured format name or the given locale.- Parameters:
locale- the current locale- Returns:
- the MonetaryAmountFormat (never
null) - See Also:
setFormatName(java.lang.String)