A CAS storage provider that stores files as blobs on disk.
Return True if the blob with the given instance/digest exists.
Return a file-like object containing the blob. Most implementations will read the entire file into memory and return a BytesIO object. Eventually this should be corrected to handle files which cannot fit into memory.
If the blob isn’t present in storage, return None.
Delete the blob from storage if it’s present.
Return a file-like object to which a blob’s contents could be written.
Commit the write operation. write_session must be an object returned by begin_write.
The storage object is not responsible for verifying that the data written to the write_session actually matches the digest. The caller must do that.