From c933fb663e4748c4fa3f92fc63649e5199519a86 Mon Sep 17 00:00:00 2001 From: Fred Quintana Date: Thu, 11 Jun 2009 12:14:40 -0700 Subject: [PATCH] add a data_version column to the data table --- core/java/android/content/ContentProviderOperation.java | 6 ++++++ core/java/android/provider/ContactsContract.java | 8 ++++++++ 2 files changed, 14 insertions(+) diff --git a/core/java/android/content/ContentProviderOperation.java b/core/java/android/content/ContentProviderOperation.java index 001af16ea2931..8b0b6ab0a9795 100644 --- a/core/java/android/content/ContentProviderOperation.java +++ b/core/java/android/content/ContentProviderOperation.java @@ -369,6 +369,12 @@ public class ContentProviderOperation implements Parcelable { /** Create a ContentProviderOperation from this {@link Builder}. */ public ContentProviderOperation build() { + if (mType == TYPE_UPDATE) { + if ((mValues == null || mValues.size() == 0) + && (mValuesBackReferences == null || mValuesBackReferences.size() == 0)) { + throw new IllegalArgumentException("Empty values"); + } + } return new ContentProviderOperation(this); } diff --git a/core/java/android/provider/ContactsContract.java b/core/java/android/provider/ContactsContract.java index cbc76c178dd25..d7e7d8d3c3613 100644 --- a/core/java/android/provider/ContactsContract.java +++ b/core/java/android/provider/ContactsContract.java @@ -341,6 +341,14 @@ public final class ContactsContract { */ public static final String IS_RESTRICTED = "is_restricted"; + /** + * The version of this data record. This is a read-only value. The data column is + * guaranteed to not change without the version going up. This value is monotonically + * increasing. + *

Type: INTEGER

+ */ + public static final String DATA_VERSION = "data_version"; + /** Generic data column, the meaning is {@link #MIMETYPE} specific */ public static final String DATA1 = "data1"; /** Generic data column, the meaning is {@link #MIMETYPE} specific */