Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d551877f authored by Jeff Sharkey's avatar Jeff Sharkey Committed by android-build-merger
Browse files

Revert SQLiteQueryBuilder for now.

am: 6c90f1de

Change-Id: Ib8bfccd0d088b1a4c453b62c6527ca14cbadee41
parents 1fe951bf 6c90f1de
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -261,6 +261,13 @@ public abstract class ContentResolver {
     */
    public static final String QUERY_ARG_SQL_SORT_ORDER = "android:query-arg-sql-sort-order";

    /** {@hide} */
    public static final String QUERY_ARG_SQL_GROUP_BY = "android:query-arg-sql-group-by";
    /** {@hide} */
    public static final String QUERY_ARG_SQL_HAVING = "android:query-arg-sql-having";
    /** {@hide} */
    public static final String QUERY_ARG_SQL_LIMIT = "android:query-arg-sql-limit";

    /**
     * Specifies the list of columns against which to sort results. When first column values
     * are identical, records are then sorted based on second column values, and so on.
+68 −52
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ package android.content;
import android.annotation.UnsupportedAppUsage;
import android.os.Parcel;
import android.os.Parcelable;
import android.util.ArrayMap;
import android.util.Log;

import java.util.ArrayList;
@@ -33,17 +34,21 @@ import java.util.Set;
public final class ContentValues implements Parcelable {
    public static final String TAG = "ContentValues";

    /** Holds the actual values */
    /**
     * @hide
     * @deprecated kept around for lame people doing reflection
     */
    @Deprecated
    @UnsupportedAppUsage
    private HashMap<String, Object> mValues;

    private final ArrayMap<String, Object> mMap;

    /**
     * Creates an empty set of values using the default initial size
     */
    public ContentValues() {
        // Choosing a default size of 8 based on analysis of typical
        // consumption by applications.
        mValues = new HashMap<String, Object>(8);
        mMap = new ArrayMap<>();
    }

    /**
@@ -52,7 +57,7 @@ public final class ContentValues implements Parcelable {
     * @param size the initial size of the set of values
     */
    public ContentValues(int size) {
        mValues = new HashMap<String, Object>(size, 1.0f);
        mMap = new ArrayMap<>(size);
    }

    /**
@@ -61,19 +66,24 @@ public final class ContentValues implements Parcelable {
     * @param from the values to copy
     */
    public ContentValues(ContentValues from) {
        mValues = new HashMap<String, Object>(from.mValues);
        mMap = new ArrayMap<>(from.mMap);
    }

    /**
     * Creates a set of values copied from the given HashMap. This is used
     * by the Parcel unmarshalling code.
     *
     * @param values the values to start with
     * {@hide}
     * @hide
     * @deprecated kept around for lame people doing reflection
     */
    @Deprecated
    @UnsupportedAppUsage
    private ContentValues(HashMap<String, Object> values) {
        mValues = values;
    private ContentValues(HashMap<String, Object> from) {
        mMap = new ArrayMap<>();
        mMap.putAll(from);
    }

    /** {@hide} */
    private ContentValues(Parcel in) {
        mMap = new ArrayMap<>(in.readInt());
        in.readArrayMap(mMap, null);
    }

    @Override
@@ -81,12 +91,17 @@ public final class ContentValues implements Parcelable {
        if (!(object instanceof ContentValues)) {
            return false;
        }
        return mValues.equals(((ContentValues) object).mValues);
        return mMap.equals(((ContentValues) object).mMap);
    }

    /** {@hide} */
    public ArrayMap<String, Object> getValues() {
        return mMap;
    }

    @Override
    public int hashCode() {
        return mValues.hashCode();
        return mMap.hashCode();
    }

    /**
@@ -96,7 +111,7 @@ public final class ContentValues implements Parcelable {
     * @param value the data for the value to put
     */
    public void put(String key, String value) {
        mValues.put(key, value);
        mMap.put(key, value);
    }

    /**
@@ -105,7 +120,7 @@ public final class ContentValues implements Parcelable {
     * @param other the ContentValues from which to copy
     */
    public void putAll(ContentValues other) {
        mValues.putAll(other.mValues);
        mMap.putAll(other.mMap);
    }

    /**
@@ -115,7 +130,7 @@ public final class ContentValues implements Parcelable {
     * @param value the data for the value to put
     */
    public void put(String key, Byte value) {
        mValues.put(key, value);
        mMap.put(key, value);
    }

    /**
@@ -125,7 +140,7 @@ public final class ContentValues implements Parcelable {
     * @param value the data for the value to put
     */
    public void put(String key, Short value) {
        mValues.put(key, value);
        mMap.put(key, value);
    }

    /**
@@ -135,7 +150,7 @@ public final class ContentValues implements Parcelable {
     * @param value the data for the value to put
     */
    public void put(String key, Integer value) {
        mValues.put(key, value);
        mMap.put(key, value);
    }

    /**
@@ -145,7 +160,7 @@ public final class ContentValues implements Parcelable {
     * @param value the data for the value to put
     */
    public void put(String key, Long value) {
        mValues.put(key, value);
        mMap.put(key, value);
    }

    /**
@@ -155,7 +170,7 @@ public final class ContentValues implements Parcelable {
     * @param value the data for the value to put
     */
    public void put(String key, Float value) {
        mValues.put(key, value);
        mMap.put(key, value);
    }

    /**
@@ -165,7 +180,7 @@ public final class ContentValues implements Parcelable {
     * @param value the data for the value to put
     */
    public void put(String key, Double value) {
        mValues.put(key, value);
        mMap.put(key, value);
    }

    /**
@@ -175,7 +190,7 @@ public final class ContentValues implements Parcelable {
     * @param value the data for the value to put
     */
    public void put(String key, Boolean value) {
        mValues.put(key, value);
        mMap.put(key, value);
    }

    /**
@@ -185,7 +200,7 @@ public final class ContentValues implements Parcelable {
     * @param value the data for the value to put
     */
    public void put(String key, byte[] value) {
        mValues.put(key, value);
        mMap.put(key, value);
    }

    /**
@@ -194,7 +209,7 @@ public final class ContentValues implements Parcelable {
     * @param key the name of the value to make null
     */
    public void putNull(String key) {
        mValues.put(key, null);
        mMap.put(key, null);
    }

    /**
@@ -203,7 +218,7 @@ public final class ContentValues implements Parcelable {
     * @return the number of values
     */
    public int size() {
        return mValues.size();
        return mMap.size();
    }

    /**
@@ -214,7 +229,7 @@ public final class ContentValues implements Parcelable {
     * TODO: consider exposing this new method publicly
     */
    public boolean isEmpty() {
        return mValues.isEmpty();
        return mMap.isEmpty();
    }

    /**
@@ -223,14 +238,14 @@ public final class ContentValues implements Parcelable {
     * @param key the name of the value to remove
     */
    public void remove(String key) {
        mValues.remove(key);
        mMap.remove(key);
    }

    /**
     * Removes all values.
     */
    public void clear() {
        mValues.clear();
        mMap.clear();
    }

    /**
@@ -240,7 +255,7 @@ public final class ContentValues implements Parcelable {
     * @return {@code true} if the value is present, {@code false} otherwise
     */
    public boolean containsKey(String key) {
        return mValues.containsKey(key);
        return mMap.containsKey(key);
    }

    /**
@@ -252,7 +267,7 @@ public final class ContentValues implements Parcelable {
     *         was previously added with the given {@code key}
     */
    public Object get(String key) {
        return mValues.get(key);
        return mMap.get(key);
    }

    /**
@@ -262,7 +277,7 @@ public final class ContentValues implements Parcelable {
     * @return the String for the value
     */
    public String getAsString(String key) {
        Object value = mValues.get(key);
        Object value = mMap.get(key);
        return value != null ? value.toString() : null;
    }

@@ -273,7 +288,7 @@ public final class ContentValues implements Parcelable {
     * @return the Long value, or {@code null} if the value is missing or cannot be converted
     */
    public Long getAsLong(String key) {
        Object value = mValues.get(key);
        Object value = mMap.get(key);
        try {
            return value != null ? ((Number) value).longValue() : null;
        } catch (ClassCastException e) {
@@ -298,7 +313,7 @@ public final class ContentValues implements Parcelable {
     * @return the Integer value, or {@code null} if the value is missing or cannot be converted
     */
    public Integer getAsInteger(String key) {
        Object value = mValues.get(key);
        Object value = mMap.get(key);
        try {
            return value != null ? ((Number) value).intValue() : null;
        } catch (ClassCastException e) {
@@ -323,7 +338,7 @@ public final class ContentValues implements Parcelable {
     * @return the Short value, or {@code null} if the value is missing or cannot be converted
     */
    public Short getAsShort(String key) {
        Object value = mValues.get(key);
        Object value = mMap.get(key);
        try {
            return value != null ? ((Number) value).shortValue() : null;
        } catch (ClassCastException e) {
@@ -348,7 +363,7 @@ public final class ContentValues implements Parcelable {
     * @return the Byte value, or {@code null} if the value is missing or cannot be converted
     */
    public Byte getAsByte(String key) {
        Object value = mValues.get(key);
        Object value = mMap.get(key);
        try {
            return value != null ? ((Number) value).byteValue() : null;
        } catch (ClassCastException e) {
@@ -373,7 +388,7 @@ public final class ContentValues implements Parcelable {
     * @return the Double value, or {@code null} if the value is missing or cannot be converted
     */
    public Double getAsDouble(String key) {
        Object value = mValues.get(key);
        Object value = mMap.get(key);
        try {
            return value != null ? ((Number) value).doubleValue() : null;
        } catch (ClassCastException e) {
@@ -398,7 +413,7 @@ public final class ContentValues implements Parcelable {
     * @return the Float value, or {@code null} if the value is missing or cannot be converted
     */
    public Float getAsFloat(String key) {
        Object value = mValues.get(key);
        Object value = mMap.get(key);
        try {
            return value != null ? ((Number) value).floatValue() : null;
        } catch (ClassCastException e) {
@@ -423,7 +438,7 @@ public final class ContentValues implements Parcelable {
     * @return the Boolean value, or {@code null} if the value is missing or cannot be converted
     */
    public Boolean getAsBoolean(String key) {
        Object value = mValues.get(key);
        Object value = mMap.get(key);
        try {
            return (Boolean) value;
        } catch (ClassCastException e) {
@@ -451,7 +466,7 @@ public final class ContentValues implements Parcelable {
     *         {@code byte[]}
     */
    public byte[] getAsByteArray(String key) {
        Object value = mValues.get(key);
        Object value = mMap.get(key);
        if (value instanceof byte[]) {
            return (byte[]) value;
        } else {
@@ -465,7 +480,7 @@ public final class ContentValues implements Parcelable {
     * @return a set of all of the keys and values
     */
    public Set<Map.Entry<String, Object>> valueSet() {
        return mValues.entrySet();
        return mMap.entrySet();
    }

    /**
@@ -474,30 +489,31 @@ public final class ContentValues implements Parcelable {
     * @return a set of all of the keys
     */
    public Set<String> keySet() {
        return mValues.keySet();
        return mMap.keySet();
    }

    public static final Parcelable.Creator<ContentValues> CREATOR =
            new Parcelable.Creator<ContentValues>() {
        @SuppressWarnings({"deprecation", "unchecked"})
        @Override
        public ContentValues createFromParcel(Parcel in) {
            // TODO - what ClassLoader should be passed to readHashMap?
            HashMap<String, Object> values = in.readHashMap(null);
            return new ContentValues(values);
            return new ContentValues(in);
        }

        @Override
        public ContentValues[] newArray(int size) {
            return new ContentValues[size];
        }
    };

    @Override
    public int describeContents() {
        return 0;
    }

    @SuppressWarnings("deprecation")
    @Override
    public void writeToParcel(Parcel parcel, int flags) {
        parcel.writeMap(mValues);
        parcel.writeInt(mMap.size());
        parcel.writeArrayMap(mMap);
    }

    /**
@@ -507,7 +523,7 @@ public final class ContentValues implements Parcelable {
    @Deprecated
    @UnsupportedAppUsage
    public void putStringArrayList(String key, ArrayList<String> value) {
        mValues.put(key, value);
        mMap.put(key, value);
    }

    /**
@@ -518,7 +534,7 @@ public final class ContentValues implements Parcelable {
    @Deprecated
    @UnsupportedAppUsage
    public ArrayList<String> getStringArrayList(String key) {
        return (ArrayList<String>) mValues.get(key);
        return (ArrayList<String>) mMap.get(key);
    }

    /**
@@ -528,7 +544,7 @@ public final class ContentValues implements Parcelable {
    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        for (String name : mValues.keySet()) {
        for (String name : mMap.keySet()) {
            String value = getAsString(name);
            if (sb.length() > 0) sb.append(" ");
            sb.append(name + "=" + value);
+2 −1
Original line number Diff line number Diff line
@@ -193,8 +193,9 @@ public final class SQLiteDatabase extends SQLiteClosable {
     */
    public static final int CONFLICT_NONE = 0;

    /** {@hide} */
    @UnsupportedAppUsage
    private static final String[] CONFLICT_VALUES = new String[]
    public static final String[] CONFLICT_VALUES = new String[]
            {"", " OR ROLLBACK ", " OR ABORT ", " OR FAIL ", " OR IGNORE ", " OR REPLACE "};

    /**
+1036 −0

File added.

Preview size limit exceeded, changes collapsed.

+17 −0
Original line number Diff line number Diff line
@@ -308,6 +308,23 @@ public class ArrayUtils {
        return array;
    }

    @SuppressWarnings("unchecked")
    public static @NonNull <T> T[] concat(Class<T> kind, @Nullable T[] a, @Nullable T[] b) {
        final int an = (a != null) ? a.length : 0;
        final int bn = (b != null) ? b.length : 0;
        if (an == 0 && bn == 0) {
            if (kind == String.class) {
                return (T[]) EmptyArray.STRING;
            } else if (kind == Object.class) {
                return (T[]) EmptyArray.OBJECT;
            }
        }
        final T[] res = (T[]) Array.newInstance(kind, an + bn);
        if (an > 0) System.arraycopy(a, 0, res, 0, an);
        if (bn > 0) System.arraycopy(b, 0, res, an, bn);
        return res;
    }

    /**
     * Adds value to given array if not already present, providing set-like
     * behavior.
Loading