diff options
| author | The Android Open Source Project <initial-contribution@android.com> | 2009-03-03 18:28:45 -0800 |
|---|---|---|
| committer | The Android Open Source Project <initial-contribution@android.com> | 2009-03-03 18:28:45 -0800 |
| commit | d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 (patch) | |
| tree | 4b825dc642cb6eb9a060e54bf8d69288fbee4904 /core/java/android/content/ContentValues.java | |
| parent | 076357b8567458d4b6dfdcf839ef751634cd2bfb (diff) | |
auto import from //depot/cupcake/@135843
Diffstat (limited to 'core/java/android/content/ContentValues.java')
| -rw-r--r-- | core/java/android/content/ContentValues.java | 501 |
1 files changed, 0 insertions, 501 deletions
diff --git a/core/java/android/content/ContentValues.java b/core/java/android/content/ContentValues.java deleted file mode 100644 index 532cc035d095..000000000000 --- a/core/java/android/content/ContentValues.java +++ /dev/null @@ -1,501 +0,0 @@ -/* - * Copyright (C) 2007 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package android.content; - -import android.os.Parcel; -import android.os.Parcelable; -import android.util.Log; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Map; -import java.util.Set; - -/** - * This class is used to store a set of values that the {@link ContentResolver} - * can process. - */ -public final class ContentValues implements Parcelable { - public static final String TAG = "ContentValues"; - - /** Holds the actual values */ - private HashMap<String, Object> mValues; - - /** - * 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); - } - - /** - * Creates an empty set of values using the given initial size - * - * @param size the initial size of the set of values - */ - public ContentValues(int size) { - mValues = new HashMap<String, Object>(size, 1.0f); - } - - /** - * Creates a set of values copied from the given set - * - * @param from the values to copy - */ - public ContentValues(ContentValues from) { - mValues = new HashMap<String, Object>(from.mValues); - } - - /** - * Creates a set of values copied from the given HashMap. This is used - * by the Parcel unmarshalling code. - * - * @param from the values to start with - * {@hide} - */ - private ContentValues(HashMap<String, Object> values) { - mValues = values; - } - - @Override - public boolean equals(Object object) { - if (!(object instanceof ContentValues)) { - return false; - } - return mValues.equals(((ContentValues) object).mValues); - } - - @Override - public int hashCode() { - return mValues.hashCode(); - } - - /** - * Adds a value to the set. - * - * @param key the name of the value to put - * @param value the data for the value to put - */ - public void put(String key, String value) { - mValues.put(key, value); - } - - /** - * Adds all values from the passed in ContentValues. - * - * @param other the ContentValues from which to copy - */ - public void putAll(ContentValues other) { - mValues.putAll(other.mValues); - } - - /** - * Adds a value to the set. - * - * @param key the name of the value to put - * @param value the data for the value to put - */ - public void put(String key, Byte value) { - mValues.put(key, value); - } - - /** - * Adds a value to the set. - * - * @param key the name of the value to put - * @param value the data for the value to put - */ - public void put(String key, Short value) { - mValues.put(key, value); - } - - /** - * Adds a value to the set. - * - * @param key the name of the value to put - * @param value the data for the value to put - */ - public void put(String key, Integer value) { - mValues.put(key, value); - } - - /** - * Adds a value to the set. - * - * @param key the name of the value to put - * @param value the data for the value to put - */ - public void put(String key, Long value) { - mValues.put(key, value); - } - - /** - * Adds a value to the set. - * - * @param key the name of the value to put - * @param value the data for the value to put - */ - public void put(String key, Float value) { - mValues.put(key, value); - } - - /** - * Adds a value to the set. - * - * @param key the name of the value to put - * @param value the data for the value to put - */ - public void put(String key, Double value) { - mValues.put(key, value); - } - - /** - * Adds a value to the set. - * - * @param key the name of the value to put - * @param value the data for the value to put - */ - public void put(String key, Boolean value) { - mValues.put(key, value); - } - - /** - * Adds a value to the set. - * - * @param key the name of the value to put - * @param value the data for the value to put - */ - public void put(String key, byte[] value) { - mValues.put(key, value); - } - - /** - * Adds a null value to the set. - * - * @param key the name of the value to make null - */ - public void putNull(String key) { - mValues.put(key, null); - } - - /** - * Returns the number of values. - * - * @return the number of values - */ - public int size() { - return mValues.size(); - } - - /** - * Remove a single value. - * - * @param key the name of the value to remove - */ - public void remove(String key) { - mValues.remove(key); - } - - /** - * Removes all values. - */ - public void clear() { - mValues.clear(); - } - - /** - * Returns true if this object has the named value. - * - * @param key the value to check for - * @return {@code true} if the value is present, {@code false} otherwise - */ - public boolean containsKey(String key) { - return mValues.containsKey(key); - } - - /** - * Gets a value. Valid value types are {@link String}, {@link Boolean}, and - * {@link Number} implementations. - * - * @param key the value to get - * @return the data for the value - */ - public Object get(String key) { - return mValues.get(key); - } - - /** - * Gets a value and converts it to a String. - * - * @param key the value to get - * @return the String for the value - */ - public String getAsString(String key) { - Object value = mValues.get(key); - return value != null ? mValues.get(key).toString() : null; - } - - /** - * Gets a value and converts it to a Long. - * - * @param key the value to get - * @return the Long value, or null if the value is missing or cannot be converted - */ - public Long getAsLong(String key) { - Object value = mValues.get(key); - try { - return value != null ? ((Number) value).longValue() : null; - } catch (ClassCastException e) { - if (value instanceof CharSequence) { - try { - return Long.valueOf(value.toString()); - } catch (NumberFormatException e2) { - Log.e(TAG, "Cannot parse Long value for " + value + " at key " + key); - return null; - } - } else { - Log.e(TAG, "Cannot cast value for " + key + " to a Long"); - return null; - } - } - } - - /** - * Gets a value and converts it to an Integer. - * - * @param key the value to get - * @return the Integer value, or null if the value is missing or cannot be converted - */ - public Integer getAsInteger(String key) { - Object value = mValues.get(key); - try { - return value != null ? ((Number) value).intValue() : null; - } catch (ClassCastException e) { - if (value instanceof CharSequence) { - try { - return Integer.valueOf(value.toString()); - } catch (NumberFormatException e2) { - Log.e(TAG, "Cannot parse Integer value for " + value + " at key " + key); - return null; - } - } else { - Log.e(TAG, "Cannot cast value for " + key + " to a Integer"); - return null; - } - } - } - - /** - * Gets a value and converts it to a Short. - * - * @param key the value to get - * @return the Short value, or null if the value is missing or cannot be converted - */ - public Short getAsShort(String key) { - Object value = mValues.get(key); - try { - return value != null ? ((Number) value).shortValue() : null; - } catch (ClassCastException e) { - if (value instanceof CharSequence) { - try { - return Short.valueOf(value.toString()); - } catch (NumberFormatException e2) { - Log.e(TAG, "Cannot parse Short value for " + value + " at key " + key); - return null; - } - } else { - Log.e(TAG, "Cannot cast value for " + key + " to a Short"); - return null; - } - } - } - - /** - * Gets a value and converts it to a Byte. - * - * @param key the value to get - * @return the Byte value, or null if the value is missing or cannot be converted - */ - public Byte getAsByte(String key) { - Object value = mValues.get(key); - try { - return value != null ? ((Number) value).byteValue() : null; - } catch (ClassCastException e) { - if (value instanceof CharSequence) { - try { - return Byte.valueOf(value.toString()); - } catch (NumberFormatException e2) { - Log.e(TAG, "Cannot parse Byte value for " + value + " at key " + key); - return null; - } - } else { - Log.e(TAG, "Cannot cast value for " + key + " to a Byte"); - return null; - } - } - } - - /** - * Gets a value and converts it to a Double. - * - * @param key the value to get - * @return the Double value, or null if the value is missing or cannot be converted - */ - public Double getAsDouble(String key) { - Object value = mValues.get(key); - try { - return value != null ? ((Number) value).doubleValue() : null; - } catch (ClassCastException e) { - if (value instanceof CharSequence) { - try { - return Double.valueOf(value.toString()); - } catch (NumberFormatException e2) { - Log.e(TAG, "Cannot parse Double value for " + value + " at key " + key); - return null; - } - } else { - Log.e(TAG, "Cannot cast value for " + key + " to a Double"); - return null; - } - } - } - - /** - * Gets a value and converts it to a Float. - * - * @param key the value to get - * @return the Float value, or null if the value is missing or cannot be converted - */ - public Float getAsFloat(String key) { - Object value = mValues.get(key); - try { - return value != null ? ((Number) value).floatValue() : null; - } catch (ClassCastException e) { - if (value instanceof CharSequence) { - try { - return Float.valueOf(value.toString()); - } catch (NumberFormatException e2) { - Log.e(TAG, "Cannot parse Float value for " + value + " at key " + key); - return null; - } - } else { - Log.e(TAG, "Cannot cast value for " + key + " to a Float"); - return null; - } - } - } - - /** - * Gets a value and converts it to a Boolean. - * - * @param key the value to get - * @return the Boolean value, or null if the value is missing or cannot be converted - */ - public Boolean getAsBoolean(String key) { - Object value = mValues.get(key); - try { - return (Boolean) value; - } catch (ClassCastException e) { - if (value instanceof CharSequence) { - return Boolean.valueOf(value.toString()); - } else { - Log.e(TAG, "Cannot cast value for " + key + " to a Boolean"); - return null; - } - } - } - - /** - * Gets a value that is a byte array. Note that this method will not convert - * any other types to byte arrays. - * - * @param key the value to get - * @return the byte[] value, or null is the value is missing or not a byte[] - */ - public byte[] getAsByteArray(String key) { - Object value = mValues.get(key); - if (value instanceof byte[]) { - return (byte[]) value; - } else { - return null; - } - } - - /** - * Returns a set of all of the keys and values - * - * @return a set of all of the keys and values - */ - public Set<Map.Entry<String, Object>> valueSet() { - return mValues.entrySet(); - } - - public static final Parcelable.Creator<ContentValues> CREATOR = - new Parcelable.Creator<ContentValues>() { - @SuppressWarnings({"deprecation", "unchecked"}) - public ContentValues createFromParcel(Parcel in) { - // TODO - what ClassLoader should be passed to readHashMap? - HashMap<String, Object> values = in.readHashMap(null); - return new ContentValues(values); - } - - public ContentValues[] newArray(int size) { - return new ContentValues[size]; - } - }; - - public int describeContents() { - return 0; - } - - @SuppressWarnings("deprecation") - public void writeToParcel(Parcel parcel, int flags) { - parcel.writeMap(mValues); - } - - /** - * Unsupported, here until we get proper bulk insert APIs. - * {@hide} - */ - @Deprecated - public void putStringArrayList(String key, ArrayList<String> value) { - mValues.put(key, value); - } - - /** - * Unsupported, here until we get proper bulk insert APIs. - * {@hide} - */ - @SuppressWarnings("unchecked") - @Deprecated - public ArrayList<String> getStringArrayList(String key) { - return (ArrayList<String>) mValues.get(key); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - for (String name : mValues.keySet()) { - String value = getAsString(name); - if (sb.length() > 0) sb.append(" "); - sb.append(name + "=" + value); - } - return sb.toString(); - } -} |
