No it isn't. Doesn't need to be serialized
Remove excludeSummarily()
Pass CompatibilityMode as a CompatibilityMode
Clarify and simplify: We convert COMPAT_CURRENT as early as possible
Check for COMPAT_CURRENT
Clarify and check.
It's up to the caller to get the compatibility mode right.
Fix the compatibility mode
Make sure we always report a URI even if LocalRequestOnly
Support calling onEncode twice, check for different keys
Call parent constructor, set realTime flag
Delete zero-arg constructors. These are NOT needed for serialization and can cause subtle bugs.
Add assertions
Improve error
Logging
Keep the persistent temp ID when converting from a PersistentTempFileBucket to a RAF -> hopefully fix losing files
Explain and don't call onResume twice for RAFs
Use ChosenBlockImpl
More robust.
Call removeFetchingKey etc in ChosenBlockImpl callbacks so that we always remove after we have at least tried to call the callback, avoid race conditions. Don't call removeFetchingKey etc elsewhere, use ChosenBlockImpl more places.