summaryrefslogtreecommitdiff
path: root/core/java/android
diff options
context:
space:
mode:
authorSudheer Shanka <sudheersai@google.com>2020-02-27 17:49:53 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2020-02-27 17:49:53 +0000
commit442399b1c19bd6d02a6be3aa45ed8a0e3887295d (patch)
tree361c71bec89b2f0e0cbd09cd8a688f9f747d9cf7 /core/java/android
parent14862018b9bc71a72163719027e1ca0118632080 (diff)
parent7d28b5bf8185250c41c50f34c430e4de25889354 (diff)
Merge "Include pending media as well when deleting mediastore entries." into rvc-dev
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/content/ContentResolver.java12
-rw-r--r--core/java/android/database/DatabaseUtils.java21
2 files changed, 33 insertions, 0 deletions
diff --git a/core/java/android/content/ContentResolver.java b/core/java/android/content/ContentResolver.java
index b748cfa775ed..c7f42cb85943 100644
--- a/core/java/android/content/ContentResolver.java
+++ b/core/java/android/content/ContentResolver.java
@@ -3827,6 +3827,18 @@ public abstract class ContentResolver implements ContentInterface {
return queryArgs;
}
+ /** @hide */
+ public static @NonNull Bundle includeSqlSelectionArgs(@NonNull Bundle queryArgs,
+ @Nullable String selection, @Nullable String[] selectionArgs) {
+ if (selection != null) {
+ queryArgs.putString(QUERY_ARG_SQL_SELECTION, selection);
+ }
+ if (selectionArgs != null) {
+ queryArgs.putStringArray(QUERY_ARG_SQL_SELECTION_ARGS, selectionArgs);
+ }
+ return queryArgs;
+ }
+
/**
* Returns structured sort args formatted as an SQL sort clause.
*
diff --git a/core/java/android/database/DatabaseUtils.java b/core/java/android/database/DatabaseUtils.java
index 4246b84dc52f..34cc856e000f 100644
--- a/core/java/android/database/DatabaseUtils.java
+++ b/core/java/android/database/DatabaseUtils.java
@@ -16,6 +16,7 @@
package android.database;
+import android.annotation.NonNull;
import android.annotation.Nullable;
import android.compat.annotation.UnsupportedAppUsage;
import android.content.ContentValues;
@@ -1548,4 +1549,24 @@ public class DatabaseUtils {
}
return -1;
}
+
+ /**
+ * Escape the given argument for use in a {@code LIKE} statement.
+ * @hide
+ */
+ public static String escapeForLike(@NonNull String arg) {
+ // Shamelessly borrowed from com.android.providers.media.util.DatabaseUtils
+ final StringBuilder sb = new StringBuilder();
+ for (int i = 0; i < arg.length(); i++) {
+ final char c = arg.charAt(i);
+ switch (c) {
+ case '%': sb.append('\\');
+ break;
+ case '_': sb.append('\\');
+ break;
+ }
+ sb.append(c);
+ }
+ return sb.toString();
+ }
}