Reputation: 2443
I have an API which returns only error/success codes, with no body. With RxJava1 I would have used Observable<Void>
as the return value for this call.
What can I use for RxJava2? The hint on the Wiki for RxJava2 (link) is not helpful, since I can't change how the API works.
Setup:
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
compile 'com.jakewharton.retrofit:retrofit2-rxjava2-adapter:1.0.0'
Upvotes: 7
Views: 3799
Reputation: 191
You can still use an Observable but replace the Void type with an enum type which is defined like this
public enum Terminal {
TERMINAL
}
and then use it like this
Observable<Terminal>
PS: You can name the enum anything you want
Upvotes: 0
Reputation: 60681
Use Completable
.
If the operation succeeds, it will emit a successful termination event. If it fails, you can use your own Exception
subclass to wrap the necessary error codes.
Upvotes: 25