public override string GetNarrowSymbol(string isoCode) { NarrowSymbol narrowSymbol = FetchNarrowSymbol(isoCode); // Fall back to ISO Code // TODO: Should this fall back to the regular symbol instead of the ISO code? if (narrowSymbol.narrowSymbol == null && fallback) { return(isoCode); } return(narrowSymbol.narrowSymbol); }
internal NarrowSymbol FetchNarrowSymbol(string isoCode) { NarrowSymbol result = narrowSymbolCache; if (result == null || !result.isoCode.Equals(isoCode)) { result = new NarrowSymbol(isoCode); CurrencySink sink = new CurrencySink(!fallback, CurrencySink.EntrypointTable.CURRENCY_NARROW); sink.narrowSymbol = result; rb.GetAllItemsWithFallbackNoFail("Currencies%narrow/" + isoCode, sink); narrowSymbolCache = result; } return(result); }