Skip to content

Commit ac26e42

Browse files
use Java Subject<T, R> as contravariant in T and covariant in R
1 parent 41c91fb commit ac26e42

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

rxjava-core/src/main/java/rx/Observable.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -397,7 +397,7 @@ public Subscription subscribe(final Action1<? super T> onNext, final Action1<Thr
397397
* @return a {@link ConnectableObservable} that upon connection causes the source Observable to
398398
* push results into the specified {@link Subject}
399399
*/
400-
public <R> ConnectableObservable<R> multicast(Subject<T, R> subject) {
400+
public <R> ConnectableObservable<R> multicast(Subject<? super T, ? extends R> subject) {
401401
return OperationMulticast.multicast(this, subject);
402402
}
403403

rxjava-core/src/main/java/rx/operators/OperationMulticast.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,19 +27,19 @@
2727
import rx.subjects.Subject;
2828

2929
public class OperationMulticast {
30-
public static <T, R> ConnectableObservable<R> multicast(Observable<? extends T> source, final Subject<T, R> subject) {
30+
public static <T, R> ConnectableObservable<R> multicast(Observable<? extends T> source, final Subject<? super T, ? extends R> subject) {
3131
return new MulticastConnectableObservable<T, R>(source, subject);
3232
}
3333

3434
private static class MulticastConnectableObservable<T, R> extends ConnectableObservable<R> {
3535
private final Object lock = new Object();
3636

3737
private final Observable<? extends T> source;
38-
private final Subject<T, R> subject;
38+
private final Subject<? super T, ? extends R> subject;
3939

4040
private Subscription subscription;
4141

42-
public MulticastConnectableObservable(Observable<? extends T> source, final Subject<T, R> subject) {
42+
public MulticastConnectableObservable(Observable<? extends T> source, final Subject<? super T, ? extends R> subject) {
4343
super(new OnSubscribeFunc<R>() {
4444
@Override
4545
public Subscription onSubscribe(Observer<? super R> observer) {

0 commit comments

Comments
 (0)