in mobius-extras/src/main/java/com/spotify/mobius/extras/connections/DisconnectOnNullDimapConnection.java [60:79]
public void accept(A a) {
B b = aToB.apply(a);
if (b != null) {
if (currentDelegate == null) {
currentDelegate =
connectable.connect(
new Consumer<C>() {
@Override
public void accept(C c) {
final D d = cToD.apply(c);
output.accept(d);
}
});
}
currentDelegate.accept(b);
} else if (currentDelegate != null) {
currentDelegate.dispose();
currentDelegate = null;
}
}