code: private String getToken(MonetaryAmount amount) {
          switch (style) {
              case NUMERIC_CODE:
                  return String.valueOf(amount.getCurrency().getNumericCode());
              case NAME:
                  return getCurrencyName(amount.getCurrency());
              case SYMBOL:
                  return getCurrencySymbol(amount.getCurrency());
              case CODE:
                  return amount.getCurrency().getCurrencyCode();
              default:
                  throw new UnsupportedOperationException("Unexpected style " + style);
          }
      }
docs: Evaluate the formatted(localized) token.
  
  @param amount the {@link MonetaryAmount} containing the {@link CurrencyUnit}
  to be formatted.
  @return the formatted currency.