dom/indexedDB/ipc/PIndexedDBIndex.ipdl
author Dave Townsend <dtownsend@oxymoronical.com>
Fri, 26 Sep 2014 08:32:55 -0700
changeset 230683 8f7dd750e75fafc6460edd7f9fe6455029419f6c
parent 229139 00f11fa87d80199e1e4a8cc3ec976dc3580f6b4d
permissions -rw-r--r--
Bug 1068440: Uplift Add-on SDK to Firefox. https://github.com/mozilla/addon-sdk/compare/cc3242d1ca8c...cbf6cdd0d630

/* 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/. */

include protocol PBlob;
include protocol PIndexedDBCursor;
include protocol PIndexedDBObjectStore;
include protocol PIndexedDBRequest;

include IndexedDBParams;

namespace mozilla {
namespace dom {
namespace indexedDB {

namespace ipc {

struct GetKeyParams
{
  KeyRange keyRange;
};

union IndexRequestParams
{
  GetParams;
  GetKeyParams;
  GetAllParams;
  GetAllKeysParams;
  CountParams;
  OpenCursorParams;
  OpenKeyCursorParams;
};

struct IndexCursorConstructorParams
{
  PIndexedDBRequest request;
  Direction direction;
  Key key;
  Key objectKey;
  OptionalStructuredCloneReadInfo optionalCloneInfo;
  PBlob[] blobs;
};

} // namespace ipc

protocol PIndexedDBIndex
{
  manager PIndexedDBObjectStore;

  manages PIndexedDBCursor;
  manages PIndexedDBRequest;

parent:
  __delete__();

  PIndexedDBRequest(IndexRequestParams params);

child:
  PIndexedDBCursor(IndexCursorConstructorParams params);
};

} // namespace indexedDB
} // namespace dom
} // namespace mozilla