Hex Artifact Content
Not logged in

Artifact b1fc1036ff4112515780370e3034005747c7fc8d:


0000: 70 61 63 6b 61 67 65 20 6f 72 67 2e 69 6e 74 65  package org.inte
0010: 72 6c 65 64 67 65 72 2e 69 6c 70 2e 6c 65 64 67  rledger.ilp.ledg
0020: 65 72 3b 0a 0a 69 6d 70 6f 72 74 20 6a 61 76 61  er;..import java
0030: 2e 75 74 69 6c 2e 43 75 72 72 65 6e 63 79 3b 0a  .util.Currency;.
0040: 69 6d 70 6f 72 74 20 6a 61 76 61 78 2e 6d 6f 6e  import javax.mon
0050: 65 79 2e 43 75 72 72 65 6e 63 79 55 6e 69 74 3b  ey.CurrencyUnit;
0060: 0a 69 6d 70 6f 72 74 20 6a 61 76 61 78 2e 6d 6f  .import javax.mo
0070: 6e 65 79 2e 4d 6f 6e 65 74 61 72 79 3b 0a 0a 2f  ney.Monetary;../
0080: 2a 2a 0a 20 2a 20 43 6f 6d 6d 6f 6e 20 75 73 65  **. * Common use
0090: 64 20 63 75 72 72 65 6e 63 69 65 73 0a 20 2a 0a  d currencies. *.
00a0: 20 2a 20 40 61 75 74 68 6f 72 20 6d 72 6d 78 0a   * @author mrmx.
00b0: 20 2a 2f 0a 2f 2f 20 54 4f 44 4f 3a 28 30 29 20   */.// TODO:(0) 
00c0: 52 65 63 68 65 63 6b 20 75 73 73 61 67 65 20 6f  Recheck ussage o
00d0: 66 20 74 68 69 73 20 63 6c 61 73 73 2e 0a 70 75  f this class..pu
00e0: 62 6c 69 63 20 65 6e 75 6d 20 43 75 72 72 65 6e  blic enum Curren
00f0: 63 69 65 73 20 7b 0a 20 20 20 20 45 55 52 4f 28  cies {.    EURO(
0100: 22 45 55 52 22 29 2c 0a 20 20 20 20 55 53 5f 44  "EUR"),.    US_D
0110: 4f 4c 4c 41 52 28 22 55 53 44 22 29 2c 0a 20 20  OLLAR("USD"),.  
0120: 20 20 50 4f 55 4e 44 28 22 47 42 50 22 29 2c 0a    POUND("GBP"),.
0130: 20 20 20 20 59 45 4e 28 22 4a 50 59 22 29 2c 0a      YEN("JPY"),.
0140: 20 20 20 20 59 55 41 4e 28 22 43 4e 59 22 29 3b      YUAN("CNY");
0150: 0a 0a 20 20 20 20 70 72 69 76 61 74 65 20 53 74  ..    private St
0160: 72 69 6e 67 20 63 6f 64 65 3b 0a 0a 20 20 20 20  ring code;..    
0170: 70 72 69 76 61 74 65 20 43 75 72 72 65 6e 63 69  private Currenci
0180: 65 73 28 53 74 72 69 6e 67 20 63 6f 64 65 29 20  es(String code) 
0190: 7b 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 63  {.        this.c
01a0: 6f 64 65 20 3d 20 63 6f 64 65 3b 0a 20 20 20 20  ode = code;.    
01b0: 7d 0a 0a 20 20 20 20 70 75 62 6c 69 63 20 53 74  }..    public St
01c0: 72 69 6e 67 20 63 6f 64 65 28 29 20 7b 0a 20 20  ring code() {.  
01d0: 20 20 20 20 20 20 72 65 74 75 72 6e 20 63 6f 64        return cod
01e0: 65 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 70 75  e;.    }..    pu
01f0: 62 6c 69 63 20 53 74 72 69 6e 67 20 67 65 74 43  blic String getC
0200: 6f 64 65 28 29 20 7b 0a 20 20 20 20 20 20 20 20  ode() {.        
0210: 72 65 74 75 72 6e 20 63 6f 64 65 3b 0a 20 20 20  return code;.   
0220: 20 7d 0a 0a 20 20 20 20 70 75 62 6c 69 63 20 43   }..    public C
0230: 75 72 72 65 6e 63 79 20 74 6f 43 75 72 72 65 6e  urrency toCurren
0240: 63 79 28 29 20 7b 0a 20 20 20 20 20 20 20 20 72  cy() {.        r
0250: 65 74 75 72 6e 20 43 75 72 72 65 6e 63 79 2e 67  eturn Currency.g
0260: 65 74 49 6e 73 74 61 6e 63 65 28 63 6f 64 65 29  etInstance(code)
0270: 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 70 75 62  ;.    }..    pub
0280: 6c 69 63 20 43 75 72 72 65 6e 63 79 55 6e 69 74  lic CurrencyUnit
0290: 20 74 6f 43 75 72 72 65 6e 63 79 55 6e 69 74 28   toCurrencyUnit(
02a0: 29 20 7b 0a 20 20 20 20 20 20 20 20 72 65 74 75  ) {.        retu
02b0: 72 6e 20 4d 6f 6e 65 74 61 72 79 2e 67 65 74 43  rn Monetary.getC
02c0: 75 72 72 65 6e 63 79 28 63 6f 64 65 29 3b 0a 20  urrency(code);. 
02d0: 20 20 20 7d 0a 7d 0a                                }.}.