IndexedDB: Add intVersion to chromium/public/WebIDBMetadata.h
authordgrogan@chromium.org <dgrogan@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 17 Jul 2012 23:04:45 +0000 (23:04 +0000)
committerdgrogan@chromium.org <dgrogan@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 17 Jul 2012 23:04:45 +0000 (23:04 +0000)
https://bugs.webkit.org/show_bug.cgi?id=91408

Reviewed by Adam Barth.

This is in support of the new upgradeneeded versioning api.
intVersion will eventually replace the WebString version member.

* public/WebIDBMetadata.h:
(WebIDBMetadata): The spec uses unsigned long long for version
numbers but we use int64_t here so that we can use -1 as a sentinel.
It indicates that a database still uses a string version.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@122884 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WebKit/chromium/ChangeLog
Source/WebKit/chromium/public/WebIDBMetadata.h

index f115198..e5cdb05 100644 (file)
@@ -1,3 +1,18 @@
+2012-07-17  David Grogan  <dgrogan@chromium.org>
+
+        IndexedDB: Add intVersion to chromium/public/WebIDBMetadata.h
+        https://bugs.webkit.org/show_bug.cgi?id=91408
+
+        Reviewed by Adam Barth.
+
+        This is in support of the new upgradeneeded versioning api.
+        intVersion will eventually replace the WebString version member.
+
+        * public/WebIDBMetadata.h:
+        (WebIDBMetadata): The spec uses unsigned long long for version
+        numbers but we use int64_t here so that we can use -1 as a sentinel.
+        It indicates that a database still uses a string version.
+
 2012-07-17  Tony Chang  <tony@chromium.org>
 
         Unreviewed.  Rolled DEPS.
index 1c33d1b..8060e52 100644 (file)
@@ -38,13 +38,21 @@ struct IDBDatabaseMetadata;
 namespace WebKit {
 
 struct WebIDBMetadata {
+    enum {
+        NoIntVersion = -1
+    };
     struct Index;
     struct ObjectStore;
 
     WebString name;
+    // FIXME: Both version members need to be present while we support both the
+    // old setVersion and new upgradeneeded API. Once we no longer support
+    // setVersion, WebString version can be removed.
     WebString version;
+    int64_t intVersion;
     WebVector<ObjectStore> objectStores;
-    WebIDBMetadata() { }
+    WebIDBMetadata()
+        : intVersion(NoIntVersion) { }
 
     struct ObjectStore {
         WebString name;