@Test(groups = "fast") public void testBasicUSD() throws Exception { final FixedPriceInvoiceItem fixedItemUSD = new FixedPriceInvoiceItem(UUID.randomUUID(), UUID.randomUUID(), null, null, UUID.randomUUID().toString(), UUID.randomUUID().toString(), new LocalDate(), new BigDecimal("-1114.751625346"), Currency.USD); checkOutput(fixedItemUSD, "{{#invoiceItem}}<td class=\"amount\">{{formattedAmount}}</td>{{/invoiceItem}}", "<td class=\"amount\">($1,114.75)</td>", LocaleUtils.toLocale("en_US")); }
@Override public String getTranslation(final Locale locale, final String originalText) { final String bundlePath = getBundlePath(); ResourceBundle bundle = getBundle(locale, bundlePath); if ((bundle != null) && (bundle.containsKey(originalText))) { return bundle.getString(originalText); } else { if (config.getDefaultLocale() == null) { log.debug("No default locale configured, returning original text"); return originalText; } final Locale defaultLocale = LocaleUtils.toLocale(config.getDefaultLocale()); try { bundle = getBundle(defaultLocale, bundlePath); if ((bundle != null) && (bundle.containsKey(originalText))) { return bundle.getString(originalText); } else { return originalText; } } catch (MissingResourceException mrex) { log.warn("Missing translation bundle for locale {}", defaultLocale); return originalText; } } }
public String generateInvoice(final Account account, @Nullable final Invoice invoice, final boolean manualPay) throws IOException { // Don't do anything if the invoice is null if (invoice == null) { return null; } final Map<String, Object> data = new HashMap<String, Object>(); final DefaultInvoiceTranslator invoiceTranslator = new DefaultInvoiceTranslator(config); final Locale locale = LocaleUtils.toLocale(account.getLocale()); invoiceTranslator.setLocale(locale); data.put("text", invoiceTranslator); data.put("account", account); final InvoiceFormatter formattedInvoice = factory.createInvoiceFormatter(config, invoice, locale, currencyConversionApi); data.put("invoice", formattedInvoice); if (manualPay) { return templateEngine.executeTemplate(config.getManualPayTemplateName(), data); } else { return templateEngine.executeTemplate(config.getTemplateName(), data); } } }