BigMoney
.
This interface provides an abstraction over Money
and BigMoney
.
In general, applications should use the concrete types, not this interface.
However, utilities and frameworks may choose to make use of this abstraction.
Implementations of BigMoneyProvider
may be mutable.
To minimise the risk of the value of the provider changing while processing,
any method that takes a BigMoneyProvider
as a parameter should convert
it to a BigMoney
immediately and use that directly from then on.
The method BigMoney.of(BigMoneyProvider)
performs the conversion
safely with null checks and is recommended for this purpose.
This interface makes no guarantees about the immutability or thread-safety of implementations.
-
Method Summary
Modifier and TypeMethodDescriptionReturns aBigMoney
instance equivalent to the value of this object.
-
Method Details
-
toBigMoney
BigMoney toBigMoney()Returns aBigMoney
instance equivalent to the value of this object.It is recommended that
BigMoney.of(BigMoneyProvider)
is used in preference to calling this method directly. It is also recommended that the convertedBigMoney
is cached in a local variable instead of performing the conversion multiple times.- Returns:
- the converted money instance, never null
- Throws:
RuntimeException
- if conversion is not possible
-