public static boolean isRoundingAvailable(CurrencyUnit currencyUnit, String... providers) {
        return Optional.ofNullable(monetaryRoundingsSingletonSpi()).orElseThrow(
                () -> new MonetaryException("No MonetaryRoundingsSpi loaded, query functionality is not available."))
                .isRoundingAvailable(currencyUnit, providers);
    }
public static boolean isRoundingAvailable ( CurrencyUnit currencyUnit , String ... providers ) { return Optional . ofNullable ( monetaryRoundingsSingletonSpi ( ) ) . orElseThrow ( ( ) -> new MonetaryException ( "No MonetaryRoundingsSpi loaded, query functionality is not available." ) ) . isRoundingAvailable ( currencyUnit , providers ) ; }
Checks if a {@link MonetaryRounding} is available given a roundingId.

@param currencyUnit The currency, which determines the required scale. As {@link java.math.RoundingMode},
by default, {@link java.math.RoundingMode#HALF_UP} is used.
@param providers    the providers and ordering to be used. By default providers and ordering as defined in
#getDefaultProviders is used.
@return true, if a corresponding {@link javax.money.MonetaryRounding} is available.
@throws IllegalArgumentException if no such rounding is registered using a
{@link javax.money.spi.RoundingProviderSpi} instance.