Skip to content

Instantly share code, notes, and snippets.

@CodyEngel
Created April 15, 2017 00:12
Show Gist options
  • Save CodyEngel/348d4e0ec457ac071839404e7d1cf99a to your computer and use it in GitHub Desktop.
Save CodyEngel/348d4e0ec457ac071839404e7d1cf99a to your computer and use it in GitHub Desktop.
A singleton wrapper for managing a CompositeDisposable.
public class DisposableManager {
private static CompositeDisposable compositeDisposable;
public static void add(Disposable disposable) {
getCompositeDisposable().add(disposable);
}
public static void dispose() {
getCompositeDisposable().dispose();
}
public static int size() {
return getCompositeDisposable().size();
}
private static CompositeDisposable getCompositeDisposable() {
if (compositeDisposable == null || compositeDisposable.isDisposed()) {
compositeDisposable = new CompositeDisposable();
}
return compositeDisposable;
}
private DisposableManager() {}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment