2 *******************************************************************************
\r
3 * Copyright (C) 2008, International Business Machines Corporation and *
\r
4 * others. All Rights Reserved. *
\r
5 *******************************************************************************
\r
7 package com.ibm.icu.impl.jdkadapter;
\r
9 import java.util.Currency;
\r
11 import com.ibm.icu.text.DecimalFormatSymbols;
\r
14 * DecimalFormatSymbolsICU is an adapter class which wraps ICU4J DecimalFormatSymbols and
\r
15 * implements java.text.DecimalFormatSymbols APIs.
\r
17 public class DecimalFormatSymbolsICU extends java.text.DecimalFormatSymbols {
\r
19 private static final long serialVersionUID = -8226875908479009580L;
\r
21 private DecimalFormatSymbols fIcuDecfs;
\r
23 private DecimalFormatSymbolsICU(DecimalFormatSymbols icuDecfs) {
\r
24 fIcuDecfs = icuDecfs;
\r
27 public static java.text.DecimalFormatSymbols wrap(DecimalFormatSymbols icuDecfs) {
\r
28 return new DecimalFormatSymbolsICU(icuDecfs);
\r
31 public DecimalFormatSymbols unwrap() {
\r
36 public Object clone() {
\r
37 DecimalFormatSymbolsICU other = (DecimalFormatSymbolsICU)super.clone();
\r
38 other.fIcuDecfs = (DecimalFormatSymbols)fIcuDecfs.clone();
\r
43 public boolean equals(Object obj) {
\r
44 if (obj instanceof DecimalFormatSymbolsICU) {
\r
45 return ((DecimalFormatSymbolsICU)obj).fIcuDecfs.equals(fIcuDecfs);
\r
51 public Currency getCurrency() {
\r
52 com.ibm.icu.util.Currency icuCurrency = fIcuDecfs.getCurrency();
\r
53 if (icuCurrency == null) {
\r
56 return Currency.getInstance(icuCurrency.getCurrencyCode());
\r
60 public String getCurrencySymbol() {
\r
61 return fIcuDecfs.getCurrencySymbol();
\r
65 public char getDecimalSeparator() {
\r
66 return fIcuDecfs.getDecimalSeparator();
\r
70 public char getDigit() {
\r
71 return fIcuDecfs.getDigit();
\r
75 public String getExponentSeparator() {
\r
76 return fIcuDecfs.getExponentSeparator();
\r
80 public char getGroupingSeparator() {
\r
81 return fIcuDecfs.getGroupingSeparator();
\r
85 public String getInfinity() {
\r
86 return fIcuDecfs.getInfinity();
\r
90 public String getInternationalCurrencySymbol() {
\r
91 return fIcuDecfs.getInternationalCurrencySymbol();
\r
95 public char getMinusSign() {
\r
96 return fIcuDecfs.getMinusSign();
\r
100 public char getMonetaryDecimalSeparator() {
\r
101 return fIcuDecfs.getMonetaryDecimalSeparator();
\r
105 public String getNaN() {
\r
106 return fIcuDecfs.getNaN();
\r
110 public char getPatternSeparator() {
\r
111 return fIcuDecfs.getPatternSeparator();
\r
115 public char getPercent() {
\r
116 return fIcuDecfs.getPercent();
\r
120 public char getPerMill() {
\r
121 return fIcuDecfs.getPerMill();
\r
125 public char getZeroDigit() {
\r
126 return fIcuDecfs.getZeroDigit();
\r
130 public void setCurrency(Currency currency) {
\r
131 com.ibm.icu.util.Currency icuCurrency = null;
\r
132 if (currency != null) {
\r
133 icuCurrency = com.ibm.icu.util.Currency.getInstance(currency.getCurrencyCode());
\r
135 fIcuDecfs.setCurrency(icuCurrency);
\r
139 public void setCurrencySymbol(String currency) {
\r
140 fIcuDecfs.setCurrencySymbol(currency);
\r
144 public void setDecimalSeparator(char decimalSeparator) {
\r
145 fIcuDecfs.setDecimalSeparator(decimalSeparator);
\r
149 public void setDigit(char digit) {
\r
150 fIcuDecfs.setDigit(digit);
\r
154 public void setExponentSeparator(String exp) {
\r
155 fIcuDecfs.setExponentSeparator(exp);
\r
159 public void setGroupingSeparator(char groupingSeparator) {
\r
160 fIcuDecfs.setGroupingSeparator(groupingSeparator);
\r
164 public void setInfinity(String infinity) {
\r
165 fIcuDecfs.setInfinity(infinity);
\r
169 public void setInternationalCurrencySymbol(String currencyCode) {
\r
170 fIcuDecfs.setInternationalCurrencySymbol(currencyCode);
\r
174 public void setMinusSign(char minusSign) {
\r
175 fIcuDecfs.setMinusSign(minusSign);
\r
179 public void setMonetaryDecimalSeparator(char sep) {
\r
180 fIcuDecfs.setMonetaryDecimalSeparator(sep);
\r
184 public void setNaN(String NaN) {
\r
185 fIcuDecfs.setNaN(NaN);
\r
189 public void setPatternSeparator(char patternSeparator) {
\r
190 fIcuDecfs.setPatternSeparator(patternSeparator);
\r
194 public void setPercent(char percent) {
\r
195 fIcuDecfs.setPercent(percent);
\r
199 public void setPerMill(char perMill) {
\r
200 fIcuDecfs.setPerMill(perMill);
\r
204 public void setZeroDigit(char zeroDigit) {
\r
205 fIcuDecfs.setZeroDigit(zeroDigit);
\r
209 public int hashCode() {
\r
210 return fIcuDecfs.hashCode();
\r