Making CursorWindowAllocationException public

Exposing CursorWindowAllocationException to access it
from Bluetooth PBAP.

Tag: #feature
Bug: 211851706
Test: manual
Change-Id: I9a2c4217e5556f7b8ab10c3884a0d3e9b6a4fe36
This commit is contained in:
Etienne Ruffieux
2022-01-28 17:59:42 +00:00
parent c117711232
commit 4c1c4ee37e
3 changed files with 12 additions and 3 deletions

View File

@@ -12953,6 +12953,10 @@ package android.database {
field @NonNull public static final android.os.Parcelable.Creator<android.database.CursorWindow> CREATOR;
}
public class CursorWindowAllocationException extends java.lang.RuntimeException {
ctor public CursorWindowAllocationException(@NonNull String);
}
public class CursorWrapper implements android.database.Cursor {
ctor public CursorWrapper(android.database.Cursor);
method public void close();

View File

@@ -131,11 +131,16 @@ public class CursorWindow extends SQLiteClosable implements Parcelable {
*
* @param name The name of the cursor window, or null if none.
* @param windowSizeBytes Size of cursor window in bytes.
* @throws IllegalArgumentException if {@code windowSizeBytes} is less than 0
* @throws AssertionError if created window pointer is 0
* <p><strong>Note:</strong> Memory is dynamically allocated as data rows are added to the
* window. Depending on the amount of data stored, the actual amount of memory allocated can be
* lower than specified size, but cannot exceed it.
*/
public CursorWindow(String name, @BytesLong long windowSizeBytes) {
if (windowSizeBytes < 0) {
throw new IllegalArgumentException("Window size cannot be less than 0");
}
mStartPos = 0;
mName = name != null && name.length() != 0 ? name : "<unnamed>";
mWindowPtr = nativeCreate(mName, (int) windowSizeBytes);

View File

@@ -16,14 +16,14 @@
package android.database;
import android.annotation.NonNull;
/**
* This exception is thrown when a CursorWindow couldn't be allocated,
* most probably due to memory not being available.
*
* @hide
*/
public class CursorWindowAllocationException extends RuntimeException {
public CursorWindowAllocationException(String description) {
public CursorWindowAllocationException(@NonNull String description) {
super(description);
}
}