Skip to content

Commit 2f2cef5

Browse files
authored
3.x: Javadocs package-info made nicer, update README regarding Java 8 (#6778)
1 parent 0fba7c5 commit 2f2cef5

File tree

8 files changed

+64
-33
lines changed

8 files changed

+64
-33
lines changed

Diff for: README.md

+7-16
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@ It extends the [observer pattern](http://en.wikipedia.org/wiki/Observer_pattern)
1111
#### Version 3.x ([Javadoc](http://reactivex.io/RxJava/3.x/javadoc/))
1212

1313
- single dependency: [Reactive-Streams](https://github.com/reactive-streams/reactive-streams-jvm)
14-
- continued support for Java 6+ & [Android](https://github.com/ReactiveX/RxAndroid) 2.3+
14+
- Java 8+ ([Android](https://github.com/ReactiveX/RxAndroid) desugar friendly)
15+
- Java 8 lambda-friendly API
1516
- fixed API mistakes and many limits of RxJava 2
1617
- intended to be a replacement for RxJava 2 with relatively few binary incompatible changes
17-
- Java 8 lambda-friendly API
1818
- non-opinionated about the source of concurrency (threads, pools, event loops, fibers, actors, etc.)
1919
- async or synchronous execution
2020
- virtual time and schedulers for parameterized concurrency
@@ -60,19 +60,6 @@ public class HelloWorld {
6060
}
6161
```
6262

63-
If your platform doesn't support Java 8 lambdas (yet), you have to create an inner class of `Consumer` manually:
64-
65-
```java
66-
import io.reactivex.rxjava3.functions.Consumer;
67-
68-
Flowable.just("Hello world")
69-
.subscribe(new Consumer<String>() {
70-
@Override public void accept(String s) {
71-
System.out.println(s);
72-
}
73-
});
74-
```
75-
7663
Note that RxJava 3 components now live under `io.reactivex.rxjava3` and the base classes and interfaces live under `io.reactivex.rxjava3.core`.
7764

7865
### Base classes
@@ -557,7 +544,7 @@ Binaries and dependency information for Maven, Ivy, Gradle and others can be fou
557544
Example for Gradle:
558545

559546
```groovy
560-
compile 'io.reactivex.rxjava3:rxjava:x.y.z'
547+
implementation 'io.reactivex.rxjava3:rxjava:x.y.z'
561548
```
562549

563550
and for Maven:
@@ -575,6 +562,8 @@ and for Ivy:
575562
<dependency org="io.reactivex.rxjava3" name="rxjava" rev="x.y.z" />
576563
```
577564

565+
### Snapshots
566+
578567
Snapshots are available via https://oss.jfrog.org/libs-snapshot/io/reactivex/rxjava3/rxjava/
579568

580569
```groovy
@@ -587,6 +576,8 @@ dependencies {
587576
}
588577
```
589578

579+
JavaDoc snapshots are available at http://reactivex.io/RxJava/3.x/javadoc/snapshot
580+
590581
## Build
591582

592583
To build:

Diff for: src/main/java/io/reactivex/rxjava3/annotations/Nullable.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@
1919
import java.lang.annotation.*;
2020

2121
/**
22-
* Indicates that a field/parameter/variable/return type may be null.
22+
* Indicates that a field/parameter/variable/type parameter/return type may be null.
2323
*/
2424
@Documented
25-
@Target(value = {FIELD, METHOD, PARAMETER, LOCAL_VARIABLE})
25+
@Target(value = {FIELD, METHOD, PARAMETER, LOCAL_VARIABLE, TYPE_PARAMETER, TYPE_USE})
2626
@Retention(value = CLASS)
2727
public @interface Nullable { }
2828

Diff for: src/main/java/io/reactivex/rxjava3/annotations/package-info.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@
1515
*/
1616

1717
/**
18-
* Annotations for indicating experimental and beta operators, classes, methods, types or fields.
18+
* Annotations for indicating operator behavior, API stability
19+
* ({@link io.reactivex.rxjava3.annotations.Experimental @Experimental} and {@link io.reactivex.rxjava3.annotations.Beta @Beta}) and
20+
* nullability indicators ({@link io.reactivex.rxjava3.annotations.Nullable Nullable} and {@link io.reactivex.rxjava3.annotations.NonNull NonNull}).
1921
*/
2022
package io.reactivex.rxjava3.annotations;

Diff for: src/main/java/io/reactivex/rxjava3/disposables/package-info.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515
*/
1616

1717
/**
18-
* Default implementations for Disposable-based resource management
19-
* (Disposable container types) and utility classes to construct
20-
* Disposables from callbacks and other types.
18+
* Default implementations for {@link io.reactivex.rxjava3.disposables.Disposable Disposable}-based resource management
19+
* ({@code Disposable} container types) and utility classes to construct
20+
* {@link io.reactivex.rxjava3.disposables.Disposables Disposables} from callbacks and other types.
2121
*/
2222
package io.reactivex.rxjava3.disposables;

Diff for: src/main/java/io/reactivex/rxjava3/exceptions/package-info.java

+5-2
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,10 @@
1515
*/
1616

1717
/**
18-
* Exception handling utilities, safe subscriber exception classes,
19-
* lifecycle exception classes.
18+
* Exception handling utilities ({@link io.reactivex.rxjava3.exceptions.Exceptions Exceptions}),
19+
* composite exception container ({@link io.reactivex.rxjava3.exceptions.CompositeException CompositeException}) and
20+
* various lifecycle-reladed ({@link io.reactivex.rxjava3.exceptions.MissingBackpressureException UndeliverableException})
21+
* and behavior-violation exception types ({@link io.reactivex.rxjava3.exceptions.OnErrorNotImplementedException OnErrorNotImplementedException},
22+
* {@link io.reactivex.rxjava3.exceptions.MissingBackpressureException MissingBackpressureException}).
2023
*/
2124
package io.reactivex.rxjava3.exceptions;

Diff for: src/main/java/io/reactivex/rxjava3/observers/package-info.java

+38-4
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,44 @@
1515
*/
1616

1717
/**
18-
* Default wrappers and implementations for Observer-based consumer classes and interfaces,
18+
* Default wrappers and implementations for observer-based consumer classes and interfaces,
1919
* including disposable and resource-tracking variants and
20-
* the {@link io.reactivex.rxjava3.observers.TestObserver} that allows unit testing
21-
* {@link io.reactivex.rxjava3.core.Observable}-, {@link io.reactivex.rxjava3.core.Single}-, {@link io.reactivex.rxjava3.core.Maybe}-
22-
* and {@link io.reactivex.rxjava3.core.Completable}-based flows.
20+
* the {@link io.reactivex.rxjava3.observers.TestObserver TestObserver} that allows unit testing
21+
* {@link io.reactivex.rxjava3.core.Observable Observable}-, {@link io.reactivex.rxjava3.core.Single Single}-,
22+
* {@link io.reactivex.rxjava3.core.Maybe Maybe}- and {@link io.reactivex.rxjava3.core.Completable Completable}-based flows.
23+
* <p>
24+
* Available observer variants
25+
* <br>
26+
* <table border="1" style="border-collapse: collapse;" summary="The available observer types.">
27+
* <tr><td><b>Reactive type</b></td><td><b>Base interface</b></td><td><b>Simple</b></td><td><b>Disposable</b></td><td><b>Resource</b></td></tr>
28+
* <tr>
29+
* <td>{@link io.reactivex.rxjava3.core.Observable Observable}</td>
30+
* <td>{@link io.reactivex.rxjava3.core.Observer Observer}</td>
31+
* <td>{@link io.reactivex.rxjava3.observers.DefaultObserver DefaultObserver}</td>
32+
* <td>{@link io.reactivex.rxjava3.observers.DisposableObserver DisposableObserver}</td>
33+
* <td>{@link io.reactivex.rxjava3.observers.ResourceObserver DisposableObserver}</td>
34+
* </tr>
35+
* <tr>
36+
* <td>{@link io.reactivex.rxjava3.core.Maybe Maybe}</td>
37+
* <td>{@link io.reactivex.rxjava3.core.MaybeObserver MaybeObserver}</td>
38+
* <td>N/A</td>
39+
* <td>{@link io.reactivex.rxjava3.observers.DisposableMaybeObserver DisposableMaybeObserver}</td>
40+
* <td>{@link io.reactivex.rxjava3.observers.ResourceMaybeObserver DisposableMaybeObserver}</td>
41+
* </tr>
42+
* <tr>
43+
* <td>{@link io.reactivex.rxjava3.core.Single Single}</td>
44+
* <td>{@link io.reactivex.rxjava3.core.SingleObserver SingleObserver}</td>
45+
* <td>N/A</td>
46+
* <td>{@link io.reactivex.rxjava3.observers.DisposableSingleObserver DisposableSingleObserver}</td>
47+
* <td>{@link io.reactivex.rxjava3.observers.ResourceSingleObserver DisposableSingleObserver}</td>
48+
* </tr>
49+
* <tr>
50+
* <td>{@link io.reactivex.rxjava3.core.Completable Completable}</td>
51+
* <td>{@link io.reactivex.rxjava3.core.CompletableObserver CompletableObserver}</td>
52+
* <td>N/A</td>
53+
* <td>{@link io.reactivex.rxjava3.observers.DisposableCompletableObserver DisposableCompletableObserver}</td>
54+
* <td>{@link io.reactivex.rxjava3.observers.ResourceCompletableObserver DisposableCompletableObserver}</td>
55+
* </tr>
56+
* </table>
2357
*/
2458
package io.reactivex.rxjava3.observers;

Diff for: src/main/java/io/reactivex/rxjava3/subjects/package-info.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
*/
1616

1717
/**
18-
* Classes representing so-called hot sources, aka subjects, that implement a base reactive class and
18+
* Classes representing so-called hot sources, aka <strong>subjects</strong>, that implement a base reactive class and
1919
* the respective consumer type at once to allow forms of multicasting events to multiple
2020
* consumers as well as consuming another base reactive type of their kind.
2121
* <p>

Diff for: src/main/java/io/reactivex/rxjava3/subscribers/package-info.java

+5-4
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,10 @@
1515
*/
1616

1717
/**
18-
* Default wrappers and implementations for Subscriber-based consumer classes and interfaces,
19-
* including disposable and resource-tracking variants and
20-
* the {@link io.reactivex.rxjava3.subscribers.TestSubscriber} that allows unit testing
21-
* {@link io.reactivex.rxjava3.core.Flowable}-based flows.
18+
* Default wrappers and implementations for {@link org.reactivestreams.Subscriber Subscriber}-based consumer classes and interfaces,
19+
* including disposable ({@link io.reactivex.rxjava3.subscribers.DisposableSubscriber DisposableSubscriber}) and resource-tracking
20+
* ({@link io.reactivex.rxjava3.subscribers.ResourceSubscriber ResourceSubscriber})
21+
* variants and the {@link io.reactivex.rxjava3.subscribers.TestSubscriber TestSubscriber} that allows unit testing
22+
* {@link io.reactivex.rxjava3.core.Flowable Flowable}-based flows.
2223
*/
2324
package io.reactivex.rxjava3.subscribers;

0 commit comments

Comments
 (0)