io.reactivex.schedulers.TestScheduler
https://stackoverflow.com/questions/26699147/how-to-use-testscheduler-in-rxjava
[code language=”java”]
Observable<Data> memory = …;
Observable<Data> disk = …;
Observable<Data> network = …;
// Retrieve the first source with data
Observable<Data> source = Observable
.concat(memory, disk, network)
.first();
[/code]
Save data to cache
[code language=”java”]
Observable<Data> networkWithSave = network.doOnNext(data -> {
saveToDisk(data);
cacheInMemory(data);
});
Observable<Data> diskWithCache = disk.doOnNext(data -> {
cacheInMemory(data);
});
[/code]
Update data
[code language=”java”]
Observable<Data> source = Observable
.concat(memory, diskWithCache, networkWithSave)
.first(data -> data.isUpToDate());
[/code]
Migrate to Android Plugin for Gradle 3.0.0
Gradle – Using the Build Cache
[code language=”java”]
public class Foo {
public Foo() {
System.out.println("constructor called");
}
static {
System.out.println("static initializer called");
}
{
System.out.println("instance initializer called");
}
}
[/code]
[code language=”java”]
public static int f() {
try {
throw new RuntimeException();
} finally {
return 0;
}
}
[/code]
[code language=”java”]
new URL("http://www.yahoo.com").equals(new URL("http://209.191.93.52"))
[/code]
=true