22
22
import io .reactivex .internal .subscriptions .SubscriptionHelper ;
23
23
import io .reactivex .internal .util .BackpressureHelper ;
24
24
25
- public final class FlowableMapNotification <T , R > extends Flowable <Publisher <? extends R >> {
25
+ public final class FlowableMapNotification <T , R > extends Flowable <R > {
26
26
27
27
final Publisher <T > source ;
28
28
29
- final Function <? super T , ? extends Publisher <? extends R > > onNextMapper ;
30
- final Function <? super Throwable , ? extends Publisher <? extends R > > onErrorMapper ;
31
- final Supplier <? extends Publisher <? extends R > > onCompleteSupplier ;
29
+ final Function <? super T , ? extends R > onNextMapper ;
30
+ final Function <? super Throwable , ? extends R > onErrorMapper ;
31
+ final Supplier <? extends R > onCompleteSupplier ;
32
32
33
33
public FlowableMapNotification (
34
34
Publisher <T > source ,
35
- Function <? super T , ? extends Publisher <? extends R > > onNextMapper ,
36
- Function <? super Throwable , ? extends Publisher <? extends R > > onErrorMapper ,
37
- Supplier <? extends Publisher <? extends R > > onCompleteSupplier ) {
35
+ Function <? super T , ? extends R > onNextMapper ,
36
+ Function <? super Throwable , ? extends R > onErrorMapper ,
37
+ Supplier <? extends R > onCompleteSupplier ) {
38
38
this .source = source ;
39
39
this .onNextMapper = onNextMapper ;
40
40
this .onErrorMapper = onErrorMapper ;
41
41
this .onCompleteSupplier = onCompleteSupplier ;
42
42
}
43
43
44
44
@ Override
45
- protected void subscribeActual (Subscriber <? super Publisher <? extends R > > s ) {
45
+ protected void subscribeActual (Subscriber <? super R > s ) {
46
46
source .subscribe (new MapNotificationSubscriber <T , R >(s , onNextMapper , onErrorMapper , onCompleteSupplier ));
47
47
}
48
48
@@ -53,14 +53,14 @@ static final class MapNotificationSubscriber<T, R>
53
53
/** */
54
54
private static final long serialVersionUID = 2757120512858778108L ;
55
55
56
- final Subscriber <? super Publisher <? extends R > > actual ;
57
- final Function <? super T , ? extends Publisher <? extends R > > onNextMapper ;
58
- final Function <? super Throwable , ? extends Publisher <? extends R > > onErrorMapper ;
59
- final Supplier <? extends Publisher <? extends R > > onCompleteSupplier ;
56
+ final Subscriber <? super R > actual ;
57
+ final Function <? super T , ? extends R > onNextMapper ;
58
+ final Function <? super Throwable , ? extends R > onErrorMapper ;
59
+ final Supplier <? extends R > onCompleteSupplier ;
60
60
61
61
Subscription s ;
62
62
63
- Publisher <? extends R > value ;
63
+ R value ;
64
64
65
65
volatile boolean done ;
66
66
@@ -71,10 +71,10 @@ static final class MapNotificationSubscriber<T, R>
71
71
static final int HAS_REQUEST_NO_VALUE = 2 ;
72
72
static final int HAS_REQUEST_HAS_VALUE = 3 ;
73
73
74
- public MapNotificationSubscriber (Subscriber <? super Publisher <? extends R > > actual ,
75
- Function <? super T , ? extends Publisher <? extends R > > onNextMapper ,
76
- Function <? super Throwable , ? extends Publisher <? extends R > > onErrorMapper ,
77
- Supplier <? extends Publisher <? extends R > > onCompleteSupplier ) {
74
+ public MapNotificationSubscriber (Subscriber <? super R > actual ,
75
+ Function <? super T , ? extends R > onNextMapper ,
76
+ Function <? super Throwable , ? extends R > onErrorMapper ,
77
+ Supplier <? extends R > onCompleteSupplier ) {
78
78
this .actual = actual ;
79
79
this .onNextMapper = onNextMapper ;
80
80
this .onErrorMapper = onErrorMapper ;
@@ -91,7 +91,7 @@ public void onSubscribe(Subscription s) {
91
91
92
92
@ Override
93
93
public void onNext (T t ) {
94
- Publisher <? extends R > p ;
94
+ R p ;
95
95
96
96
try {
97
97
p = onNextMapper .apply (t );
@@ -115,7 +115,7 @@ public void onNext(T t) {
115
115
116
116
@ Override
117
117
public void onError (Throwable t ) {
118
- Publisher <? extends R > p ;
118
+ R p ;
119
119
120
120
try {
121
121
p = onErrorMapper .apply (t );
@@ -134,7 +134,7 @@ public void onError(Throwable t) {
134
134
135
135
@ Override
136
136
public void onComplete () {
137
- Publisher <? extends R > p ;
137
+ R p ;
138
138
139
139
try {
140
140
p = onCompleteSupplier .get ();
@@ -152,7 +152,7 @@ public void onComplete() {
152
152
}
153
153
154
154
155
- void tryEmit (Publisher <? extends R > p ) {
155
+ void tryEmit (R p ) {
156
156
long r = get ();
157
157
if (r != 0L ) {
158
158
actual .onNext (p );
@@ -197,7 +197,7 @@ public void request(long n) {
197
197
} else
198
198
if (s == NO_REQUEST_HAS_VALUE ) {
199
199
if (state .compareAndSet (NO_REQUEST_HAS_VALUE , HAS_REQUEST_HAS_VALUE )) {
200
- Publisher <? extends R > p = value ;
200
+ R p = value ;
201
201
value = null ;
202
202
actual .onNext (p );
203
203
actual .onComplete ();
0 commit comments