-
-
Notifications
You must be signed in to change notification settings - Fork 79
Home
- The JSR is final.
- Checkout the umbrella site http://javamoney.org
All this areas were implemented in the org.javamoney OSS GItHub project, the common essence finally defined what we have now as JSR 354.
Beside the latest specification you may also find useful information and examples on the JSR 354 blog [http://jsr354.blogspot.ch/].
It is planned the the JSR will support both SE environments, but also ME usage scenarios should be considered as far as possible. The reference implementation probably also will include support for EE/CDI based on a flexible and adaptable SPI/bootstrap design. You can download the latest version from maven central, once the JSR is final. The releases will be as follows:
'''org.javamoney:moneta:1.0''' (RI for Java 8) '''org.javamoney:moneta-bp:1.0''' (RI for Java 7)
'''javax.money:money-api:1.0''' (API for Java 8) '''javax.money:money-api-bp:1.0''' (API for Java 7)
'''org.javamoney:javamoney-tck:1.0''' (TCK for Java 7 and Java 8)
For any other releases, including snapshot builds use our Bintray/JFrog repositories: '''http://oss.jfrog.org/artifactory/oss-release-local/''' '''http://oss.jfrog.org/artifactory/oss-snapshot-local/'''
==Scope and Use Cases
Generally the scope of the JSR is targeting all general application types, e.g.
- eCommerce
- Banking and finance
- Investment
- Insurance and Pension
- Mobile and Embedded Payment
- etc.
Summarizing the scope can be defined as follows:
- Provide abstractions for currency and money suitable for all target applications
- Enhance, renew Currency, add support for non-ISO currencies
- Support complex calculation rules including calculation precision and display precision
- Support for regional rounding rules
- Basic support for foreign exchange, extendable for more complex usage scenarios
- A plain text representation of Money
- Printing/Parsing to
String
- Support for pluralization
- Provide APIs for historic access of currencies and exchange rates.
- Define a flexible query API tu support complex usage scenarios for exchange rates and currencies
- Storing a value in multiple currencies (a single value type that is effectively a map of currency to amount, where the amounts are all notionally the same by some form of currency conversion)
- Large exchange rate system (as in a system suitable for trading, such as bid/ask)
Nevertheless there are some '''restrictions''' (features that are not in scope):
- It is not planned to target low latency such as Algorithmic Trading applications. Nevertheless we will try to keep performance in mind to accomodate such applications.
- Non-decimal currencies [http://en.wikipedia.org/wiki/Non-decimal_currency#Contemporary_non-decimal_currencies]
==Further Information and Source Code Access
- The current specification document is downloadable from the JCP page. The current work in progresss document can be found [https://github.com/JavaMoney/jsr354-api/blob/master/src/main/asciidoc/JavaMoneySpecification.adoc here].
- Current Build Status and Build Information for [https://travis-ci.org/JavaMoney/jsr354-api API] and [https://travis-ci.org/JavaMoney/jsr354-ri RI]
- Public Source Code Repository on GitHub: [https://github.com/JavaMoney/javamoney GitHub Repository]
- Discussions about Precision and other implementation