/* * Copyright 2009 Google Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ package com.google.gwt.i18n.client; /** * A default {@link CurrencyData} implementation, so new methods can be added * to the interface without breaking implementors if a reasonable default is * available. */ public class DefaultCurrencyData implements CurrencyData { private final String currencyCode; private final String currencySymbol; private final int fractionDigits; /** * Create a default default {@link CurrencyData} instance, returning {@code * false} for all {@code isFoo} methods, having 2 fractional digits by * default, and using the standard symbol for the portable symbol. * * @param currencyCode ISO 4217 currency code * @param currencySymbol symbol to use for this currency */ public DefaultCurrencyData(String currencyCode, String currencySymbol) { this(currencyCode, currencySymbol, 2); } /** * Create a default default {@link CurrencyData} instance, returning {@code * false} for all {@code isFoo} methods and using the standard symbol for the * portable symbol. * * @param currencyCode ISO 4217 currency code * @param currencySymbol symbol to use for this currency * @param fractionDigits default number of fraction digits */ public DefaultCurrencyData(String currencyCode, String currencySymbol, int fractionDigits) { this.currencyCode = currencyCode; this.currencySymbol = currencySymbol; this.fractionDigits = fractionDigits; } @Override public String getCurrencyCode() { return currencyCode; } @Override public String getCurrencySymbol() { return currencySymbol; } @Override public int getDefaultFractionDigits() { return fractionDigits; } @Override public String getPortableCurrencySymbol() { return getCurrencySymbol(); } @Override public String getSimpleCurrencySymbol() { return getCurrencySymbol(); } @Override public boolean isDeprecated() { return false; } @Override public boolean isSpaceForced() { return false; } @Override public boolean isSpacingFixed() { return false; } @Override public boolean isSymbolPositionFixed() { return false; } @Override public boolean isSymbolPrefix() { return false; } }