AutoDispose
Automatic binding+disposal of RxJava streams.
uber.github.io/AutoDispose
License
-------Copyright (C) 2017 Uber Technologies
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
All modules:
AutoDispose is an RxJava 2 tool for automatically binding the execution of RxJava 2 streams to a provided scope via disposal/cancellation.
Android components for AutoDispose.
androidx-lifecycle
extensions for AutoDispose.
Extension functions to interop ScopeProvider
/Completable
and CoroutineScope
, as well as autoDispose(CoroutineScope)
extension functions on RxJava types.
A common use case for this is objects that have implicit lifecycles, such as Android's Activity
, Fragment
, and View
classes. Internally at subscription-time, AutoDispose
will resolve a CompletableSource
representation of the target end
event in the lifecycle, and exposes an API to dictate what corresponding events are for the current lifecycle state (e.g. ATTACH
->DETACH
). This also allows you to enforce lifecycle boundary requirements, and by default will error if the lifecycle has either not started yet or has already ended.
Lint checks for AutoDispose. See full docs at https://uber.github.io/AutoDispose/lint-check/