Skip to content

Commit 31dd7bc

Browse files
committed
修改Rxbus
1 parent dff7dae commit 31dd7bc

File tree

3 files changed

+487
-415
lines changed

3 files changed

+487
-415
lines changed

Diff for: common/src/main/java/com/joker/rxweather/common/rx/rxbus/RxBus.java

+34-31
Original file line numberDiff line numberDiff line change
@@ -10,45 +10,48 @@
1010
*/
1111
public class RxBus {
1212

13-
private static final String TAG = RxBus.class.getSimpleName();
13+
private static final String TAG = RxBus.class.getSimpleName();
1414

15-
private SerializedSubject<Object, Object> rxBus;
16-
private SerializedSubject<Object, Object> rxStickBus;
15+
private SerializedSubject<Object, Object> rxBus;
16+
private SerializedSubject<Object, Object> rxStickBus;
1717

18-
@SuppressWarnings("unchecked") private RxBus() {
19-
rxBus = new SerializedSubject(PublishSubject.create());
20-
rxStickBus = new SerializedSubject(BehaviorSubject.create());
21-
}
18+
@SuppressWarnings("unchecked")
19+
private RxBus() {
20+
rxBus = new SerializedSubject(PublishSubject.create());
21+
rxStickBus = new SerializedSubject(BehaviorSubject.create());
22+
}
2223

23-
private static class SingletonHolder {
24-
private static RxBus instance = new RxBus();
25-
}
24+
private static class SingletonHolder {
2625

27-
public static RxBus getInstance() {
28-
return SingletonHolder.instance;
29-
}
26+
private static RxBus instance = new RxBus();
27+
}
3028

31-
public void postEvent(Object event) {
32-
rxBus.onNext(event);
33-
}
29+
public static RxBus getInstance() {
30+
return SingletonHolder.instance;
31+
}
3432

35-
public void postStickEvent(Object event) {
36-
rxStickBus.onNext(event);
37-
}
33+
public void postEvent(Object event) {
34+
if (this.hasObservers()) rxBus.onNext(event);
35+
}
3836

39-
public <T> Observable<T> toObservable(Class<T> type) {
40-
return rxBus.asObservable().ofType(type).onBackpressureBuffer();
41-
}
37+
public void postStickEvent(Object event) {
38+
rxStickBus.onNext(event);
39+
}
4240

43-
public <T> Observable<T> toStickObservable(Class<T> type) {
44-
return rxStickBus.asObservable().ofType(type).onBackpressureBuffer();
45-
}
41+
public <T> Observable<T> toObservable(Class<T> type) {
42+
return rxBus.asObservable().ofType(type).onBackpressureBuffer();
43+
}
4644

47-
public boolean hasObservers() {
48-
return rxBus.hasObservers();
49-
}
45+
public <T> Observable<T> toStickObservable(Class<T> type) {
46+
return rxStickBus.asObservable().ofType(type).onBackpressureBuffer();
47+
}
5048

51-
public boolean hasStickObservers() {
52-
return rxStickBus.hasObservers();
53-
}
49+
private boolean hasObservers() {
50+
return rxBus.hasObservers();
51+
}
52+
53+
@Deprecated
54+
public boolean hasStickObservers() {
55+
return rxStickBus.hasObservers();
56+
}
5457
}

0 commit comments

Comments
 (0)