Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(597)

Unified Diff: third_party/WebKit/Source/devtools/front_end/resources/IndexedDBModel.js

Issue 2466123002: DevTools: reformat front-end code to match chromium style. (Closed)
Patch Set: all done Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/devtools/front_end/resources/IndexedDBModel.js
diff --git a/third_party/WebKit/Source/devtools/front_end/resources/IndexedDBModel.js b/third_party/WebKit/Source/devtools/front_end/resources/IndexedDBModel.js
index 503682cd10f85396f734384eb56e0d2a5dc2dd92..78e254096743324a103091d003d1fa02ba0e455d 100644
--- a/third_party/WebKit/Source/devtools/front_end/resources/IndexedDBModel.js
+++ b/third_party/WebKit/Source/devtools/front_end/resources/IndexedDBModel.js
@@ -27,16 +27,16 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-
/**
- * @constructor
- * @extends {WebInspector.SDKModel}
- * @param {!WebInspector.Target} target
- * @param {!WebInspector.SecurityOriginManager} securityOriginManager
+ * @unrestricted
*/
-WebInspector.IndexedDBModel = function(target, securityOriginManager)
-{
- WebInspector.SDKModel.call(this, WebInspector.IndexedDBModel, target);
+WebInspector.IndexedDBModel = class extends WebInspector.SDKModel {
+ /**
+ * @param {!WebInspector.Target} target
+ * @param {!WebInspector.SecurityOriginManager} securityOriginManager
+ */
+ constructor(target, securityOriginManager) {
+ super(WebInspector.IndexedDBModel, target);
this._securityOriginManager = securityOriginManager;
this._agent = target.indexedDBAgent();
@@ -44,74 +44,59 @@ WebInspector.IndexedDBModel = function(target, securityOriginManager)
this._databases = new Map();
/** @type {!Object.<string, !Array.<string>>} */
this._databaseNamesBySecurityOrigin = {};
-};
-
-WebInspector.IndexedDBModel.KeyTypes = {
- NumberType: "number",
- StringType: "string",
- DateType: "date",
- ArrayType: "array"
-};
-
-WebInspector.IndexedDBModel.KeyPathTypes = {
- NullType: "null",
- StringType: "string",
- ArrayType: "array"
-};
-
-/**
- * @param {*} idbKey
- * @return {({
- * array: (!Array<?>|undefined),
- * date: (number|undefined),
- * number: (number|undefined),
- * string: (string|undefined),
- * type: !IndexedDBAgent.KeyType<string>
- * }|undefined)}
- */
-WebInspector.IndexedDBModel.keyFromIDBKey = function(idbKey)
-{
- if (typeof(idbKey) === "undefined" || idbKey === null)
- return undefined;
+ }
+
+ /**
+ * @param {*} idbKey
+ * @return {({
+ * array: (!Array<?>|undefined),
+ * date: (number|undefined),
+ * number: (number|undefined),
+ * string: (string|undefined),
+ * type: !IndexedDBAgent.KeyType<string>
+ * }|undefined)}
+ */
+ static keyFromIDBKey(idbKey) {
+ if (typeof(idbKey) === 'undefined' || idbKey === null)
+ return undefined;
var type;
var key = {};
switch (typeof(idbKey)) {
- case "number":
+ case 'number':
key.number = idbKey;
type = WebInspector.IndexedDBModel.KeyTypes.NumberType;
break;
- case "string":
+ case 'string':
key.string = idbKey;
type = WebInspector.IndexedDBModel.KeyTypes.StringType;
break;
- case "object":
+ case 'object':
if (idbKey instanceof Date) {
- key.date = idbKey.getTime();
- type = WebInspector.IndexedDBModel.KeyTypes.DateType;
+ key.date = idbKey.getTime();
+ type = WebInspector.IndexedDBModel.KeyTypes.DateType;
} else if (Array.isArray(idbKey)) {
- key.array = [];
- for (var i = 0; i < idbKey.length; ++i)
- key.array.push(WebInspector.IndexedDBModel.keyFromIDBKey(idbKey[i]));
- type = WebInspector.IndexedDBModel.KeyTypes.ArrayType;
+ key.array = [];
+ for (var i = 0; i < idbKey.length; ++i)
+ key.array.push(WebInspector.IndexedDBModel.keyFromIDBKey(idbKey[i]));
+ type = WebInspector.IndexedDBModel.KeyTypes.ArrayType;
}
break;
- default:
+ default:
return undefined;
}
key.type = /** @type {!IndexedDBAgent.KeyType<string>} */ (type);
return key;
-};
+ }
-/**
- * @param {?IDBKeyRange=} idbKeyRange
- * @return {?IndexedDBAgent.KeyRange}
- * eturn {?{lower: ?Object, upper: ?Object, lowerOpen: *, upperOpen: *}}
- */
-WebInspector.IndexedDBModel.keyRangeFromIDBKeyRange = function(idbKeyRange)
-{
- if (typeof idbKeyRange === "undefined" || idbKeyRange === null)
- return null;
+ /**
+ * @param {?IDBKeyRange=} idbKeyRange
+ * @return {?IndexedDBAgent.KeyRange}
+ * eturn {?{lower: ?Object, upper: ?Object, lowerOpen: *, upperOpen: *}}
+ */
+ static keyRangeFromIDBKeyRange(idbKeyRange) {
+ if (typeof idbKeyRange === 'undefined' || idbKeyRange === null)
+ return null;
var keyRange = {};
keyRange.lower = WebInspector.IndexedDBModel.keyFromIDBKey(idbKeyRange.lower);
@@ -119,435 +104,440 @@ WebInspector.IndexedDBModel.keyRangeFromIDBKeyRange = function(idbKeyRange)
keyRange.lowerOpen = !!idbKeyRange.lowerOpen;
keyRange.upperOpen = !!idbKeyRange.upperOpen;
return keyRange;
-};
+ }
-/**
- * @param {!IndexedDBAgent.KeyPath} keyPath
- * @return {?string|!Array.<string>|undefined}
- */
-WebInspector.IndexedDBModel.idbKeyPathFromKeyPath = function(keyPath)
-{
+ /**
+ * @param {!IndexedDBAgent.KeyPath} keyPath
+ * @return {?string|!Array.<string>|undefined}
+ */
+ static idbKeyPathFromKeyPath(keyPath) {
var idbKeyPath;
switch (keyPath.type) {
- case WebInspector.IndexedDBModel.KeyPathTypes.NullType:
+ case WebInspector.IndexedDBModel.KeyPathTypes.NullType:
idbKeyPath = null;
break;
- case WebInspector.IndexedDBModel.KeyPathTypes.StringType:
+ case WebInspector.IndexedDBModel.KeyPathTypes.StringType:
idbKeyPath = keyPath.string;
break;
- case WebInspector.IndexedDBModel.KeyPathTypes.ArrayType:
+ case WebInspector.IndexedDBModel.KeyPathTypes.ArrayType:
idbKeyPath = keyPath.array;
break;
}
return idbKeyPath;
-};
-
-/**
- * @param {?string|!Array.<string>|undefined} idbKeyPath
- * @return {?string}
- */
-WebInspector.IndexedDBModel.keyPathStringFromIDBKeyPath = function(idbKeyPath)
-{
- if (typeof idbKeyPath === "string")
- return "\"" + idbKeyPath + "\"";
+ }
+
+ /**
+ * @param {?string|!Array.<string>|undefined} idbKeyPath
+ * @return {?string}
+ */
+ static keyPathStringFromIDBKeyPath(idbKeyPath) {
+ if (typeof idbKeyPath === 'string')
+ return '"' + idbKeyPath + '"';
if (idbKeyPath instanceof Array)
- return "[\"" + idbKeyPath.join("\", \"") + "\"]";
+ return '["' + idbKeyPath.join('", "') + '"]';
return null;
-};
-
-/** @enum {symbol} */
-WebInspector.IndexedDBModel.Events = {
- DatabaseAdded: Symbol("DatabaseAdded"),
- DatabaseRemoved: Symbol("DatabaseRemoved"),
- DatabaseLoaded: Symbol("DatabaseLoaded")
-};
-
-WebInspector.IndexedDBModel.prototype = {
- enable: function()
- {
- if (this._enabled)
- return;
-
- this._agent.enable();
- this._securityOriginManager.addEventListener(WebInspector.SecurityOriginManager.Events.SecurityOriginAdded, this._securityOriginAdded, this);
- this._securityOriginManager.addEventListener(WebInspector.SecurityOriginManager.Events.SecurityOriginRemoved, this._securityOriginRemoved, this);
-
- for (var securityOrigin of this._securityOriginManager.securityOrigins())
- this._addOrigin(securityOrigin);
-
- this._enabled = true;
- },
-
- /**
- * @param {string} origin
- */
- clearForOrigin: function(origin)
- {
- if (!this._enabled)
- return;
-
- this._removeOrigin(origin);
- this._addOrigin(origin);
- },
-
- refreshDatabaseNames: function()
- {
- for (var securityOrigin in this._databaseNamesBySecurityOrigin)
- this._loadDatabaseNames(securityOrigin);
- },
-
- /**
- * @param {!WebInspector.IndexedDBModel.DatabaseId} databaseId
- */
- refreshDatabase: function(databaseId)
- {
- this._loadDatabase(databaseId);
- },
-
- /**
- * @param {!WebInspector.IndexedDBModel.DatabaseId} databaseId
- * @param {string} objectStoreName
- * @param {function()} callback
- */
- clearObjectStore: function(databaseId, objectStoreName, callback)
- {
- this._agent.clearObjectStore(databaseId.securityOrigin, databaseId.name, objectStoreName, callback);
- },
-
- /**
- * @param {!WebInspector.Event} event
- */
- _securityOriginAdded: function(event)
- {
- var securityOrigin = /** @type {string} */ (event.data);
- this._addOrigin(securityOrigin);
- },
-
- /**
- * @param {!WebInspector.Event} event
- */
- _securityOriginRemoved: function(event)
- {
- var securityOrigin = /** @type {string} */ (event.data);
- this._removeOrigin(securityOrigin);
- },
-
- /**
- * @param {string} securityOrigin
- */
- _addOrigin: function(securityOrigin)
- {
- console.assert(!this._databaseNamesBySecurityOrigin[securityOrigin]);
- this._databaseNamesBySecurityOrigin[securityOrigin] = [];
- this._loadDatabaseNames(securityOrigin);
- },
-
- /**
- * @param {string} securityOrigin
- */
- _removeOrigin: function(securityOrigin)
- {
- console.assert(this._databaseNamesBySecurityOrigin[securityOrigin]);
- for (var i = 0; i < this._databaseNamesBySecurityOrigin[securityOrigin].length; ++i)
- this._databaseRemoved(securityOrigin, this._databaseNamesBySecurityOrigin[securityOrigin][i]);
- delete this._databaseNamesBySecurityOrigin[securityOrigin];
- },
+ }
+ /**
+ * @param {!WebInspector.Target} target
+ * @return {!WebInspector.IndexedDBModel}
+ */
+ static fromTarget(target) {
+ var model = /** @type {?WebInspector.IndexedDBModel} */ (target.model(WebInspector.IndexedDBModel));
+ if (!model)
+ model = new WebInspector.IndexedDBModel(target, WebInspector.SecurityOriginManager.fromTarget(target));
+ return model;
+ }
+
+ enable() {
+ if (this._enabled)
+ return;
+
+ this._agent.enable();
+ this._securityOriginManager.addEventListener(
+ WebInspector.SecurityOriginManager.Events.SecurityOriginAdded, this._securityOriginAdded, this);
+ this._securityOriginManager.addEventListener(
+ WebInspector.SecurityOriginManager.Events.SecurityOriginRemoved, this._securityOriginRemoved, this);
+
+ for (var securityOrigin of this._securityOriginManager.securityOrigins())
+ this._addOrigin(securityOrigin);
+
+ this._enabled = true;
+ }
+
+ /**
+ * @param {string} origin
+ */
+ clearForOrigin(origin) {
+ if (!this._enabled)
+ return;
+
+ this._removeOrigin(origin);
+ this._addOrigin(origin);
+ }
+
+ refreshDatabaseNames() {
+ for (var securityOrigin in this._databaseNamesBySecurityOrigin)
+ this._loadDatabaseNames(securityOrigin);
+ }
+
+ /**
+ * @param {!WebInspector.IndexedDBModel.DatabaseId} databaseId
+ */
+ refreshDatabase(databaseId) {
+ this._loadDatabase(databaseId);
+ }
+
+ /**
+ * @param {!WebInspector.IndexedDBModel.DatabaseId} databaseId
+ * @param {string} objectStoreName
+ * @param {function()} callback
+ */
+ clearObjectStore(databaseId, objectStoreName, callback) {
+ this._agent.clearObjectStore(databaseId.securityOrigin, databaseId.name, objectStoreName, callback);
+ }
+
+ /**
+ * @param {!WebInspector.Event} event
+ */
+ _securityOriginAdded(event) {
+ var securityOrigin = /** @type {string} */ (event.data);
+ this._addOrigin(securityOrigin);
+ }
+
+ /**
+ * @param {!WebInspector.Event} event
+ */
+ _securityOriginRemoved(event) {
+ var securityOrigin = /** @type {string} */ (event.data);
+ this._removeOrigin(securityOrigin);
+ }
+
+ /**
+ * @param {string} securityOrigin
+ */
+ _addOrigin(securityOrigin) {
+ console.assert(!this._databaseNamesBySecurityOrigin[securityOrigin]);
+ this._databaseNamesBySecurityOrigin[securityOrigin] = [];
+ this._loadDatabaseNames(securityOrigin);
+ }
+
+ /**
+ * @param {string} securityOrigin
+ */
+ _removeOrigin(securityOrigin) {
+ console.assert(this._databaseNamesBySecurityOrigin[securityOrigin]);
+ for (var i = 0; i < this._databaseNamesBySecurityOrigin[securityOrigin].length; ++i)
+ this._databaseRemoved(securityOrigin, this._databaseNamesBySecurityOrigin[securityOrigin][i]);
+ delete this._databaseNamesBySecurityOrigin[securityOrigin];
+ }
+
+ /**
+ * @param {string} securityOrigin
+ * @param {!Array.<string>} databaseNames
+ */
+ _updateOriginDatabaseNames(securityOrigin, databaseNames) {
+ var newDatabaseNames = new Set(databaseNames);
+ var oldDatabaseNames = new Set(this._databaseNamesBySecurityOrigin[securityOrigin]);
+
+ this._databaseNamesBySecurityOrigin[securityOrigin] = databaseNames;
+
+ for (var databaseName of oldDatabaseNames) {
+ if (!newDatabaseNames.has(databaseName))
+ this._databaseRemoved(securityOrigin, databaseName);
+ }
+ for (var databaseName of newDatabaseNames) {
+ if (!oldDatabaseNames.has(databaseName))
+ this._databaseAdded(securityOrigin, databaseName);
+ }
+ }
+
+ /**
+ * @return {!Array.<!WebInspector.IndexedDBModel.DatabaseId>}
+ */
+ databases() {
+ var result = [];
+ for (var securityOrigin in this._databaseNamesBySecurityOrigin) {
+ var databaseNames = this._databaseNamesBySecurityOrigin[securityOrigin];
+ for (var i = 0; i < databaseNames.length; ++i) {
+ result.push(new WebInspector.IndexedDBModel.DatabaseId(securityOrigin, databaseNames[i]));
+ }
+ }
+ return result;
+ }
+
+ /**
+ * @param {string} securityOrigin
+ * @param {string} databaseName
+ */
+ _databaseAdded(securityOrigin, databaseName) {
+ var databaseId = new WebInspector.IndexedDBModel.DatabaseId(securityOrigin, databaseName);
+ this.dispatchEventToListeners(WebInspector.IndexedDBModel.Events.DatabaseAdded, databaseId);
+ }
+
+ /**
+ * @param {string} securityOrigin
+ * @param {string} databaseName
+ */
+ _databaseRemoved(securityOrigin, databaseName) {
+ var databaseId = new WebInspector.IndexedDBModel.DatabaseId(securityOrigin, databaseName);
+ this.dispatchEventToListeners(WebInspector.IndexedDBModel.Events.DatabaseRemoved, databaseId);
+ }
+
+ /**
+ * @param {string} securityOrigin
+ */
+ _loadDatabaseNames(securityOrigin) {
/**
- * @param {string} securityOrigin
+ * @param {?Protocol.Error} error
* @param {!Array.<string>} databaseNames
+ * @this {WebInspector.IndexedDBModel}
*/
- _updateOriginDatabaseNames: function(securityOrigin, databaseNames)
- {
- var newDatabaseNames = new Set(databaseNames);
- var oldDatabaseNames = new Set(this._databaseNamesBySecurityOrigin[securityOrigin]);
-
- this._databaseNamesBySecurityOrigin[securityOrigin] = databaseNames;
-
- for (var databaseName of oldDatabaseNames) {
- if (!newDatabaseNames.has(databaseName))
- this._databaseRemoved(securityOrigin, databaseName);
- }
- for (var databaseName of newDatabaseNames) {
- if (!oldDatabaseNames.has(databaseName))
- this._databaseAdded(securityOrigin, databaseName);
- }
- },
-
- /**
- * @return {!Array.<!WebInspector.IndexedDBModel.DatabaseId>}
- */
- databases: function()
- {
- var result = [];
- for (var securityOrigin in this._databaseNamesBySecurityOrigin) {
- var databaseNames = this._databaseNamesBySecurityOrigin[securityOrigin];
- for (var i = 0; i < databaseNames.length; ++i) {
- result.push(new WebInspector.IndexedDBModel.DatabaseId(securityOrigin, databaseNames[i]));
- }
- }
- return result;
- },
-
- /**
- * @param {string} securityOrigin
- * @param {string} databaseName
- */
- _databaseAdded: function(securityOrigin, databaseName)
- {
- var databaseId = new WebInspector.IndexedDBModel.DatabaseId(securityOrigin, databaseName);
- this.dispatchEventToListeners(WebInspector.IndexedDBModel.Events.DatabaseAdded, databaseId);
- },
+ function callback(error, databaseNames) {
+ if (error) {
+ console.error('IndexedDBAgent error: ' + error);
+ return;
+ }
+
+ if (!this._databaseNamesBySecurityOrigin[securityOrigin])
+ return;
+ this._updateOriginDatabaseNames(securityOrigin, databaseNames);
+ }
- /**
- * @param {string} securityOrigin
- * @param {string} databaseName
- */
- _databaseRemoved: function(securityOrigin, databaseName)
- {
- var databaseId = new WebInspector.IndexedDBModel.DatabaseId(securityOrigin, databaseName);
- this.dispatchEventToListeners(WebInspector.IndexedDBModel.Events.DatabaseRemoved, databaseId);
- },
+ this._agent.requestDatabaseNames(securityOrigin, callback.bind(this));
+ }
+ /**
+ * @param {!WebInspector.IndexedDBModel.DatabaseId} databaseId
+ */
+ _loadDatabase(databaseId) {
/**
- * @param {string} securityOrigin
+ * @param {?Protocol.Error} error
+ * @param {!IndexedDBAgent.DatabaseWithObjectStores} databaseWithObjectStores
+ * @this {WebInspector.IndexedDBModel}
*/
- _loadDatabaseNames: function(securityOrigin)
- {
- /**
- * @param {?Protocol.Error} error
- * @param {!Array.<string>} databaseNames
- * @this {WebInspector.IndexedDBModel}
- */
- function callback(error, databaseNames)
- {
- if (error) {
- console.error("IndexedDBAgent error: " + error);
- return;
- }
-
- if (!this._databaseNamesBySecurityOrigin[securityOrigin])
- return;
- this._updateOriginDatabaseNames(securityOrigin, databaseNames);
+ function callback(error, databaseWithObjectStores) {
+ if (error) {
+ console.error('IndexedDBAgent error: ' + error);
+ return;
+ }
+
+ if (!this._databaseNamesBySecurityOrigin[databaseId.securityOrigin])
+ return;
+ var databaseModel = new WebInspector.IndexedDBModel.Database(databaseId, databaseWithObjectStores.version);
+ this._databases.set(databaseId, databaseModel);
+ for (var i = 0; i < databaseWithObjectStores.objectStores.length; ++i) {
+ var objectStore = databaseWithObjectStores.objectStores[i];
+ var objectStoreIDBKeyPath = WebInspector.IndexedDBModel.idbKeyPathFromKeyPath(objectStore.keyPath);
+ var objectStoreModel = new WebInspector.IndexedDBModel.ObjectStore(
+ objectStore.name, objectStoreIDBKeyPath, objectStore.autoIncrement);
+ for (var j = 0; j < objectStore.indexes.length; ++j) {
+ var index = objectStore.indexes[j];
+ var indexIDBKeyPath = WebInspector.IndexedDBModel.idbKeyPathFromKeyPath(index.keyPath);
+ var indexModel =
+ new WebInspector.IndexedDBModel.Index(index.name, indexIDBKeyPath, index.unique, index.multiEntry);
+ objectStoreModel.indexes[indexModel.name] = indexModel;
}
+ databaseModel.objectStores[objectStoreModel.name] = objectStoreModel;
+ }
- this._agent.requestDatabaseNames(securityOrigin, callback.bind(this));
- },
+ this.dispatchEventToListeners(WebInspector.IndexedDBModel.Events.DatabaseLoaded, databaseModel);
+ }
+ this._agent.requestDatabase(databaseId.securityOrigin, databaseId.name, callback.bind(this));
+ }
+
+ /**
+ * @param {!WebInspector.IndexedDBModel.DatabaseId} databaseId
+ * @param {string} objectStoreName
+ * @param {?IDBKeyRange} idbKeyRange
+ * @param {number} skipCount
+ * @param {number} pageSize
+ * @param {function(!Array.<!WebInspector.IndexedDBModel.Entry>, boolean)} callback
+ */
+ loadObjectStoreData(databaseId, objectStoreName, idbKeyRange, skipCount, pageSize, callback) {
+ this._requestData(databaseId, databaseId.name, objectStoreName, '', idbKeyRange, skipCount, pageSize, callback);
+ }
+
+ /**
+ * @param {!WebInspector.IndexedDBModel.DatabaseId} databaseId
+ * @param {string} objectStoreName
+ * @param {string} indexName
+ * @param {?IDBKeyRange} idbKeyRange
+ * @param {number} skipCount
+ * @param {number} pageSize
+ * @param {function(!Array.<!WebInspector.IndexedDBModel.Entry>, boolean)} callback
+ */
+ loadIndexData(databaseId, objectStoreName, indexName, idbKeyRange, skipCount, pageSize, callback) {
+ this._requestData(
+ databaseId, databaseId.name, objectStoreName, indexName, idbKeyRange, skipCount, pageSize, callback);
+ }
+
+ /**
+ * @param {!WebInspector.IndexedDBModel.DatabaseId} databaseId
+ * @param {string} databaseName
+ * @param {string} objectStoreName
+ * @param {string} indexName
+ * @param {?IDBKeyRange} idbKeyRange
+ * @param {number} skipCount
+ * @param {number} pageSize
+ * @param {function(!Array.<!WebInspector.IndexedDBModel.Entry>, boolean)} callback
+ */
+ _requestData(databaseId, databaseName, objectStoreName, indexName, idbKeyRange, skipCount, pageSize, callback) {
/**
- * @param {!WebInspector.IndexedDBModel.DatabaseId} databaseId
+ * @param {?Protocol.Error} error
+ * @param {!Array.<!IndexedDBAgent.DataEntry>} dataEntries
+ * @param {boolean} hasMore
+ * @this {WebInspector.IndexedDBModel}
*/
- _loadDatabase: function(databaseId)
- {
- /**
- * @param {?Protocol.Error} error
- * @param {!IndexedDBAgent.DatabaseWithObjectStores} databaseWithObjectStores
- * @this {WebInspector.IndexedDBModel}
- */
- function callback(error, databaseWithObjectStores)
- {
- if (error) {
- console.error("IndexedDBAgent error: " + error);
- return;
- }
-
- if (!this._databaseNamesBySecurityOrigin[databaseId.securityOrigin])
- return;
- var databaseModel = new WebInspector.IndexedDBModel.Database(databaseId, databaseWithObjectStores.version);
- this._databases.set(databaseId, databaseModel);
- for (var i = 0; i < databaseWithObjectStores.objectStores.length; ++i) {
- var objectStore = databaseWithObjectStores.objectStores[i];
- var objectStoreIDBKeyPath = WebInspector.IndexedDBModel.idbKeyPathFromKeyPath(objectStore.keyPath);
- var objectStoreModel = new WebInspector.IndexedDBModel.ObjectStore(objectStore.name, objectStoreIDBKeyPath, objectStore.autoIncrement);
- for (var j = 0; j < objectStore.indexes.length; ++j) {
- var index = objectStore.indexes[j];
- var indexIDBKeyPath = WebInspector.IndexedDBModel.idbKeyPathFromKeyPath(index.keyPath);
- var indexModel = new WebInspector.IndexedDBModel.Index(index.name, indexIDBKeyPath, index.unique, index.multiEntry);
- objectStoreModel.indexes[indexModel.name] = indexModel;
- }
- databaseModel.objectStores[objectStoreModel.name] = objectStoreModel;
- }
-
- this.dispatchEventToListeners(WebInspector.IndexedDBModel.Events.DatabaseLoaded, databaseModel);
- }
-
- this._agent.requestDatabase(databaseId.securityOrigin, databaseId.name, callback.bind(this));
- },
+ function innerCallback(error, dataEntries, hasMore) {
+ if (error) {
+ console.error('IndexedDBAgent error: ' + error);
+ return;
+ }
+
+ if (!this._databaseNamesBySecurityOrigin[databaseId.securityOrigin])
+ return;
+ var entries = [];
+ for (var i = 0; i < dataEntries.length; ++i) {
+ var key = this.target().runtimeModel.createRemoteObject(dataEntries[i].key);
+ var primaryKey = this.target().runtimeModel.createRemoteObject(dataEntries[i].primaryKey);
+ var value = this.target().runtimeModel.createRemoteObject(dataEntries[i].value);
+ entries.push(new WebInspector.IndexedDBModel.Entry(key, primaryKey, value));
+ }
+ callback(entries, hasMore);
+ }
- /**
- * @param {!WebInspector.IndexedDBModel.DatabaseId} databaseId
- * @param {string} objectStoreName
- * @param {?IDBKeyRange} idbKeyRange
- * @param {number} skipCount
- * @param {number} pageSize
- * @param {function(!Array.<!WebInspector.IndexedDBModel.Entry>, boolean)} callback
- */
- loadObjectStoreData: function(databaseId, objectStoreName, idbKeyRange, skipCount, pageSize, callback)
- {
- this._requestData(databaseId, databaseId.name, objectStoreName, "", idbKeyRange, skipCount, pageSize, callback);
- },
+ var keyRange = WebInspector.IndexedDBModel.keyRangeFromIDBKeyRange(idbKeyRange);
+ this._agent.requestData(
+ databaseId.securityOrigin, databaseName, objectStoreName, indexName, skipCount, pageSize,
+ keyRange ? keyRange : undefined, innerCallback.bind(this));
+ }
+};
- /**
- * @param {!WebInspector.IndexedDBModel.DatabaseId} databaseId
- * @param {string} objectStoreName
- * @param {string} indexName
- * @param {?IDBKeyRange} idbKeyRange
- * @param {number} skipCount
- * @param {number} pageSize
- * @param {function(!Array.<!WebInspector.IndexedDBModel.Entry>, boolean)} callback
- */
- loadIndexData: function(databaseId, objectStoreName, indexName, idbKeyRange, skipCount, pageSize, callback)
- {
- this._requestData(databaseId, databaseId.name, objectStoreName, indexName, idbKeyRange, skipCount, pageSize, callback);
- },
+WebInspector.IndexedDBModel.KeyTypes = {
+ NumberType: 'number',
+ StringType: 'string',
+ DateType: 'date',
+ ArrayType: 'array'
+};
- /**
- * @param {!WebInspector.IndexedDBModel.DatabaseId} databaseId
- * @param {string} databaseName
- * @param {string} objectStoreName
- * @param {string} indexName
- * @param {?IDBKeyRange} idbKeyRange
- * @param {number} skipCount
- * @param {number} pageSize
- * @param {function(!Array.<!WebInspector.IndexedDBModel.Entry>, boolean)} callback
- */
- _requestData: function(databaseId, databaseName, objectStoreName, indexName, idbKeyRange, skipCount, pageSize, callback)
- {
- /**
- * @param {?Protocol.Error} error
- * @param {!Array.<!IndexedDBAgent.DataEntry>} dataEntries
- * @param {boolean} hasMore
- * @this {WebInspector.IndexedDBModel}
- */
- function innerCallback(error, dataEntries, hasMore)
- {
- if (error) {
- console.error("IndexedDBAgent error: " + error);
- return;
- }
-
- if (!this._databaseNamesBySecurityOrigin[databaseId.securityOrigin])
- return;
- var entries = [];
- for (var i = 0; i < dataEntries.length; ++i) {
- var key = this.target().runtimeModel.createRemoteObject(dataEntries[i].key);
- var primaryKey = this.target().runtimeModel.createRemoteObject(dataEntries[i].primaryKey);
- var value = this.target().runtimeModel.createRemoteObject(dataEntries[i].value);
- entries.push(new WebInspector.IndexedDBModel.Entry(key, primaryKey, value));
- }
- callback(entries, hasMore);
- }
+WebInspector.IndexedDBModel.KeyPathTypes = {
+ NullType: 'null',
+ StringType: 'string',
+ ArrayType: 'array'
+};
- var keyRange = WebInspector.IndexedDBModel.keyRangeFromIDBKeyRange(idbKeyRange);
- this._agent.requestData(databaseId.securityOrigin, databaseName, objectStoreName, indexName, skipCount, pageSize, keyRange ? keyRange : undefined, innerCallback.bind(this));
- },
- __proto__: WebInspector.SDKModel.prototype
+/** @enum {symbol} */
+WebInspector.IndexedDBModel.Events = {
+ DatabaseAdded: Symbol('DatabaseAdded'),
+ DatabaseRemoved: Symbol('DatabaseRemoved'),
+ DatabaseLoaded: Symbol('DatabaseLoaded')
};
/**
- * @constructor
- * @param {!WebInspector.RemoteObject} key
- * @param {!WebInspector.RemoteObject} primaryKey
- * @param {!WebInspector.RemoteObject} value
+ * @unrestricted
*/
-WebInspector.IndexedDBModel.Entry = function(key, primaryKey, value)
-{
+WebInspector.IndexedDBModel.Entry = class {
+ /**
+ * @param {!WebInspector.RemoteObject} key
+ * @param {!WebInspector.RemoteObject} primaryKey
+ * @param {!WebInspector.RemoteObject} value
+ */
+ constructor(key, primaryKey, value) {
this.key = key;
this.primaryKey = primaryKey;
this.value = value;
+ }
};
/**
- * @constructor
- * @param {string} securityOrigin
- * @param {string} name
+ * @unrestricted
*/
-WebInspector.IndexedDBModel.DatabaseId = function(securityOrigin, name)
-{
+WebInspector.IndexedDBModel.DatabaseId = class {
+ /**
+ * @param {string} securityOrigin
+ * @param {string} name
+ */
+ constructor(securityOrigin, name) {
this.securityOrigin = securityOrigin;
this.name = name;
+ }
+
+ /**
+ * @param {!WebInspector.IndexedDBModel.DatabaseId} databaseId
+ * @return {boolean}
+ */
+ equals(databaseId) {
+ return this.name === databaseId.name && this.securityOrigin === databaseId.securityOrigin;
+ }
};
-WebInspector.IndexedDBModel.DatabaseId.prototype = {
- /**
- * @param {!WebInspector.IndexedDBModel.DatabaseId} databaseId
- * @return {boolean}
- */
- equals: function(databaseId)
- {
- return this.name === databaseId.name && this.securityOrigin === databaseId.securityOrigin;
- },
-};
/**
- * @constructor
- * @param {!WebInspector.IndexedDBModel.DatabaseId} databaseId
- * @param {number} version
+ * @unrestricted
*/
-WebInspector.IndexedDBModel.Database = function(databaseId, version)
-{
+WebInspector.IndexedDBModel.Database = class {
+ /**
+ * @param {!WebInspector.IndexedDBModel.DatabaseId} databaseId
+ * @param {number} version
+ */
+ constructor(databaseId, version) {
this.databaseId = databaseId;
this.version = version;
this.objectStores = {};
+ }
};
/**
- * @constructor
- * @param {string} name
- * @param {*} keyPath
- * @param {boolean} autoIncrement
+ * @unrestricted
*/
-WebInspector.IndexedDBModel.ObjectStore = function(name, keyPath, autoIncrement)
-{
+WebInspector.IndexedDBModel.ObjectStore = class {
+ /**
+ * @param {string} name
+ * @param {*} keyPath
+ * @param {boolean} autoIncrement
+ */
+ constructor(name, keyPath, autoIncrement) {
this.name = name;
this.keyPath = keyPath;
this.autoIncrement = autoIncrement;
this.indexes = {};
-};
-
-WebInspector.IndexedDBModel.ObjectStore.prototype = {
- /**
- * @type {string}
- */
- get keyPathString()
- {
- return WebInspector.IndexedDBModel.keyPathStringFromIDBKeyPath(this.keyPath);
- }
+ }
+
+ /**
+ * @return {string}
+ */
+ get keyPathString() {
+ return /** @type {string}*/ (
+ WebInspector.IndexedDBModel.keyPathStringFromIDBKeyPath(/** @type {string}*/ (this.keyPath)));
+ }
};
/**
- * @constructor
- * @param {string} name
- * @param {*} keyPath
- * @param {boolean} unique
- * @param {boolean} multiEntry
+ * @unrestricted
*/
-WebInspector.IndexedDBModel.Index = function(name, keyPath, unique, multiEntry)
-{
+WebInspector.IndexedDBModel.Index = class {
+ /**
+ * @param {string} name
+ * @param {*} keyPath
+ * @param {boolean} unique
+ * @param {boolean} multiEntry
+ */
+ constructor(name, keyPath, unique, multiEntry) {
this.name = name;
this.keyPath = keyPath;
this.unique = unique;
this.multiEntry = multiEntry;
+ }
+
+ /**
+ * @return {string}
+ */
+ get keyPathString() {
+ return /** @type {string}*/ (
+ WebInspector.IndexedDBModel.keyPathStringFromIDBKeyPath(/** @type {string}*/ (this.keyPath)));
+ }
};
-WebInspector.IndexedDBModel.Index.prototype = {
- /**
- * @type {string}
- */
- get keyPathString()
- {
- return WebInspector.IndexedDBModel.keyPathStringFromIDBKeyPath(this.keyPath);
- }
-};
-/**
- * @param {!WebInspector.Target} target
- * @return {!WebInspector.IndexedDBModel}
- */
-WebInspector.IndexedDBModel.fromTarget = function(target)
-{
- var model = /** @type {?WebInspector.IndexedDBModel} */ (target.model(WebInspector.IndexedDBModel));
- if (!model)
- model = new WebInspector.IndexedDBModel(target, WebInspector.SecurityOriginManager.fromTarget(target));
- return model;
-};

Powered by Google App Engine
This is Rietveld 408576698