diff -r 000000000000 -r 6474c204b198 dom/webidl/IDBObjectStore.webidl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dom/webidl/IDBObjectStore.webidl Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,77 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this file, + * You can obtain one at http://mozilla.org/MPL/2.0/. + * + * The origin of this IDL file is + * https://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#idl-def-IDBObjectStore + */ + +dictionary IDBObjectStoreParameters { + // TODO (DOMString or sequence)? keyPath = null; + any keyPath = null; + boolean autoIncrement = false; +}; + +interface IDBObjectStore { + readonly attribute DOMString name; + + [Throws] + readonly attribute any keyPath; + + [Throws] + readonly attribute DOMStringList indexNames; + readonly attribute IDBTransaction transaction; + readonly attribute boolean autoIncrement; + + [Throws] + IDBRequest put (any value, optional any key); + + [Throws] + IDBRequest add (any value, optional any key); + + [Throws] + IDBRequest delete (any key); + + [Throws] + IDBRequest get (any key); + + [Throws] + IDBRequest clear (); + + [Throws] + IDBRequest openCursor (optional any range, optional IDBCursorDirection direction = "next"); + + // Bug 899972 + // IDBIndex createIndex (DOMString name, (DOMString or sequence) keyPath, optional IDBIndexParameters optionalParameters); + + [Throws] + IDBIndex createIndex (DOMString name, DOMString keyPath, optional IDBIndexParameters optionalParameters); + + [Throws] + IDBIndex createIndex (DOMString name, sequence keyPath, optional IDBIndexParameters optionalParameters); + + [Throws] + IDBIndex index (DOMString name); + + [Throws] + void deleteIndex (DOMString indexName); + + [Throws] + IDBRequest count (optional any key); +}; + +partial interface IDBObjectStore { + // Success fires IDBTransactionEvent, result == array of values for given keys + [Throws] + IDBRequest mozGetAll (optional any key, optional unsigned long limit); + + [Pref="dom.indexedDB.experimental", Throws] + IDBRequest getAll (optional any key, optional unsigned long limit); + + [Pref="dom.indexedDB.experimental", Throws] + IDBRequest getAllKeys (optional any key, optional unsigned long limit); + + [Pref="dom.indexedDB.experimental", Throws] + IDBRequest openKeyCursor (optional any range, optional IDBCursorDirection direction = "next"); +};