public abstract class BaseMonetaryRoundingsSingletonSpi extends Object implements javax.money.spi.MonetaryRoundingsSingletonSpi
MonetaryOperator
.
This class is thread-safe.
Constructor and Description |
---|
BaseMonetaryRoundingsSingletonSpi() |
Modifier and Type | Method and Description |
---|---|
javax.money.MonetaryRounding |
getRounding(javax.money.CurrencyUnit currencyUnit,
String... providers)
Access a
MonetaryRounding for rounding MonetaryAmount
instances given a currency. |
javax.money.MonetaryRounding |
getRounding(javax.money.RoundingQuery query)
Query a specific rounding with the given query.
|
javax.money.MonetaryRounding |
getRounding(String roundingName,
String... providers)
Access a
MonetaryRounding using the rounding name. |
boolean |
isRoundingAvailable(javax.money.CurrencyUnit currencyUnit,
String... providers)
Checks if a
MonetaryRounding is available given a CurrencyUnit . |
boolean |
isRoundingAvailable(javax.money.RoundingQuery query)
Checks if any
MonetaryRounding is matching the given query. |
boolean |
isRoundingAvailable(String roundingId,
String... providers)
Checks if a
MonetaryRounding is available given a roundingId. |
public BaseMonetaryRoundingsSingletonSpi()
public javax.money.MonetaryRounding getRounding(javax.money.CurrencyUnit currencyUnit, String... providers)
MonetaryRounding
for rounding MonetaryAmount
instances given a currency.getRounding
in interface javax.money.spi.MonetaryRoundingsSingletonSpi
currencyUnit
- The currency, which determines the required precision. As
RoundingMode
, by default, RoundingMode.HALF_UP
is sued.providers
- the optional provider list and ordering to be usedMonetaryOperator
implementing the
rounding, never null
.javax.money.MonetaryException
- if no such rounding could be provided.public javax.money.MonetaryRounding getRounding(String roundingName, String... providers)
MonetaryRounding
using the rounding name.getRounding
in interface javax.money.spi.MonetaryRoundingsSingletonSpi
roundingName
- The rounding name, not null.providers
- the optional provider list and ordering to be usedMonetaryOperator
implementing the
rounding, never null
.IllegalArgumentException
- if no such rounding is registered using a
RoundingProviderSpi
instance.public javax.money.MonetaryRounding getRounding(javax.money.RoundingQuery query)
AbstractQuery.getProviderNames()
.getRounding
in interface javax.money.spi.MonetaryRoundingsSingletonSpi
query
- the rounding query, not null.public boolean isRoundingAvailable(javax.money.RoundingQuery query)
MonetaryRounding
is matching the given query.isRoundingAvailable
in interface javax.money.spi.MonetaryRoundingsSingletonSpi
query
- the rounding query, not null.public boolean isRoundingAvailable(String roundingId, String... providers)
MonetaryRounding
is available given a roundingId.isRoundingAvailable
in interface javax.money.spi.MonetaryRoundingsSingletonSpi
roundingId
- The rounding identifier.providers
- the providers and ordering to be used. By default providers and ordering as defined in
#getDefaultProviders is used.MonetaryRounding
is available.IllegalArgumentException
- if no such rounding is registered using a
RoundingProviderSpi
instance.public boolean isRoundingAvailable(javax.money.CurrencyUnit currencyUnit, String... providers)
MonetaryRounding
is available given a CurrencyUnit
.isRoundingAvailable
in interface javax.money.spi.MonetaryRoundingsSingletonSpi
currencyUnit
- The currency, which determines the required precision. As RoundingMode
,
by default, RoundingMode.HALF_UP
is used.providers
- the providers and ordering to be used. By default providers and ordering as defined in
#getDefaultProviders is used.MonetaryRounding
is available.IllegalArgumentException
- if no such rounding is registered using a
RoundingProviderSpi
instance.Copyright © 2012-2015 JavaMoney. All Rights Reserved.