https://github.com/retrostreams/android-retrofuture
Backport of Java 9 (JEP 266) CompletableFuture API for Android Studio 3.x D8 / desugar toolchain, forked from https://github.com/stefan-zobel/streamsupport
https://github.com/retrostreams/android-retrofuture
android completablefuture java8 java9 jep-266
Last synced: 3 months ago
JSON representation
Backport of Java 9 (JEP 266) CompletableFuture API for Android Studio 3.x D8 / desugar toolchain, forked from https://github.com/stefan-zobel/streamsupport
- Host: GitHub
- URL: https://github.com/retrostreams/android-retrofuture
- Owner: retrostreams
- Archived: true
- Created: 2017-07-08T17:44:11.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2023-03-18T12:24:16.000Z (almost 3 years ago)
- Last Synced: 2024-09-30T14:09:42.010Z (about 1 year ago)
- Topics: android, completablefuture, java8, java9, jep-266
- Language: Java
- Homepage: https://retrostreams.github.io/android-retrofuture/
- Size: 600 KB
- Stars: 67
- Watchers: 2
- Forks: 5
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[](http://mvnrepository.com/artifact/net.sourceforge.streamsupport/android-retrofuture)
[](https://javadoc.io/doc/net.sourceforge.streamsupport/android-retrofuture)
# android-retrofuture

android-retrofuture is a backport of the Java 8 CompletableFuture API upgraded to the current Java 9 (JEP 266) enhancements for Android developers wanting to use the Android Studio 3.x D8 / desugar toolchain.
There is nothing specific to Android or the desugar toolchain in this code (it could even be compiled to Java 6 bytecode) but
it has a dependency on [android-retrostreams](https://github.com/retrostreams/android-retrostreams) which is why this exists as a separate component (the corresponding
[streamsupport-cfuture](https://github.com/stefan-zobel/streamsupport/tree/master/src/cfuture) component can't be used with android-retrostreams
and [android-retrostreams](https://github.com/retrostreams/android-retrostreams) itself can *only* be used with desugar or Java 8 and higher).
Other than having a different package name this code has no further changes compared with [streamsupport-cfuture](https://github.com/stefan-zobel/streamsupport/tree/master/src/cfuture)
The new Java 12 exception handling methods for CompletableFuture [JDK-8211010](https://bugs.openjdk.java.net/browse/JDK-8211010) have been integrated in release 1.7.0
Online Javadoc is available at [docs](https://retrostreams.github.io/android-retrofuture/apidocs/index.html)
Please give feedback [here](https://github.com/retrostreams/android-retrofuture/issues) if you experience any problems.
### build.gradle:
```gradle
dependencies {
implementation 'net.sourceforge.streamsupport:android-retrofuture:1.7.4'
}
```
## LICENSE
GNU General Public License, version 2, [with the Classpath Exception](https://github.com/retrostreams/android-retrofuture/blob/master/GPL_ClasspathException) (and [CC0 1.0](https://creativecommons.org/publicdomain/zero/1.0/) for JSR-166 derived code)