Promote getLeasedBlobs() to be a public API.

This would allow apps to know which blobs they currently
hold a lease on and release any if they are running out
of lease quota.

Bug: 152219149
Test: atest --test-mapping apex/blobstore
Change-Id: I0141cfcd7cdbb83dbc75be11463ab90ee3c3f7cc
This commit is contained in:
Sudheer Shanka
2020-03-23 11:51:45 -07:00
parent 09b9570862
commit e75dcfbdfd
3 changed files with 3 additions and 5 deletions

View File

@@ -563,12 +563,10 @@ public class BlobStoreManager {
/**
* Return the {@link BlobHandle BlobHandles} corresponding to the data blobs that
* the calling app has acquired a lease on using {@link #acquireLease(BlobHandle, int)} or
* one of it's other variants.
* the calling app currently has a lease on.
*
* @hide
* @return a list of {@link BlobHandle BlobHandles} that the caller has a lease on.
*/
@TestApi
@NonNull
public List<BlobHandle> getLeasedBlobs() throws IOException {
try {

View File

@@ -7605,6 +7605,7 @@ package android.app.blob {
method public void acquireLease(@NonNull android.app.blob.BlobHandle, @IdRes int) throws java.io.IOException;
method public void acquireLease(@NonNull android.app.blob.BlobHandle, @NonNull CharSequence) throws java.io.IOException;
method @IntRange(from=1) public long createSession(@NonNull android.app.blob.BlobHandle) throws java.io.IOException;
method @NonNull public java.util.List<android.app.blob.BlobHandle> getLeasedBlobs() throws java.io.IOException;
method @IntRange(from=0) public long getRemainingLeaseQuotaBytes();
method @NonNull public android.os.ParcelFileDescriptor openBlob(@NonNull android.app.blob.BlobHandle) throws java.io.IOException;
method @NonNull public android.app.blob.BlobStoreManager.Session openSession(@IntRange(from=1) long) throws java.io.IOException;

View File

@@ -598,7 +598,6 @@ package android.app.blob {
public class BlobStoreManager {
method @Nullable public android.app.blob.LeaseInfo getLeaseInfo(@NonNull android.app.blob.BlobHandle) throws java.io.IOException;
method @NonNull public java.util.List<android.app.blob.BlobHandle> getLeasedBlobs() throws java.io.IOException;
method public void waitForIdle(long) throws java.lang.InterruptedException, java.util.concurrent.TimeoutException;
}