Use newly defined columns for directory names.
Instead of using Uri query parameters to configure directory names,
this moves to using real columns that we recently added.
Bug: 123967243, 115377970
Test: atest MediaProviderTests
Test: atest cts/tests/tests/provider/src/android/provider/cts/MediaStore*
Change-Id: I8aa2c65a7b3552cd1ef0b6371dfd52c0798db218
diff --git a/core/java/android/provider/MediaStore.java b/core/java/android/provider/MediaStore.java
index edaf7bb..2a04dfc 100644
--- a/core/java/android/provider/MediaStore.java
+++ b/core/java/android/provider/MediaStore.java
@@ -157,10 +157,6 @@
public static final String PARAM_DELETE_DATA = "deletedata";
/** {@hide} */
- public static final String PARAM_PRIMARY = "primary";
- /** {@hide} */
- public static final String PARAM_SECONDARY = "secondary";
- /** {@hide} */
public static final String PARAM_INCLUDE_PENDING = "includePending";
/** {@hide} */
public static final String PARAM_INCLUDE_TRASHED = "includeTrashed";
@@ -582,14 +578,7 @@
*/
public static @NonNull Uri createPending(@NonNull Context context,
@NonNull PendingParams params) {
- final Uri.Builder builder = params.insertUri.buildUpon();
- if (!TextUtils.isEmpty(params.primaryDirectory)) {
- builder.appendQueryParameter(PARAM_PRIMARY, params.primaryDirectory);
- }
- if (!TextUtils.isEmpty(params.secondaryDirectory)) {
- builder.appendQueryParameter(PARAM_SECONDARY, params.secondaryDirectory);
- }
- return context.getContentResolver().insert(builder.build(), params.insertValues);
+ return context.getContentResolver().insert(params.insertUri, params.insertValues);
}
/**
@@ -612,10 +601,6 @@
public final Uri insertUri;
/** {@hide} */
public final ContentValues insertValues;
- /** {@hide} */
- public String primaryDirectory;
- /** {@hide} */
- public String secondaryDirectory;
/**
* Create parameters that describe a pending media item.
@@ -657,7 +642,11 @@
* @see MediaColumns#PRIMARY_DIRECTORY
*/
public void setPrimaryDirectory(@Nullable String primaryDirectory) {
- this.primaryDirectory = primaryDirectory;
+ if (primaryDirectory == null) {
+ this.insertValues.remove(MediaColumns.PRIMARY_DIRECTORY);
+ } else {
+ this.insertValues.put(MediaColumns.PRIMARY_DIRECTORY, primaryDirectory);
+ }
}
/**
@@ -670,7 +659,11 @@
* @see MediaColumns#SECONDARY_DIRECTORY
*/
public void setSecondaryDirectory(@Nullable String secondaryDirectory) {
- this.secondaryDirectory = secondaryDirectory;
+ if (secondaryDirectory == null) {
+ this.insertValues.remove(MediaColumns.SECONDARY_DIRECTORY);
+ } else {
+ this.insertValues.put(MediaColumns.SECONDARY_DIRECTORY, secondaryDirectory);
+ }
}
/**