Skip to content

Commit fff2817

Browse files
committed
switch from AutoCloseable to Closeable for java 6.
UnsafeFunc0 now extends Callable.
1 parent 5d7995c commit fff2817

File tree

2 files changed

+9
-7
lines changed

2 files changed

+9
-7
lines changed

rxjava-contrib/rxjava-string/src/main/java/rx/observables/StringObservable.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@
3737
import java.nio.charset.CoderResult;
3838
import java.nio.charset.CodingErrorAction;
3939
import java.util.Arrays;
40+
import java.util.concurrent.Callable;
4041
import java.util.concurrent.atomic.AtomicBoolean;
4142
import java.util.regex.Pattern;
4243

@@ -55,7 +56,7 @@ public static Observable<byte[]> from(final InputStream i) {
5556
return from(i, 8 * 1024);
5657
}
5758

58-
private static class CloseableResource<S extends AutoCloseable> implements Subscription {
59+
private static class CloseableResource<S extends Closeable> implements Subscription {
5960
private final AtomicBoolean unsubscribed = new AtomicBoolean();
6061
private S closable;
6162

@@ -86,8 +87,8 @@ public boolean isUnsubscribed() {
8687
*
8788
* @param <R>
8889
*/
89-
public static interface UnsafeFunc0<R> {
90-
public R call() throws Throwable;
90+
public static interface UnsafeFunc0<R> extends Callable<R> {
91+
public R call() throws Exception;
9192
}
9293

9394
/**
@@ -103,7 +104,7 @@ public static interface UnsafeFunc0<R> {
103104
* Converts the {@link Closeable} resource into a {@link Observable} with {@link #from(InputStream)} or {@link #from(Reader)}
104105
* @return
105106
*/
106-
public static <R, S extends AutoCloseable> Observable<R> using(final UnsafeFunc0<S> resourceFactory,
107+
public static <R, S extends Closeable> Observable<R> using(final UnsafeFunc0<S> resourceFactory,
107108
final Func1<S, Observable<R>> observableFactory) {
108109
return Observable.using(new Func0<CloseableResource<S>>() {
109110
@Override

rxjava-contrib/rxjava-string/src/test/java/rx/observables/StringObservableTest.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@
5555
import java.nio.charset.MalformedInputException;
5656
import java.util.Arrays;
5757
import java.util.List;
58+
import java.util.concurrent.atomic.AtomicBoolean;
5859
import java.util.concurrent.atomic.AtomicInteger;
5960

6061
public class StringObservableTest {
@@ -303,7 +304,7 @@ public void testUsingCloseOnComplete() throws IOException {
303304

304305
using(new UnsafeFunc0<Reader>() {
305306
@Override
306-
public Reader call() throws Throwable {
307+
public Reader call() throws Exception {
307308
return reader;
308309
}
309310
}, new Func1<Reader, Observable<String>>() {
@@ -338,7 +339,7 @@ public void close() throws IOException {
338339

339340
using(new UnsafeFunc0<Reader>() {
340341
@Override
341-
public Reader call() throws Throwable {
342+
public Reader call() throws Exception {
342343
return reader;
343344
}
344345
}, new Func1<Reader, Observable<String>>() {
@@ -362,7 +363,7 @@ public void testUsingCloseOnUnsubscribe() throws IOException {
362363

363364
using(new UnsafeFunc0<Reader>() {
364365
@Override
365-
public Reader call() throws Throwable {
366+
public Reader call() throws Exception {
366367
return reader;
367368
}
368369
}, new Func1<Reader, Observable<String>>() {

0 commit comments

Comments
 (0)