Skip to content

Commit 76687d0

Browse files
committed
Hide HandlerThreadScheduler implementation detail.
1 parent 6371010 commit 76687d0

File tree

5 files changed

+17
-87
lines changed

5 files changed

+17
-87
lines changed

rxandroid/src/main/java/rx/android/concurrency/AndroidSchedulers.java

Lines changed: 0 additions & 37 deletions
This file was deleted.

rxandroid/src/main/java/rx/android/concurrency/HandlerThreadScheduler.java

Lines changed: 0 additions & 30 deletions
This file was deleted.

rxandroid/src/main/java/rx/android/schedulers/AndroidSchedulers.java

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,29 +18,25 @@
1818
import android.os.Looper;
1919

2020
/**
21-
* Schedulers that have Android specific functionality
21+
* Schedulers that have Android-specific functionality
2222
*/
23-
public class AndroidSchedulers {
24-
private AndroidSchedulers(){
23+
public final class AndroidSchedulers {
24+
private AndroidSchedulers() {
2525
throw new AssertionError("No instances");
2626
}
2727

2828
private static final Scheduler MAIN_THREAD_SCHEDULER =
2929
new HandlerThreadScheduler(new Handler(Looper.getMainLooper()));
3030

3131
/**
32-
* {@link Scheduler} which uses the provided {@link Handler} to execute an action
33-
* @param handler The handler that will be used when executing the action
34-
* @return A handler based scheduler
32+
* {@link Scheduler} which uses the provided {@link Handler} to execute actions.
3533
*/
3634
public static Scheduler handlerThread(final Handler handler) {
3735
return new HandlerThreadScheduler(handler);
3836
}
3937

4038
/**
41-
* {@link Scheduler} which will execute an action on the main Android UI thread.
42-
*
43-
* @return A Main {@link Looper} based scheduler
39+
* {@link Scheduler} which will execute actions on the Android UI thread.
4440
*/
4541
public static Scheduler mainThread() {
4642
return MAIN_THREAD_SCHEDULER;

rxandroid/src/main/java/rx/android/schedulers/HandlerThreadScheduler.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,18 +24,18 @@
2424
import android.os.Handler;
2525

2626
/**
27-
* Schedules actions to run on an Android Handler thread.
27+
* @deprecated Use {@link AndroidSchedulers#handlerThread}. This type will not be part of the
28+
* public API in a future release.
2829
*/
30+
@Deprecated
2931
public class HandlerThreadScheduler extends Scheduler {
3032

3133
private final Handler handler;
3234

3335
/**
34-
* Constructs a {@link HandlerThreadScheduler} using the given {@link Handler}
35-
*
36-
* @param handler
37-
* {@link Handler} to use when scheduling actions
36+
* @deprecated Use {@link AndroidSchedulers#handlerThread}.
3837
*/
38+
@Deprecated
3939
public HandlerThreadScheduler(Handler handler) {
4040
this.handler = handler;
4141
}

rxandroid/src/test/java/rx/android/schedulers/HandlerThreadSchedulerTest.java renamed to rxandroid/src/test/java/rx/android/schedulers/AndroidSchedulersTest.java

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -41,15 +41,15 @@
4141

4242
@RunWith(RobolectricTestRunner.class)
4343
@Config(manifest=Config.NONE)
44-
public class HandlerThreadSchedulerTest {
44+
public class AndroidSchedulersTest {
4545

4646
@Test
4747
public void shouldScheduleImmediateActionOnHandlerThread() {
4848
final Handler handler = mock(Handler.class);
4949
@SuppressWarnings("unchecked")
5050
final Action0 action = mock(Action0.class);
5151

52-
Scheduler scheduler = new HandlerThreadScheduler(handler);
52+
Scheduler scheduler = AndroidSchedulers.handlerThread(handler);
5353
Worker inner = scheduler.createWorker();
5454
inner.schedule(action);
5555

@@ -68,7 +68,7 @@ public void shouldScheduleDelayedActionOnHandlerThread() {
6868
@SuppressWarnings("unchecked")
6969
final Action0 action = mock(Action0.class);
7070

71-
Scheduler scheduler = new HandlerThreadScheduler(handler);
71+
Scheduler scheduler = AndroidSchedulers.handlerThread(handler);
7272
Worker inner = scheduler.createWorker();
7373
inner.schedule(action, 1L, TimeUnit.SECONDS);
7474

@@ -85,8 +85,9 @@ public void shouldScheduleDelayedActionOnHandlerThread() {
8585
public void shouldRemoveCallbacksFromHandlerWhenUnsubscribedSubscription() {
8686
final Handler handler = spy(new Handler());
8787
final Observable.OnSubscribe<Integer> onSubscribe = mock(Observable.OnSubscribe.class);
88-
final Subscription subscription = Observable.create(onSubscribe).subscribeOn(
89-
new HandlerThreadScheduler(handler)).subscribe();
88+
final Subscription subscription = Observable.create(onSubscribe)
89+
.subscribeOn(AndroidSchedulers.handlerThread(handler))
90+
.subscribe();
9091

9192
verify(onSubscribe).call(Matchers.any(Subscriber.class));
9293

@@ -100,7 +101,7 @@ public void shouldNotCallOnSubscribeWhenSubscriptionUnsubscribedBeforeDelay() {
100101
final Observable.OnSubscribe<Integer> onSubscribe = mock(Observable.OnSubscribe.class);
101102
final Handler handler = spy(new Handler());
102103

103-
final Scheduler scheduler = new HandlerThreadScheduler(handler);
104+
final Scheduler scheduler = AndroidSchedulers.handlerThread(handler);
104105
final Worker worker = spy(scheduler.createWorker());
105106

106107
final Scheduler spyScheduler = spy(scheduler);

0 commit comments

Comments
 (0)